Repository navigation
docs: sequence Spec Kit with the existing Ballast rules - #381
Merged
Merged
Conversation
Phases 1, 3 and 5 of plan-spec-kit-development-process, completing it. Ballast ships a spec-kit agent, three Spec Kit skills, and rules for tasks, plan lifecycle, testing, docs and review. Each was documented alone; the sequence between them was not. Without it the same decision gets recorded in spec.md, tasks.md, tasks/todo.md, a plan, an issue and a PR comment, then drifts in five of them. docs/development-process.md is that sequence. It opens with which artifact owns which kind of truth, because that table is the part which prevents the duplication; then the eight steps, the completion gates, and — deliberately — when to skip steps. Running the full process on a one-line fix produces ceremony, not quality, so the doc says which changes need which steps, and which two rules never relax. Placement is option (a), a new doc rather than folding it into docs/agents/spec-kit.md. The per-guide docs already existed; what was missing was connective tissue, and that does not belong inside any one agent's guide. Two smaller decisions recorded in the plan: speckit-taskstoissues is an optional handoff rather than default, since it otherwise duplicates tasks.md; and ADR graduation is required only where the plan lifecycle rule already triggers, because an ADR per feature produces records no one consults. Phase 3 puts a one-line pointer at the top of nine guides naming the step each belongs to, so the sequence is reachable from any entry point. The doc states that this repository has not bootstrapped Spec Kit itself; .specify/ is genuinely absent and #303 is genuinely open, both checked rather than assumed. Phase 5: 385/385 tests, eslint and prettier clean, and docs-links.test.ts from Phase 4 validates every link the new doc and the cross-links add. tasks/todo.md now has no unchecked items. Nothing outlived the branch, so nothing needed promoting. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
markcallen
added a commit
that referenced
this pull request
Sep 29, 2026
All five phases landed via #380 and #381, so the plan graduates. ADR-004 records the decision rather than the document: each artifact owns exactly one kind of truth, and docs/development-process.md sequences the moves between them. The problem it solves is concrete -- one decision could plausibly live in spec.md, tasks.md, tasks/todo.md, a plan, an issue and a PR comment, so it gets written in several, updated in one, and the rest decay into confident contradictions. It records the two invariants that hold it together (intent is written before implementation, not reconstructed after it; work that will not finish on this branch leaves the branch), and that the process is scaled to the change, since a process with no skip rule gets skipped entirely. Negative consequences are recorded, including the honest one: the process is documented but not yet exercised here. This repository has not bootstrapped Spec Kit, so steps 1-3 are untested. That is #303. plans/ is now empty; its README says so explicitly rather than rendering an empty table. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phases 1, 3 and 5 — completing
plans/plan-spec-kit-development-process.md.The gap
Ballast ships a
spec-kitagent, three Spec Kit skills, and rules for tasks, plan lifecycle, testing, docs and review. Each was documented on its own. The sequence between them was not — and without it the same decision gets recorded inspec.md,tasks.md,tasks/todo.md, a plan, an issue and a PR comment, then drifts in five of them.docs/development-process.mdPlacement is option (a) as agreed — a new doc, not folded into
docs/agents/spec-kit.md. The per-guide docs already existed; what was missing was connective tissue, and that doesn't belong inside any one agent's guide.It opens with which artifact owns which kind of truth, because that table is the part that actually prevents the duplication. Then the eight steps, the completion gates, and — deliberately — when to skip steps:
Running the full process on a one-line fix produces ceremony, not quality. The two rules that never relax are named explicitly: a behaviour change gets a test that failed first, and docs change with behaviour.
It links to the existing guides rather than restating them, per the plan's own constraint.
The two smaller decisions
Both recorded in the plan's resolved questions:
speckit-taskstoissues— optional handoff, not default. It earns its place only when generated tasks need to be visible off-branch; otherwise it duplicatestasks.md.Phase 3
A one-line pointer at the top of nine guides —
spec-kit, the threespeckit-*skills,github-pr-copilot-cycle,tasks,plan-lifecycle,testing,docs— each naming the step it belongs to, so the sequence is reachable from any entry point rather than only from the index.Honesty check
The doc states this repository has not bootstrapped Spec Kit itself.
.specify/is genuinely absent and #303 is genuinely open — both verified, not assumed. It would have been easy to write the process as though it were already in use.Phase 5 verification
docs-links.test.ts(added in Phase 4, fix: create the review policy AGENTS.md already promised #380) validates every link the new doc and the nine cross-links introduce — the check is now guarding the work that came after ittasks/todo.mdhas zero unchecked items; nothing outlived the branch, so nothing needed promotingNext
The plan is complete and marked ready to graduate. Say the word and I'll take it to ADR-004 — I've left that as a separate step rather than assuming it.
🤖 Generated with Claude Code