docs(dev-loop): refresh around Continuous Rule Encoding + tier skills honestly#54
Conversation
…ment spectrum + tier skills honestly dev-loop.md drifted since the simplicity refactor (May 2026). Refresh pulls the Continuous Rule Encoding loop up to be the centerpiece — it's the project's distinguishing characteristic but was buried at the bottom of the doc — and adds the architectural surfaces that have shipped since. Structural changes: - Pulled "Continuous Rule Encoding" up to load-bearing section 2 (was buried after Stage 5). Enumerated the six surfaces with a "Catches violations at..." column, named the encoding threshold, documented the cross-reference convention (`See CLAUDE.md.`) and the two mechanical enforcers. - Added "Enforcement spectrum" H2: convention → architecture tests → project split. NetArchTest (commit 8cba0d4) gives VSA the dependency-rule guarantee that Clean's project split would give, without the four-project ceremony. Includes the Promotion Signal table from CLAUDE.md verbatim. - Added "Loop comparison: spec-driven vs rule-encoding" — 7-row side-by-side table plus honest takeaway. Names Spec Kit, Kiro, AGENT.md, OpenAPI-first, TDD-as-spec as the spec-driven lineage; CLAUDE.md plays the AGENT.md role here. Explicit anti-recommendation: grafting Spec Kit mechanics would convert the compounding speed advantage into ceremony. - Added Gap 9 (distributed rate-limiting) and Gap 10 (`/specify-saga` skill — the one spec-driven element worth keeping in mind, but explicitly don't build yet). Stage updates: - Stage 3 now shows four integration slices (Catalog/Order/Payment/ Shipping) instead of two — Payment + Shipping landed in PRs from this session. - Stage 3 gained "Required-test patterns" sub-section: AAA narrative comments, IDOR test required, outbox-non-handler test, handler-DI- registration check. Each links the reference template from CLAUDE.md "Testing." - Stage 3 lists Wolverine.Tracking as test tooling (used by the new integration projects to settle async cascades before assertion). - Stage 4 adds a `.coderabbit.yaml path_instructions` sub-section describing the glob set as encoding surface #2 of the rule loop. - Stage 1 stops describing CLAUDE.md as "25 KB" (stale + no longer true) and stops describing AwesomeAssertions migration as a currency signal (the migration is done). Skills tiering (the load-bearing honesty pass): - Skills table reframed into three tiers — Actively used / Ambient (discipline absorbed into CLAUDE.md) / Dormant by design — instead of one "when it fires" column that implied uniform usage. Closes the same overclaim trap the doc itself criticizes. `dotnet- performance` called out as the only project-authored skill. - .claude/README.md skills inventory updated to match: same tier framing, plus a "trigger phrase" column that names the specific catch-yourself moment (the word "should," two failed bug attempts, "I just fixed one — are there more?", etc.) so the skill is reachable in the moment, not just listed abstractly. "The meta- pattern" callout at the bottom lists the five highest-signal trigger phrases for fast lookup during work. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
WalkthroughDocumentation expanded to formalize continuous rule-encoding as the development loop's reflexive sixth step. Skills reorganized into trigger-phrase-keyed tiers. Each development stage detailed with enforcement mechanisms: Stage 1 ref-check hooks and audits, Stage 3 required test patterns, Stage 4 CodeRabbit path rules. Added loop comparison against spec-driven approaches with pragmatic gap closures. ChangesDevelopment Loop Specification with Reflexive Rule-Encoding
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Summary
dev-loop.md drifted since the simplicity refactor. The Stage 1-5 scaffolding was still accurate, but the doc was missing the most important architectural developments since it was last written, AND was framing the skills table in a way that overclaimed (the same overclaim trap the doc itself warns about). Refresh closes both gaps.
Structural changes to dev-loop.md
See CLAUDE.md.) and the two mechanical enforcers (the PostToolUse hook +/check-rules)./specify-sagaskill — the one spec-driven element worth keeping in mind, explicitly don't build yet).Stage-by-stage updates
.coderabbit.yaml path_instructionssub-section describing the glob set as encoding surface build(deps): bump actions/cache from 4 to 5 #2 of the rule loop.Skills tiering — the load-bearing honesty pass
Both dev-loop.md AND
.claude/README.mdhad skills tables that listed all ten skills as if they fire equally on triggers. They don't. Closed the overclaim:dotnet-performance(reference target for Performance Rules),excalidraw-diagram(fires on diagram changes — three lesson-encoding commits in history),writing-plans+executing-plans(canonical: Hetzner full-saga deployment plan).verification-before-completion,systematic-debugging,test-driven-development,variant-analysis. The principles shape behavior on every PR via CLAUDE.md rules + PR template; the skills themselves fire when the discipline needs to be re-established or taught.skill-security-auditor(only fires on new community-skill installs),using-git-worktrees(the project uses ordinary feature branches). Named explicitly as dormant-correctly, not dormant-by-neglect..claude/README.mdgot an additional trigger-phrase column so each skill is reachable by the exact catch-yourself moment that should make you load it (the word "should," two failed bug attempts, "I just fixed one — are there more?", etc.) — plus a "meta-pattern" callout at the bottom listing the five highest-signal trigger phrases for fast lookup during work. The dev-loop.md and.claude/README.mdskills sections now share the same tier vocabulary.What's preserved
/specifyflow, with the honest "would convert speed advantage into ceremony" reason).Test plan
.claude/scripts/*,.claude/commands/*,.coderabbit.yaml,tests/NextAurora.ArchitectureTests/DependencyRuleTests.csall verified during refreshdev-loop.mdand.claude/README.md) use the same tier vocabulary (consistency check)Related work
/check-rulesaudit recommendation": dev-loop.md is now consistent with the CLAUDE.md sections it paraphrases (Continuous Rule Encoding, Testing, Promotion Signal). Inline rule-paraphrase markers (See CLAUDE.md.) added where appropriate.🤖 Generated with Claude Code
Summary by CodeRabbit