Proposal: dogfood Spec-Driven Development on features that warrant it #2504
Replies: 2 comments 2 replies
-
|
Please refer to https://github.github.com/spec-kit/community/walkthroughs.html for publicly available examples of Spec Kit. Note we would love to be able to list more exmples! |
Beta Was this translation helpful? Give feedback.
-
|
Thanks ! the "spec-forward / historical-once-shipped" framing actually helps. It removes the main worry about merging specs upstream (maintenance debt against a fast-moving codebase). That nudges me toward the constitution as the cleanest first step: /constitution is the most on-brand dogfooding artifact spec-kit ships, it's forward-looking by definition, and it settles the meta-question once instead of per-PR. I'll open an issue to track it and follow up with a PR drafting memory/constitution.md via /constitution, codifying the criteria non-trivial scope, ambiguous design, cross-cutting, security/correctness) plus your spec-forward stance. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Context
Spec Kit ships templates (
spec.md/plan.md/tasks.md) and a workflow, but the repository itself contains no public example of a non-trivial feature developed end-to-end with that workflow. The onlyspec.mdfiles inmaintoday live undertests/hooks/(test fixtures) andtemplates/commands/(the templates themselves).I'm not suggesting every PR be specified — plumbing, refactors, and catalog updates clearly don't need it, and forcing the workflow on them would be theater. I'm also not proposing a fixed cadence ("one per release"): a quota would just push contributors to manufacture artifacts on features that don't need them, which is the worst of both worlds.
The proposal is simpler: when a feature meets the criteria where SDD pays off — non-trivial scope, ambiguous design space, cross-cutting impact, or security/correctness stakes — commit its
specs/<feature>/{spec,plan,tasks}.mdalongside the code. Sometimes that's two features in a release, sometimes zero. The trigger is the feature's shape, not the calendar.Engineering benefits
Credibility benefits
spec.mdfrom upstream when pitching internally, instead of relying on documentation examples.specs/directory shows maintainers run on the workflow they ship, which lowers the perceived risk of investing time in learning it.Concrete candidate: PR #2393
PR #2393 (config-driven opt-in authentication registry) is a textbook fit. Looking at its commit log:
AuthProviderABC was reshaped twice during the PR (api_base_urlandhostsattributes added then removed).IntegrationCatalogandWorkflowCatalogmade unauthenticated requests and needed to route throughopen_url.A
spec.mdwith explicit threat-model acceptance criteria, aplan.mdenumerating call-sites and theAuthProvidercontract upfront, and atasks.mdordering the work — exactly the artifacts SDD is meant to produce — would have either prevented or pre-listed most of those follow-ups, and produced a much cleaner narrative for reviewers.Proposal to maintainers
Would you be open to dogfooding the workflow on features where it materially helps, with their spec artifacts merged into
specs/? Concretely this means agreeing on the rough criteria (non-trivial scope, ambiguous design, cross-cutting or security-sensitive) and letting contributors and maintainers flag candidates as they come up — no quota, no forced rhythm.Beta Was this translation helpful? Give feedback.
All reactions