← ClaudeAtlas

sdlc-decidelisted

Record an architectural decision as a machine-checkable invariant so an edit that breaks it is DENIED, not just discouraged. Use when the user runs /sdlc-decide, says "make this a rule / an invariant", "enforce this", "stop us breaking X", or after a retrospective proposes a standing rule that a linter can't catch.
swapnil-agrim/loopsmith · ★ 6 · Code & Development · score 62
Install: claude install-skill swapnil-agrim/loopsmith
# sdlc-decide The registry behind LoopSmith's **only non-negotiable gate**. Every other guardrail here is discipline a model is asked to follow — and a model can talk itself past discipline, especially at 3am on iteration forty of an autonomous run. A registered invariant is different: the edit is refused by a script that does not negotiate. Registry: `.sdlc/decisions.json`. **Authoring it is the opt-in** — no registry, no behavior. ## What belongs in here (and what doesn't) The bar is narrow on purpose. A registry full of things that don't matter trains everyone to click through the prompt, and then it protects nothing. **Record it when all three hold:** 1. Breaking it causes real damage — corrupted data, a security hole, money spent, a silent wrong answer. Not "inconsistent with our style". 2. **Nothing else already catches it.** If a linter, type checker, schema, or CI job fails on it, that's your enforcement — a second copy just rots out of sync. This is for the rules that are invisible to tooling. 3. It's expressible as a **value constraint on a named thing in known files** — `timeout ≤ 30`, `verify_ssl == True`, `region in [...]`. A rule you cannot write as a comparison belongs in the north-star as prose, not here. **Don't record:** style preferences, anything a formatter owns, aspirations ("we should eventually…"), or a rule whose real enforcement is a code review. Those are north-star material — `.sdlc/context/north-star.md` — and `sdlc-plan-revie