docs: surface anti-patterns earlier in TEMPLATE.md + add PROPOSAL/REVIEW templates#16
Merged
Merged
Conversation
…lates Three structural improvements based on observed drift in cache-kit.rs: TEMPLATE.md - Surface a Document Types Map at the top (Spec / Proposal / Review / Postmortem) so reviews and proposals stop being treated as specs. - Add a pseudocode litmus test as a one-line callout in the Spec Registry section. - Move the 6 anti-patterns table to near-top (was at line 173 — by then authors have already drifted) and convert to tabular form. - Add a Provenance field to the spec header so executing agents can calibrate trust (human / LLM-drafted / agent-generated). - Make the prologue minimum explicit: 3-5 pointers. Fewer = homework not done; more = tutorial. - Promote the Test Specification "no test code" rule to a top-of-section callout. - Surface the 300-line upper bound near the top. PROPOSAL_TEMPLATE.md (new) - Short template for design exploration before commitment. - Banner: "this is a proposal, not a spec, do not implement directly." - Forces author to list >=2 options + a "do nothing" baseline. - Has a Conversion-to-Spec section to track when a proposal becomes work. REVIEW_TEMPLATE.md (new) - Short template for code/audit reviews with many findings. - Banner: "each actionable finding becomes its own spec — don't bundle." - Findings table with Severity (P0/P1/P2/Note) + Status (OPEN/SPEC'D/ REJECTED/OUT_OF_SCOPE) and a Spec column tracking conversion. - Closed only when every P0/P1 has either a spec or a REJECTED row. Motivation: cache-kit.rs/plans/comprehensive-code-review.md is a code review masquerading as a spec — 12 action items in one file, none actionable as-is. cache-kit.rs/plans/error-codes-improvement.md is a proposal masquerading as a spec — 850 lines of inlined Rust pseudocode. Neither was implementable without conversion. These templates make the correct shape obvious before authors drift. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This was referenced May 12, 2026
Closed
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.
Summary
Three structural improvements to the spec-authoring templates based on observed drift in
cache-kit.rs/plans/.Motivation — observed failure modes
cache-kit.rs/plans/comprehensive-code-review.mdcache-kit.rs/plans/error-codes-improvement.mdThe fix isn't more discipline — it's making the correct shape obvious at template-pick time, before the author drifts. Both docs would have been forced to a different shape if the Document Types Map had been on line 1.
What changed concretely
TEMPLATE.md
PROPOSAL_TEMPLATE.md (new — 93 lines)
REVIEW_TEMPLATE.md (new — 97 lines)
Invariance
Audit script passes (18 gates, fixtures clean). `AGENTS.md` untouched; questionnaire scenarios 1-20 unchanged. Sign-off refreshed for 79aba99.
Test plan
🤖 Generated with Claude Code