Context
0067 and 0066 adopt spec-kit and OpenCode delegation. Thesdlc plugin still loads, its content is proprietary while the repository is MIT, seven
routes in .agents/routing.yaml point at it, and spec-kit is not pinned, so an upgrade could wipe the plan gate. The community
Linear extension falls back to a .env file, which 0009 forbids.
Decision
- D2 — The
sdlccontent being ported is relicensed to MIT and rewritten for Stackra. - D3 —
sdlcis removed from this project now; from the owner’s user-level setup once other repositories migrate. - D9 — Eight roles are ported into
.agents/agents/(architecture-guardian, code-reviewer, test-engineer, release-operations, package-steward, dependency-steward, accessibility-reviewer, spec-executor). docs-governance, delivery-orchestrator, spec-author and spec-planner fold into existing roles and the lead session. - D10 — OpenCode runs Kimi K3 for the steward and executor tiers only. Reviewers, guardians and the lead never run on OpenCode.
- D11 — The amended 0065, 0066, 0067 and 0012, and the Delegation law change, are accepted in the same phase, so the analyze gate stops flagging OpenCode-routed tasks.
- D12 — Linear integration is a thin local extension over
tools/scripts/spec-linear.mjs, not the community extension. - D13 — Notifications is one spec, with its own Linear project and one pull request per story.
- D14 — The Linear model: a spec issue (plus a project when it spans several pull requests), design and phase
sub-issues, task sub-issues of phases; label groups
stage/*,lane/*,risk/*(change risk) andexec/*; Linear’s GitHub integration turned on. - D15 — spec-kit is pinned in mise (0027) and upgraded only through a dedicated pull request.
- D19 — The bundled
speckitworkflow is disabled, because it skips clarify and analyze. - D20 — Claude Sonnet runs analyze, with the lead adjudicating.
Consequences
- No proprietary process content is left in the MIT repository.
- Five roles disappear as separate agents; their duties must be visible in the roles that absorb them.
- 0016 rule 5 (the
sdlcengine) stops being true; it is superseded through 0120.
Enforcement
Planned: the mise pin and the preset tripwire of 0120; anagents:lint check that no route or agent references sdlc; a
models.json check that reviewer, guardian and lead tiers have no OpenCode model.