- docs/prd/chunk-3-skills-library.md: PRD for 42-skill library rebuild; AGENTS.md refactor as prerequisite; factory bootstrap order (write-eval first); source field schema; upstream review cadence; design phase sequence; IaC/Gitea scope decisions - docs/adr/0011-provider-agnostic-issue-tracker.md: file-based default, Gitea as provider adapter, "issue" as canonical cross-provider term - docs/adr/0012-agents-md-provider-agnostic-entry-point.md: AGENTS.md as content source, CLAUDE.md as thin adapter; partially supersedes ADR-0005 - CONTEXT.md: 8 new glossary terms (AGENTS.md, skill composition, source field, provider-agnostic issue tracker, design phase sequence, PRD scope, issue scope, bidirectional reference principle); CLAUDE.md index model updated; stale workflow example fixed - docs/ROADMAP.md: changelog tooling and IaC/Gitea scope resolved; when: field question updated; Chunk 3 grill housekeeping note added - docs/spec/overview.md: Chunk 3 target updated with PRD link, skill count, and AGENTS.md prerequisite Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
12 lines
1.8 KiB
Markdown
12 lines
1.8 KiB
Markdown
# Provider-agnostic issue tracker with file-based default and provider adapters
|
|
|
|
Skills and workflows reference a "linked issue" generically rather than coupling to a specific issue tracker. In the file-based phase, an issue is a `docs/issues/NNNN-<slug>.md` file. When a provider MCP (e.g. Gitea MCP) is configured, skills detect it at runtime and use it instead. The active backend is determined by MCP availability — no config flag required. "Issue" is the canonical cross-provider term; GitHub, GitLab, and Gitea all use it natively.
|
|
|
|
Gitea-specific skills (`setup-gitea-mcp`, `post-pr-review`, `create-issue`) are a provider adapter at `providers/gitea/` — structurally identical to how `providers/claude-code/` adapts core content for Claude Code. They are not part of the core skill library.
|
|
|
|
Two alternatives were rejected. Gitea-specific skills in the core library would block use before Gitea is configured and embed a provider assumption into skills that are otherwise provider-neutral. Per-provider skill variants (e.g. `implement-feature` + `implement-feature-gitea`) create maintenance overhead with no functional gain — the only difference is the issue lookup mechanism, not the skill logic.
|
|
|
|
The file-based default was chosen because this repo must work before Gitea is set up. File-based issues are already the working convention (`docs/issues/`), established in Chunk 1. Gitea is the first concrete provider and will be configured after Chunk 3; existing file-based issues will be migrated at that point.
|
|
|
|
This decision makes the skills library usable on any machine without external service dependencies, while keeping Gitea integration as a first-class path once available. The provider adapter pattern (`providers/gitea/`) is consistent with ADR-0007 (provider adapters as symlinks) and ADR-0008 (factory boundary).
|