devrites 7.1.1 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/README.md +9 -4
- package/docs/dsh.md +46 -0
- package/engine/internal/devritespaths/paths.go +2 -0
- package/engine/internal/hostpack/hostpack.go +29 -5
- package/engine/internal/install/apply.go +14 -2
- package/engine/internal/install/install.go +7 -3
- package/engine/internal/install/merge.go +1 -0
- package/engine/internal/install/preflight.go +9 -2
- package/engine/internal/install/update.go +1 -1
- package/engine/internal/lib/dispatch_packet.go +1 -1
- package/pack/.claude/agents/devrites-upgrade-planner.md +12 -4
- package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/.claude/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/.claude/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/.claude/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/.claude/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/.claude/skills/rite-define/SKILL.md +28 -27
- package/pack/.claude/skills/rite-plan/SKILL.md +7 -2
- package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/.claude/skills/rite-resolve/SKILL.md +17 -10
- package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/.claude/skills/rite-review/SKILL.md +4 -4
- package/pack/.claude/skills/rite-review/reference/security-review.md +4 -2
- package/pack/.claude/skills/rite-seal/SKILL.md +28 -33
- package/pack/.claude/skills/rite-ship/SKILL.md +14 -7
- package/pack/.claude/skills/rite-temper/SKILL.md +18 -18
- package/pack/.claude/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/.claude/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/.claude/skills/rite-vet/SKILL.md +33 -34
- package/pack/generated/README.md +3 -1
- package/pack/generated/claude/agents/devrites-upgrade-planner.md +12 -4
- package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/generated/claude/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/generated/claude/skills/rite-define/SKILL.md +28 -27
- package/pack/generated/claude/skills/rite-plan/SKILL.md +7 -2
- package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/generated/claude/skills/rite-resolve/SKILL.md +17 -10
- package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/generated/claude/skills/rite-review/SKILL.md +4 -4
- package/pack/generated/claude/skills/rite-review/reference/security-review.md +4 -2
- package/pack/generated/claude/skills/rite-seal/SKILL.md +28 -33
- package/pack/generated/claude/skills/rite-ship/SKILL.md +14 -7
- package/pack/generated/claude/skills/rite-temper/SKILL.md +18 -18
- package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/generated/claude/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/generated/claude/skills/rite-vet/SKILL.md +33 -34
- package/pack/generated/codex/agents/devrites-upgrade-planner.toml +12 -4
- package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/generated/codex/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/generated/codex/skills/rite-define/SKILL.md +28 -27
- package/pack/generated/codex/skills/rite-plan/SKILL.md +7 -2
- package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/generated/codex/skills/rite-resolve/SKILL.md +17 -10
- package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/generated/codex/skills/rite-review/SKILL.md +4 -4
- package/pack/generated/codex/skills/rite-review/reference/security-review.md +4 -2
- package/pack/generated/codex/skills/rite-seal/SKILL.md +28 -33
- package/pack/generated/codex/skills/rite-ship/SKILL.md +14 -7
- package/pack/generated/codex/skills/rite-temper/SKILL.md +18 -18
- package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/generated/codex/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/generated/codex/skills/rite-vet/SKILL.md +33 -34
- package/pack/generated/devin/agents/devrites-upgrade-planner.md +12 -4
- package/pack/generated/devin/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/generated/devin/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/generated/devin/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/generated/devin/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/generated/devin/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/generated/devin/skills/rite-define/SKILL.md +28 -27
- package/pack/generated/devin/skills/rite-plan/SKILL.md +7 -2
- package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/generated/devin/skills/rite-resolve/SKILL.md +17 -10
- package/pack/generated/devin/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/generated/devin/skills/rite-review/SKILL.md +4 -4
- package/pack/generated/devin/skills/rite-review/reference/security-review.md +4 -2
- package/pack/generated/devin/skills/rite-seal/SKILL.md +28 -33
- package/pack/generated/devin/skills/rite-ship/SKILL.md +14 -7
- package/pack/generated/devin/skills/rite-temper/SKILL.md +18 -18
- package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/generated/devin/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/generated/devin/skills/rite-vet/SKILL.md +33 -34
- package/pack/generated/dsh/AGENTS.md +20 -0
- package/pack/generated/dsh/agents/devrites-code-reviewer.md +180 -0
- package/pack/generated/dsh/agents/devrites-devex-reviewer.md +137 -0
- package/pack/generated/dsh/agents/devrites-doubt-reviewer.md +100 -0
- package/pack/generated/dsh/agents/devrites-evidence-scout.md +93 -0
- package/pack/generated/dsh/agents/devrites-frontend-reviewer.md +139 -0
- package/pack/generated/dsh/agents/devrites-performance-reviewer.md +142 -0
- package/pack/generated/dsh/agents/devrites-plan-drafter.md +113 -0
- package/pack/generated/dsh/agents/devrites-plan-reviewer.md +167 -0
- package/pack/generated/dsh/agents/devrites-proof-runner.md +101 -0
- package/pack/generated/dsh/agents/devrites-retrospector.md +82 -0
- package/pack/generated/dsh/agents/devrites-security-auditor.md +146 -0
- package/pack/generated/dsh/agents/devrites-simplifier-reviewer.md +113 -0
- package/pack/generated/dsh/agents/devrites-slice-wright.md +240 -0
- package/pack/generated/dsh/agents/devrites-spec-reviewer.md +105 -0
- package/pack/generated/dsh/agents/devrites-strategy-reviewer.md +109 -0
- package/pack/generated/dsh/agents/devrites-test-analyst.md +110 -0
- package/pack/generated/dsh/agents/devrites-upgrade-planner.md +107 -0
- package/pack/generated/dsh/agents/fast-builder.md +92 -0
- package/pack/generated/dsh/agents/fast-checker.md +61 -0
- package/pack/generated/dsh/agents/fast-critic.md +71 -0
- package/pack/generated/dsh/agents/fast-planner.md +95 -0
- package/pack/generated/dsh/agents/overhaul-backend-engineer.md +70 -0
- package/pack/generated/dsh/agents/overhaul-boundary.md +64 -0
- package/pack/generated/dsh/agents/overhaul-craft.md +85 -0
- package/pack/generated/dsh/agents/overhaul-frontend-engineer.md +73 -0
- package/pack/generated/dsh/agents/overhaul-implementer.md +72 -0
- package/pack/generated/dsh/agents/overhaul-recon.md +77 -0
- package/pack/generated/dsh/agents/overhaul-specialist.md +67 -0
- package/pack/generated/dsh/agents/overhaul-verifier.md +73 -0
- package/pack/generated/dsh/runtime/cordis.patch.yml +1450 -0
- package/pack/generated/dsh/runtime/specialist.mjs +62 -0
- package/pack/generated/dsh/skills/devrites-api-interface/SKILL.md +65 -0
- package/pack/generated/dsh/skills/devrites-audit/SKILL.md +60 -0
- package/pack/generated/dsh/skills/devrites-browser-proof/SKILL.md +109 -0
- package/pack/generated/dsh/skills/devrites-browser-proof/reference/browser-performance.md +19 -0
- package/pack/generated/dsh/skills/devrites-browser-proof/reference/visual-verdict.md +38 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/SKILL.md +119 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +41 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/hypotheses.md +23 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/regression-test.md +33 -0
- package/pack/generated/dsh/skills/devrites-debug-recovery/reference/trace.md +25 -0
- package/pack/generated/dsh/skills/devrites-doubt/SKILL.md +83 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/SKILL.md +89 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/craft.md +63 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/design-references.md +120 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/quality-standards.md +286 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
- package/pack/generated/dsh/skills/devrites-frontend-craft/reference/shape.md +61 -0
- package/pack/generated/dsh/skills/devrites-interview/SKILL.md +107 -0
- package/pack/generated/dsh/skills/devrites-lib/SKILL.md +98 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/candidate-integrity.md +59 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/intent-map.md +86 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/orchestration-profiles.md +48 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/parallel-dispatch.md +184 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/reply-contract.md +123 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/README.md +70 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +32 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/afk-hitl.md +467 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/agents.md +231 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/anti-patterns.md +50 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/architecture-health.md +64 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/assumption-checkpoints.md +42 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/audit-coverage.md +107 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/browser-proof-checklist.md +37 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/ci-cd.md +62 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-index.md +111 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-navigation.md +69 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-review.md +178 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/coding-style.md +53 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/context-hygiene.md +136 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/core.md +202 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/data-integrity.md +144 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/debug-recovery.md +42 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/definition-of-done.md +25 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/deprecation.md +49 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/developer-experience.md +128 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/development-workflow.md +31 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/documentation.md +55 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/duplicate-code.md +129 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/edge-case-trace.md +94 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/elicitation.md +114 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/error-handling.md +49 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/gates.md +159 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/git-workflow.md +51 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/glossary.md +40 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/hooks.md +41 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/integration-reliability.md +121 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/loop-operations.md +123 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/observability.md +90 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/one-shot-actions.md +105 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/patterns.md +70 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/performance.md +88 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/principles.md +56 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/prose-style.md +127 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/release/ship-checklist.md +12 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/repository-topology.md +82 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/README.md +28 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ci-workflows.md +50 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/default.md +42 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/go.md +47 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/python.md +46 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/react.md +55 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/shell.md +40 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/stack-profile.md +155 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ts-js.md +74 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/review-checklist.md +14 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/security-checklist.md +30 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/security.md +283 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/skill-authoring.md +269 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/spec-grammar.md +214 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/test-proof-checklist.md +18 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/testing.md +295 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/tooling.md +125 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/verification-methods.md +143 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/windows.md +60 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/standards/workflow-artifacts.md +435 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
- package/pack/generated/dsh/skills/devrites-lib/reference/workspace-artifact-schema.md +312 -0
- package/pack/generated/dsh/skills/devrites-prose-craft/SKILL.md +81 -0
- package/pack/generated/dsh/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
- package/pack/generated/dsh/skills/devrites-prose-craft/reference/examples.md +136 -0
- package/pack/generated/dsh/skills/devrites-prose-craft/reference/structures.md +196 -0
- package/pack/generated/dsh/skills/devrites-source-driven/SKILL.md +54 -0
- package/pack/generated/dsh/skills/devrites-ux-shape/SKILL.md +135 -0
- package/pack/generated/dsh/skills/devrites-ux-shape/reference/brief-template.md +108 -0
- package/pack/generated/dsh/skills/devrites-ux-shape/reference/visual-direction-probe.md +50 -0
- package/pack/generated/dsh/skills/overhaul/SKILL.md +221 -0
- package/pack/generated/dsh/skills/overhaul/references/audit-domains.md +390 -0
- package/pack/generated/dsh/skills/overhaul/references/lifecycle.md +314 -0
- package/pack/generated/dsh/skills/overhaul/references/orchestration.md +291 -0
- package/pack/generated/dsh/skills/overhaul/references/records.md +203 -0
- package/pack/generated/dsh/skills/overhaul/references/repair-and-measurement.md +310 -0
- package/pack/generated/dsh/skills/overhaul/references/review-and-report.md +139 -0
- package/pack/generated/dsh/skills/overhaul/references/scope-and-safety.md +233 -0
- package/pack/generated/dsh/skills/overhaul/references/scoring.md +261 -0
- package/pack/generated/dsh/skills/overhaul/references/stack-profiles.md +316 -0
- package/pack/generated/dsh/skills/rite/SKILL.md +157 -0
- package/pack/generated/dsh/skills/rite/reference/menu.md +49 -0
- package/pack/generated/dsh/skills/rite-adopt/SKILL.md +64 -0
- package/pack/generated/dsh/skills/rite-adopt/reference/adoption.md +25 -0
- package/pack/generated/dsh/skills/rite-adopt/reference/anti-patterns.md +19 -0
- package/pack/generated/dsh/skills/rite-autocomplete/SKILL.md +167 -0
- package/pack/generated/dsh/skills/rite-autocomplete/reference/decision-policy.md +44 -0
- package/pack/generated/dsh/skills/rite-autocomplete/reference/lookahead.md +50 -0
- package/pack/generated/dsh/skills/rite-autocomplete/reference/loop.md +164 -0
- package/pack/generated/dsh/skills/rite-autocomplete/reference/stop-conditions.md +118 -0
- package/pack/generated/dsh/skills/rite-build/SKILL.md +126 -0
- package/pack/generated/dsh/skills/rite-build/reference/afk-discipline.md +153 -0
- package/pack/generated/dsh/skills/rite-build/reference/anti-patterns.md +27 -0
- package/pack/generated/dsh/skills/rite-build/reference/checkpoint-protocol.md +115 -0
- package/pack/generated/dsh/skills/rite-build/reference/checkpoint.md +79 -0
- package/pack/generated/dsh/skills/rite-build/reference/frontend-trigger.md +39 -0
- package/pack/generated/dsh/skills/rite-build/reference/one-slice-cycle.md +57 -0
- package/pack/generated/dsh/skills/rite-build/reference/output.md +29 -0
- package/pack/generated/dsh/skills/rite-build/reference/parallel-batch.md +260 -0
- package/pack/generated/dsh/skills/rite-build/reference/phase-contract.md +130 -0
- package/pack/generated/dsh/skills/rite-build/reference/spec-drift-guard.md +91 -0
- package/pack/generated/dsh/skills/rite-build/reference/tdd.md +27 -0
- package/pack/generated/dsh/skills/rite-build/reference/wright-dispatch.md +198 -0
- package/pack/generated/dsh/skills/rite-clarify/SKILL.md +104 -0
- package/pack/generated/dsh/skills/rite-clarify/reference/anti-patterns.md +24 -0
- package/pack/generated/dsh/skills/rite-clarify/reference/decision-coverage.md +56 -0
- package/pack/generated/dsh/skills/rite-converge/SKILL.md +167 -0
- package/pack/generated/dsh/skills/rite-converge/reference/anti-patterns.md +35 -0
- package/pack/generated/dsh/skills/rite-converge/reference/convergence-assessment.md +70 -0
- package/pack/generated/dsh/skills/rite-customize/SKILL.md +64 -0
- package/pack/generated/dsh/skills/rite-define/SKILL.md +203 -0
- package/pack/generated/dsh/skills/rite-define/reference/anti-patterns.md +26 -0
- package/pack/generated/dsh/skills/rite-define/reference/gates.md +160 -0
- package/pack/generated/dsh/skills/rite-define/reference/plan-template.md +153 -0
- package/pack/generated/dsh/skills/rite-doctor/SKILL.md +107 -0
- package/pack/generated/dsh/skills/rite-dogfood/SKILL.md +57 -0
- package/pack/generated/dsh/skills/rite-explain/SKILL.md +154 -0
- package/pack/generated/dsh/skills/rite-explain/reference/intake.md +89 -0
- package/pack/generated/dsh/skills/rite-fast/SKILL.md +185 -0
- package/pack/generated/dsh/skills/rite-fast/reference/artifacts.md +107 -0
- package/pack/generated/dsh/skills/rite-fast/reference/check-and-triage.md +51 -0
- package/pack/generated/dsh/skills/rite-frame/SKILL.md +119 -0
- package/pack/generated/dsh/skills/rite-frame/reference/failure-modes.md +66 -0
- package/pack/generated/dsh/skills/rite-handoff/SKILL.md +117 -0
- package/pack/generated/dsh/skills/rite-handoff/reference/handoff-template.md +56 -0
- package/pack/generated/dsh/skills/rite-harness/SKILL.md +76 -0
- package/pack/generated/dsh/skills/rite-harness/reference/feature-map.md +60 -0
- package/pack/generated/dsh/skills/rite-learn/SKILL.md +107 -0
- package/pack/generated/dsh/skills/rite-plan/SKILL.md +215 -0
- package/pack/generated/dsh/skills/rite-plan/reference/anti-patterns.md +34 -0
- package/pack/generated/dsh/skills/rite-plan/reference/dependency-graph.md +48 -0
- package/pack/generated/dsh/skills/rite-plan/reference/replan-and-repair.md +114 -0
- package/pack/generated/dsh/skills/rite-plan/reference/slicing.md +187 -0
- package/pack/generated/dsh/skills/rite-plan/reference/task-breakdown.md +50 -0
- package/pack/generated/dsh/skills/rite-polish/SKILL.md +128 -0
- package/pack/generated/dsh/skills/rite-polish/reference/adr-promotion.md +11 -0
- package/pack/generated/dsh/skills/rite-polish/reference/anti-ai-slop.md +210 -0
- package/pack/generated/dsh/skills/rite-polish/reference/anti-patterns.md +30 -0
- package/pack/generated/dsh/skills/rite-polish/reference/backend-polish.md +80 -0
- package/pack/generated/dsh/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
- package/pack/generated/dsh/skills/rite-polish/reference/code.md +87 -0
- package/pack/generated/dsh/skills/rite-polish/reference/design-memory.md +117 -0
- package/pack/generated/dsh/skills/rite-polish/reference/design-system-discovery.md +8 -0
- package/pack/generated/dsh/skills/rite-polish/reference/harden-checklist.md +110 -0
- package/pack/generated/dsh/skills/rite-polish/reference/ledger.md +67 -0
- package/pack/generated/dsh/skills/rite-polish/reference/ui.md +146 -0
- package/pack/generated/dsh/skills/rite-pov/SKILL.md +71 -0
- package/pack/generated/dsh/skills/rite-pr-feedback/SKILL.md +61 -0
- package/pack/generated/dsh/skills/rite-pressure-test/SKILL.md +76 -0
- package/pack/generated/dsh/skills/rite-prototype/SKILL.md +106 -0
- package/pack/generated/dsh/skills/rite-prove/SKILL.md +151 -0
- package/pack/generated/dsh/skills/rite-prove/reference/acceptance-proof.md +88 -0
- package/pack/generated/dsh/skills/rite-prove/reference/anti-patterns.md +25 -0
- package/pack/generated/dsh/skills/rite-prove/reference/browser-proof.md +51 -0
- package/pack/generated/dsh/skills/rite-prove/reference/failure-triage.md +53 -0
- package/pack/generated/dsh/skills/rite-prove/reference/proof-ladder.md +39 -0
- package/pack/generated/dsh/skills/rite-prove/reference/test-command-discovery.md +36 -0
- package/pack/generated/dsh/skills/rite-quick/SKILL.md +97 -0
- package/pack/generated/dsh/skills/rite-resolve/SKILL.md +113 -0
- package/pack/generated/dsh/skills/rite-resolve/reference/answer-protocol.md +129 -0
- package/pack/generated/dsh/skills/rite-review/SKILL.md +190 -0
- package/pack/generated/dsh/skills/rite-review/reference/anti-patterns.md +32 -0
- package/pack/generated/dsh/skills/rite-review/reference/cognitive-load.md +90 -0
- package/pack/generated/dsh/skills/rite-review/reference/feature-scoped-review.md +26 -0
- package/pack/generated/dsh/skills/rite-review/reference/five-axis-review.md +66 -0
- package/pack/generated/dsh/skills/rite-review/reference/nielsen-heuristics.md +126 -0
- package/pack/generated/dsh/skills/rite-review/reference/performance-checklist.md +99 -0
- package/pack/generated/dsh/skills/rite-review/reference/performance-review.md +14 -0
- package/pack/generated/dsh/skills/rite-review/reference/security-review.md +44 -0
- package/pack/generated/dsh/skills/rite-seal/SKILL.md +99 -0
- package/pack/generated/dsh/skills/rite-seal/reference/anti-patterns.md +29 -0
- package/pack/generated/dsh/skills/rite-seal/reference/final-evidence.md +41 -0
- package/pack/generated/dsh/skills/rite-seal/reference/go-no-go.md +32 -0
- package/pack/generated/dsh/skills/rite-seal/reference/output.md +5 -0
- package/pack/generated/dsh/skills/rite-seal/reference/phase-contract.md +56 -0
- package/pack/generated/dsh/skills/rite-seal/reference/risk-and-rollback.md +56 -0
- package/pack/generated/dsh/skills/rite-seal/reference/seal-template.md +32 -0
- package/pack/generated/dsh/skills/rite-ship/SKILL.md +101 -0
- package/pack/generated/dsh/skills/rite-ship/reference/anti-patterns.md +28 -0
- package/pack/generated/dsh/skills/rite-ship/reference/close-out.md +69 -0
- package/pack/generated/dsh/skills/rite-ship/reference/git-ship.md +128 -0
- package/pack/generated/dsh/skills/rite-ship/reference/rollout.md +62 -0
- package/pack/generated/dsh/skills/rite-ship/reference/ship-template.md +40 -0
- package/pack/generated/dsh/skills/rite-spec/SKILL.md +169 -0
- package/pack/generated/dsh/skills/rite-spec/reference/acceptance-criteria.md +31 -0
- package/pack/generated/dsh/skills/rite-spec/reference/ai-spec-template.md +40 -0
- package/pack/generated/dsh/skills/rite-spec/reference/anti-patterns.md +27 -0
- package/pack/generated/dsh/skills/rite-spec/reference/interview-patterns.md +56 -0
- package/pack/generated/dsh/skills/rite-spec/reference/investigation.md +83 -0
- package/pack/generated/dsh/skills/rite-spec/reference/question-protocol.md +36 -0
- package/pack/generated/dsh/skills/rite-spec/reference/references-intake.md +62 -0
- package/pack/generated/dsh/skills/rite-spec/reference/spec-checklists.md +89 -0
- package/pack/generated/dsh/skills/rite-spec/reference/spec-template.md +160 -0
- package/pack/generated/dsh/skills/rite-spec/reference/state-workspace.md +240 -0
- package/pack/generated/dsh/skills/rite-status/SKILL.md +74 -0
- package/pack/generated/dsh/skills/rite-temper/SKILL.md +137 -0
- package/pack/generated/dsh/skills/rite-temper/reference/anti-patterns.md +30 -0
- package/pack/generated/dsh/skills/rite-temper/reference/review-dimensions.md +66 -0
- package/pack/generated/dsh/skills/rite-temper/reference/scope-modes.md +52 -0
- package/pack/generated/dsh/skills/rite-temper/reference/significance.md +55 -0
- package/pack/generated/dsh/skills/rite-temper/reference/strategy-template.md +101 -0
- package/pack/generated/dsh/skills/rite-upgrade/SKILL.md +142 -0
- package/pack/generated/dsh/skills/rite-vet/SKILL.md +242 -0
- package/pack/generated/dsh/skills/rite-vet/reference/anti-patterns.md +43 -0
- package/pack/generated/dsh/skills/rite-vet/reference/artifacts.md +248 -0
- package/pack/generated/dsh/skills/rite-vet/reference/cross-model.md +19 -0
- package/pack/generated/dsh/skills/rite-vet/reference/depth.md +59 -0
- package/pack/generated/dsh/skills/rite-vet/reference/eng-lenses.md +48 -0
- package/pack/generated/dsh/skills/rite-vet/reference/review-axes.md +210 -0
- package/pack/generated/dsh/skills/rite-watch-pr/SKILL.md +87 -0
- package/pack/generated/dsh/skills/rite-zoom-out/SKILL.md +76 -0
- package/pack/generated/omp/agents/devrites-upgrade-planner.md +12 -4
- package/pack/generated/omp/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/generated/omp/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/generated/omp/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/generated/omp/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/generated/omp/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/generated/omp/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/generated/omp/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/generated/omp/skills/rite-define/SKILL.md +28 -27
- package/pack/generated/omp/skills/rite-plan/SKILL.md +7 -2
- package/pack/generated/omp/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/generated/omp/skills/rite-resolve/SKILL.md +17 -10
- package/pack/generated/omp/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/generated/omp/skills/rite-review/SKILL.md +4 -4
- package/pack/generated/omp/skills/rite-review/reference/security-review.md +4 -2
- package/pack/generated/omp/skills/rite-seal/SKILL.md +28 -33
- package/pack/generated/omp/skills/rite-ship/SKILL.md +14 -7
- package/pack/generated/omp/skills/rite-temper/SKILL.md +18 -18
- package/pack/generated/omp/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/generated/omp/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/generated/omp/skills/rite-vet/SKILL.md +33 -34
- package/pack/generated/pi/agents/devrites-upgrade-planner.md +12 -4
- package/pack/generated/pi/skills/devrites-debug-recovery/SKILL.md +21 -4
- package/pack/generated/pi/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
- package/pack/generated/pi/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
- package/pack/generated/pi/skills/devrites-lib/reference/reply-contract.md +11 -11
- package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
- package/pack/generated/pi/skills/devrites-lib/reference/standards/agents.md +11 -1
- package/pack/generated/pi/skills/devrites-lib/reference/standards/core.md +41 -40
- package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +12 -14
- package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +34 -38
- package/pack/generated/pi/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
- package/pack/generated/pi/skills/rite-define/SKILL.md +28 -27
- package/pack/generated/pi/skills/rite-plan/SKILL.md +7 -2
- package/pack/generated/pi/skills/rite-plan/reference/replan-and-repair.md +5 -2
- package/pack/generated/pi/skills/rite-resolve/SKILL.md +17 -10
- package/pack/generated/pi/skills/rite-resolve/reference/answer-protocol.md +18 -6
- package/pack/generated/pi/skills/rite-review/SKILL.md +4 -4
- package/pack/generated/pi/skills/rite-review/reference/security-review.md +4 -2
- package/pack/generated/pi/skills/rite-seal/SKILL.md +28 -33
- package/pack/generated/pi/skills/rite-ship/SKILL.md +14 -7
- package/pack/generated/pi/skills/rite-temper/SKILL.md +18 -18
- package/pack/generated/pi/skills/rite-temper/reference/scope-modes.md +6 -7
- package/pack/generated/pi/skills/rite-upgrade/SKILL.md +7 -2
- package/pack/generated/pi/skills/rite-vet/SKILL.md +33 -34
- package/package.json +3 -1
- package/scripts/build-host-artifacts.sh +6 -2
- package/scripts/dsh-generate.py +135 -0
- package/scripts/dsh-specialist.mjs +62 -0
- package/scripts/install-lib.sh +3 -1
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# `spec.md` template
|
|
2
|
+
|
|
3
|
+
Contract WHAT users get, WHY, success, and scope. HOW belongs in `plan.md`,
|
|
4
|
+
topology in `architecture.md`/`flows.md`, coverage in `traceability.md`.
|
|
5
|
+
|
|
6
|
+
Use `[NEEDS CLARIFICATION: <question>]` (blocking stops `/rite-clarify`); before readiness
|
|
7
|
+
every surviving marker converts to a gated `q-YYYY-MM-DD-NNN` open question (released `Q-###` kept) ([`spec-grammar.md`](../../devrites-lib/reference/standards/spec-grammar.md) §
|
|
8
|
+
Unresolved-question markers — fail closed). Stable `REQ-001`/`AC-001` IDs; link, never
|
|
9
|
+
duplicate, source artifacts; over-budget requires `Budget override: <=N lines; <reason>` (N at most 2x the budget). `spec.md`
|
|
10
|
+
is the product contract only: the phase verdict goes in the `state.md` `spec_gate` row,
|
|
11
|
+
never in this file (every reviewer read-set includes `spec.md`).
|
|
12
|
+
|
|
13
|
+
```markdown
|
|
14
|
+
# Spec: <Feature>
|
|
15
|
+
Slug: <kebab-case>
|
|
16
|
+
Created: <date>
|
|
17
|
+
|
|
18
|
+
## Problem
|
|
19
|
+
<What is broken, missing, or costly.>
|
|
20
|
+
|
|
21
|
+
## Goal
|
|
22
|
+
<User-visible outcome and why it matters.>
|
|
23
|
+
|
|
24
|
+
Capability impact: <affected capability/ies and change | none — specific justification>
|
|
25
|
+
|
|
26
|
+
## Non-goals
|
|
27
|
+
- <Explicitly out of scope.>
|
|
28
|
+
|
|
29
|
+
## Existing behavior to preserve
|
|
30
|
+
List affected observable public/security/data/operational outcomes that MUST
|
|
31
|
+
survive; map preserving REQ/AC plus current test/runtime/contract/source evidence.
|
|
32
|
+
No implementation detail. True greenfield: `none — no existing behavior in the affected scope`.
|
|
33
|
+
|
|
34
|
+
| Existing outcome | Preserved by | Current evidence |
|
|
35
|
+
| --- | --- | --- |
|
|
36
|
+
| <outcome that must not regress> | REQ-001 / AC-001 | <current evidence> |
|
|
37
|
+
|
|
38
|
+
Each preservation row **must** cite current evidence (test, runtime, contract, or
|
|
39
|
+
observed behavior). An empty or vague evidence cell blocks Spec readiness.
|
|
40
|
+
|
|
41
|
+
**Failing case:** row lists REQ-001 with evidence "none" or "TBD" → readiness gate
|
|
42
|
+
fails until evidence is named or the outcome is removed from scope.
|
|
43
|
+
|
|
44
|
+
## Stakeholders and priorities
|
|
45
|
+
| Actor/stakeholder | Observable outcome | Conflict / priority rule |
|
|
46
|
+
| --- | --- | --- |
|
|
47
|
+
| <actor or affected owner> | <goal, protection, or operational need> | <none or how competing goals resolve> |
|
|
48
|
+
|
|
49
|
+
## Constraints and invariants
|
|
50
|
+
- INV-001: <fact that MUST remain true across success, failure, retry, and recovery>.
|
|
51
|
+
- <security/privacy/accessibility/performance/compatibility/data/operational constraint,
|
|
52
|
+
or `none — <specific reason>` for a materially relevant category>.
|
|
53
|
+
|
|
54
|
+
## Requirements
|
|
55
|
+
- REQ-001: The system MUST <observable product behavior>.
|
|
56
|
+
- REQ-002: The system MUST NOT <prohibited behavior>.
|
|
57
|
+
|
|
58
|
+
## Acceptance criteria
|
|
59
|
+
Binary/evidence-backed; each maps to a requirement and later a traceability slice.
|
|
60
|
+
|
|
61
|
+
- [ ] AC-001: Given <state>, when <action>, then <outcome>. (REQ-001)
|
|
62
|
+
- [ ] AC-002: Given <state>, when <action>, then <outcome>. (REQ-002)
|
|
63
|
+
|
|
64
|
+
Behavioral/high-risk work uses this grammar, with the AC ID inside the scenario:
|
|
65
|
+
|
|
66
|
+
### Requirement: <name>
|
|
67
|
+
The system SHALL <core observable behavior>.
|
|
68
|
+
|
|
69
|
+
#### Scenario: <name>
|
|
70
|
+
- [ ] AC-003: **WHEN** <trigger> **THEN** <observable outcome>. (REQ-001)
|
|
71
|
+
|
|
72
|
+
## Edge Coverage
|
|
73
|
+
Use `covered | backstop | dismissed | unresolved`; target an existing REQ/AC
|
|
74
|
+
unless dismissed. `backstop` requires a named independent held-out,
|
|
75
|
+
property/metamorphic, or direct behavioral check plus the wrong behavior it
|
|
76
|
+
discriminates. If unavailable, use `unresolved`; presence/prose/self-judgment cannot pass.
|
|
77
|
+
|
|
78
|
+
| Edge ID | Requirement/AC | Class | Status | Reason/backstop |
|
|
79
|
+
| --- | --- | --- | --- | --- |
|
|
80
|
+
| EDGE-001 | AC-001 | empty/error/permission/race/migration | covered | <evidence/rationale> |
|
|
81
|
+
|
|
82
|
+
## Prohibitions (must-NOT)
|
|
83
|
+
Bespoke only; generic security/privacy stays in standards. Status:
|
|
84
|
+
`resolved/test | resolved/judgment | dismissed | unresolved`.
|
|
85
|
+
|
|
86
|
+
| Prohibition ID | Requirement/AC | Status | Test/evidence |
|
|
87
|
+
| --- | --- | --- | --- |
|
|
88
|
+
| PROH-001 | REQ-002 | resolved/test | <test/evidence link> |
|
|
89
|
+
|
|
90
|
+
## Failure and recovery behavior
|
|
91
|
+
| Trigger / partial state | User-visible outcome | System state | Recovery / retry rule | Requirement/AC |
|
|
92
|
+
| --- | --- | --- | --- | --- |
|
|
93
|
+
| <timeout, invalid input, interruption, dependency loss> | <clear bounded outcome> | <unchanged/pending/reconciling> | <who/what can safely recover> | <REQ/AC> |
|
|
94
|
+
|
|
95
|
+
## Applicability map
|
|
96
|
+
Use `applies | not applicable`; a non-applicable row needs a specific reason. The
|
|
97
|
+
status routes Define/Vet/Build/Prove to the named standard without copying it here.
|
|
98
|
+
|
|
99
|
+
| Concern | Status and trigger | Affected REQ/AC/invariant |
|
|
100
|
+
| --- | --- | --- |
|
|
101
|
+
| Repository topology (nested/mono/multi-repo, languages, services, generated/vendor) | <status + reason> | <ids> |
|
|
102
|
+
| Data integrity (writes, schema/migration, concurrency, tenant, retention/privacy) | <status + reason> | <ids> |
|
|
103
|
+
| Integration reliability (API/webhook/queue/job/cache/cross-service) | <status + reason> | <ids> |
|
|
104
|
+
| Security boundary (authn/authz, hostile input/files, secrets, privilege) | <status + reason> | <ids> |
|
|
105
|
+
| UI/accessibility/i18n/time-zone behavior | <status + reason> | <ids> |
|
|
106
|
+
| Compatibility/delivery (old/new versions, config, flag, rollout/rollback) | <status + reason> | <ids> |
|
|
107
|
+
|
|
108
|
+
## Edge cases
|
|
109
|
+
- <Boundary note not captured above.>
|
|
110
|
+
|
|
111
|
+
## AI-SPEC annex
|
|
112
|
+
- Model/RAG/agent/eval/LLM-output scope: `ai-spec.md` from `ai-spec-template.md`.
|
|
113
|
+
- Otherwise: not applicable.
|
|
114
|
+
|
|
115
|
+
## Success metrics
|
|
116
|
+
- <Metric or observable proof.>
|
|
117
|
+
|
|
118
|
+
## Scope boundaries
|
|
119
|
+
- Owns: <surface/behavior>.
|
|
120
|
+
- Does not own: <adjacent area>.
|
|
121
|
+
- Placement summary: <module/layer>; full map in `architecture.md`.
|
|
122
|
+
|
|
123
|
+
## Coverage seed
|
|
124
|
+
- Actors/journeys/components: <material surfaces>.
|
|
125
|
+
- States/data/contracts/integrations: <material boundaries>.
|
|
126
|
+
- Operations/proof: <config, observability, rollout/rollback, evidence constraints>.
|
|
127
|
+
|
|
128
|
+
## References
|
|
129
|
+
- `brief.md`: request/outcome/scope; `architecture.md`: placement/integration;
|
|
130
|
+
`flows.md`: Mermaid-first diagrams (optional `visual/<flow>.html`+`.outline.md` companion
|
|
131
|
+
+ link when richer presentation earns it — load playbooks via
|
|
132
|
+
[`index.md`](../../devrites-lib/reference/visual-playbooks/index.md)); `decisions.md`: decisions;
|
|
133
|
+
`decision-coverage.md`: Clarify topology/verdict; `traceability.md`: Define coverage;
|
|
134
|
+
`design-brief.md`: UI direction.
|
|
135
|
+
|
|
136
|
+
## Open questions
|
|
137
|
+
| Question ID | Gate | Question | Impact |
|
|
138
|
+
| --- | --- | --- | --- |
|
|
139
|
+
| q-YYYY-MM-DD-NNN | blocking | <question text, no marker> | AC-001 |
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Readiness gate
|
|
143
|
+
Run before stamping `spec_gate`; it is an authoring check, never written into `spec.md`.
|
|
144
|
+
|
|
145
|
+
- [ ] No blocking clarification or open `blocking`/`escalating` question; REQ/AC IDs are valid and ACs independently provable.
|
|
146
|
+
- [ ] `marker sweep:` recorded with zero kept hits (spec-grammar § Unresolved-question markers).
|
|
147
|
+
- [ ] Every verbatim ask in `brief.md` `## Asks` maps to REQ/AC, a reasoned Non-goal, or a blocking question.
|
|
148
|
+
- [ ] Stakeholder conflicts/priority rules, constraints, and invariants are explicit;
|
|
149
|
+
implementation preferences are not disguised as requirements.
|
|
150
|
+
- [ ] Existing affected behavior maps to preserving REQ/AC + current evidence, or uses the exact justified greenfield `none`.
|
|
151
|
+
- [ ] Edge rows target REQ/AC or justify dismissal; every backstop names independent discriminating evidence, else `unresolved`.
|
|
152
|
+
- [ ] Prohibitions resolve/dismiss; `resolved/test` links evidence.
|
|
153
|
+
- [ ] Each material failure/partial state names user outcome, system state, recovery,
|
|
154
|
+
and REQ/AC; no silent success or blind retry remains.
|
|
155
|
+
- [ ] Every applicability row is `applies` with affected IDs or has a specific
|
|
156
|
+
evidence-backed `not applicable` reason.
|
|
157
|
+
- [ ] AI has `ai-spec.md` and UI has `design-brief.md`; out-of-scope work states not applicable.
|
|
158
|
+
- [ ] Every emitted `checklists/<domain>.md` has `Verdict: pass` (zero CRITICAL fails); minor fails are logged.
|
|
159
|
+
- [ ] Non-goals/scope are explicit; capability impact is singular/specific and matches ledger deltas.
|
|
160
|
+
- [ ] Architecture/flows/decisions are linked, not duplicated; Coverage seed names Clarify surfaces.
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
# `.devrites/` state workspace
|
|
2
|
+
|
|
3
|
+
This is the writer-facing companion to the canonical schema in
|
|
4
|
+
[`devrites-lib/reference/workspace-artifact-schema.md`](../../devrites-lib/reference/workspace-artifact-schema.md).
|
|
5
|
+
Load that schema before creating or updating workspace artifacts.
|
|
6
|
+
|
|
7
|
+
## Layout
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
.devrites/
|
|
11
|
+
ACTIVE
|
|
12
|
+
work/
|
|
13
|
+
<feature-slug>/
|
|
14
|
+
README.md # compact workspace map
|
|
15
|
+
brief.md
|
|
16
|
+
spec.md
|
|
17
|
+
checklists/ # from /rite-spec step 5a
|
|
18
|
+
architecture.md # from /rite-define
|
|
19
|
+
flows.md # optional Mermaid-first; only when useful
|
|
20
|
+
visual/ # optional HTML+outline companions (never readiness)
|
|
21
|
+
decisions.md
|
|
22
|
+
assumptions.md
|
|
23
|
+
questions.md
|
|
24
|
+
decision-coverage.md # from /rite-clarify
|
|
25
|
+
strategy.md # from /rite-temper
|
|
26
|
+
plan.md # from /rite-define
|
|
27
|
+
tasks.md # from /rite-define
|
|
28
|
+
traceability.md # from /rite-define
|
|
29
|
+
eng-review.md # from /rite-vet
|
|
30
|
+
test-plan.md # from /rite-vet
|
|
31
|
+
state.md
|
|
32
|
+
evidence.md # from /rite-build or /rite-prove
|
|
33
|
+
browser-evidence.md # UI only
|
|
34
|
+
drift.md # drift only
|
|
35
|
+
touched-files.md # from /rite-build
|
|
36
|
+
design-brief.md # UI only
|
|
37
|
+
handoff.md # from /rite-handoff
|
|
38
|
+
references.md
|
|
39
|
+
references/
|
|
40
|
+
archive/
|
|
41
|
+
<feature-slug>/
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## `flows.md` (optional Mermaid-first)
|
|
45
|
+
|
|
46
|
+
Write `flows.md` only when sequence/state/data/lifecycle diagrams clarify the feature.
|
|
47
|
+
Keep **Mermaid in `flows.md`** when that is enough. When a richer reviewable presentation
|
|
48
|
+
is needed, **also** emit `.devrites/work/<slug>/visual/<flow>.html` +
|
|
49
|
+
`visual/<flow>.outline.md` and link the pair from `flows.md`.
|
|
50
|
+
|
|
51
|
+
Before any HTML:
|
|
52
|
+
|
|
53
|
+
1. Open matching playbooks via
|
|
54
|
+
[`../../devrites-lib/reference/visual-playbooks/index.md`](../../devrites-lib/reference/visual-playbooks/index.md)
|
|
55
|
+
(progressive; never preload all seven).
|
|
56
|
+
2. Copy required outline headings from
|
|
57
|
+
[`outline-template.md`](../../devrites-lib/reference/visual-playbooks/outline-template.md).
|
|
58
|
+
3. Dual-read: agents treat the outline as SSOT; **outline wins** on conflict. No Lavish
|
|
59
|
+
runtime; this is not a new lifecycle phase and never inflates readiness.
|
|
60
|
+
|
|
61
|
+
`/rite-spec` may seed a thin `flows.md` when investigation already needs a diagram;
|
|
62
|
+
`/rite-define` owns richer architecture/flow companions beside `architecture.md`.
|
|
63
|
+
|
|
64
|
+
## Creation rules
|
|
65
|
+
|
|
66
|
+
- Create or reuse the slug exactly under the canonical schema's
|
|
67
|
+
[Slug identity](../../devrites-lib/reference/workspace-artifact-schema.md#slug-identity)
|
|
68
|
+
contract.
|
|
69
|
+
- `/rite-spec` creates the workspace map, `brief.md`, `spec.md`, `decisions.md`,
|
|
70
|
+
`assumptions.md`, `questions.md`, `state.md`, optional `references.md` /
|
|
71
|
+
`references/`, optional `flows.md` when a diagram already clarifies investigation,
|
|
72
|
+
and optional `design-brief.md` for UI.
|
|
73
|
+
- `/rite-clarify` adds `decision-coverage.md`.
|
|
74
|
+
- `/rite-define` adds `architecture.md`, `plan.md`, `tasks.md`, and
|
|
75
|
+
`traceability.md`; may add or enrich `flows.md` and optional `visual/` HTML+outline
|
|
76
|
+
companions when Mermaid alone is not enough.
|
|
77
|
+
- `/rite-vet` adds `eng-review.md` and `test-plan.md`.
|
|
78
|
+
- Later phases add only the artifact they own. Do not create optional files as
|
|
79
|
+
empty placeholders; absence means the phase has not produced that artifact.
|
|
80
|
+
- Each artifact starts with a summary and links to deeper source files instead of
|
|
81
|
+
copying their content.
|
|
82
|
+
- Use stable IDs: `REQ-001`, `AC-001`, `EDGE-001`, `PROH-001`, `SLICE-001`,
|
|
83
|
+
`DEC-001`, `ASM-001`, `DRIFT-001`, `EVID-001`; apply the canonical schema's
|
|
84
|
+
append-only ID contract. Queued questions use `q-YYYY-MM-DD-NNN` below.
|
|
85
|
+
|
|
86
|
+
## README.md template
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
# <Feature> Workspace
|
|
90
|
+
phase: spec
|
|
91
|
+
status: running
|
|
92
|
+
next_action: /rite-clarify after spec readiness passes
|
|
93
|
+
last_updated: <date>
|
|
94
|
+
|
|
95
|
+
## Artifact map
|
|
96
|
+
| File | Job |
|
|
97
|
+
| --- | --- |
|
|
98
|
+
| brief.md | Objective and bounds |
|
|
99
|
+
| spec.md | Product contract |
|
|
100
|
+
| decision-coverage.md | Clarification verdict; absent until /rite-clarify |
|
|
101
|
+
| strategy.md | Temper record; absent until /rite-temper |
|
|
102
|
+
| architecture.md | Technical map; absent until /rite-define |
|
|
103
|
+
| plan.md | Technical approach; absent until /rite-define |
|
|
104
|
+
| tasks.md | Vertical slices; absent until /rite-define |
|
|
105
|
+
| traceability.md | Coverage dashboard; absent until /rite-define |
|
|
106
|
+
| evidence.md | Proof log; absent until /rite-build or /rite-prove |
|
|
107
|
+
|
|
108
|
+
## Read next
|
|
109
|
+
| Phase / role | Read |
|
|
110
|
+
| --- | --- |
|
|
111
|
+
| Spec | brief.md, spec.md, questions.md |
|
|
112
|
+
| Clarify | spec.md, decisions.md, assumptions.md, questions.md |
|
|
113
|
+
| Build | state.md, decision-coverage.md, eng-review.md, test-plan.md, tasks.md, plan.md |
|
|
114
|
+
| Review | traceability.md, evidence.md, decisions.md |
|
|
115
|
+
|
|
116
|
+
## Blocking gates
|
|
117
|
+
None.
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## state.md template
|
|
121
|
+
|
|
122
|
+
```markdown
|
|
123
|
+
# State
|
|
124
|
+
|
|
125
|
+
## Cursor
|
|
126
|
+
| Key | Value |
|
|
127
|
+
| --- | --- |
|
|
128
|
+
| phase | spec |
|
|
129
|
+
| status | running |
|
|
130
|
+
| active_slice | none |
|
|
131
|
+
| slice_mode | none |
|
|
132
|
+
| risk | none |
|
|
133
|
+
| spec_gate | <passed <iso>; marker sweep: <n> files, <k> hits, <d> discarded — absent until /rite-spec passes> |
|
|
134
|
+
| next_action | <single command + reason; parked recovery names the invoking command> |
|
|
135
|
+
| return_phase | <originating later phase; clarification or agent-owned technical backtracking only> |
|
|
136
|
+
| return_next_action | <saved originating command> |
|
|
137
|
+
| schema | 4 |
|
|
138
|
+
|
|
139
|
+
## Awaiting human
|
|
140
|
+
Only present when status is awaiting_human.
|
|
141
|
+
| Key | Value |
|
|
142
|
+
| --- | --- |
|
|
143
|
+
| question_id | q-YYYY-MM-DD-NNN |
|
|
144
|
+
| gate | blocking |
|
|
145
|
+
| blocking_slices | SLICE-001 |
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
`state.md` is a compact cursor, not a history file. Put proof in `evidence.md`,
|
|
149
|
+
decisions in `decisions.md`, assumptions in `assumptions.md`, and drift in
|
|
150
|
+
`drift.md`. Omit both `return_*` rows outside a later-phase `/rite-clarify`
|
|
151
|
+
retrofit or agent-owned technical backtracking chain.
|
|
152
|
+
|
|
153
|
+
Before an active caller moves backward, it copies its current phase and
|
|
154
|
+
non-empty action into the two return rows. Nested Plan, Vet, Build, and proof
|
|
155
|
+
work preserves that valid cursor. Once the prerequisite chain is green, the
|
|
156
|
+
controlling caller restores the saved phase/action and removes both rows in one
|
|
157
|
+
rewrite (`devrites-engine state set <slug> phase=<p> next_action=<a> --unset
|
|
158
|
+
return_phase --unset return_next_action`). A real HITL or parked-recovery stop retains the cursor for cold
|
|
159
|
+
resume. Never overwrite an existing valid return cursor, and preserve every
|
|
160
|
+
unrelated Markdown byte. `/rite-clarify` applies its stricter native cursor protocol in `/rite-clarify`.
|
|
161
|
+
|
|
162
|
+
On cold resume, a terminal `next_action` is a claim to verify, not a counter.
|
|
163
|
+
Reconcile the exact fingerprint and its attempts in `drift.md` / `evidence.md`.
|
|
164
|
+
If a consumptive action retained a distinct fingerprint below the no-progress
|
|
165
|
+
cap, rewrite the cursor into caller-owned recovery and preserve or reconstruct
|
|
166
|
+
the return rows only from the current phase and approved recorded action. The
|
|
167
|
+
spent action authorization blocks another execution, not that rewrite.
|
|
168
|
+
|
|
169
|
+
`afk_slices_remaining` is mutable runtime state, not `.devrites/AFK`
|
|
170
|
+
configuration. Only the controlling root writes it under the shared
|
|
171
|
+
[`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md#the-sentinel-devritesafk)
|
|
172
|
+
contract and Build's
|
|
173
|
+
[`afk-discipline.md`](../../rite-build/reference/afk-discipline.md#iteration-cap).
|
|
174
|
+
Ordinary workspace creation preserves the field without initializing,
|
|
175
|
+
increasing, renaming, or deleting it. Released bullet workspaces spell it `AFK
|
|
176
|
+
slices remaining`; preserve that presentation rather than migrating it.
|
|
177
|
+
|
|
178
|
+
When the brief records a [sequence continuation](../../rite-plan/reference/slicing.md#continuation-workspaces),
|
|
179
|
+
seed the `sequence_parent`, `sequence_position`, `sequence_workspaces_remaining`,
|
|
180
|
+
and — for the release entry — `sequence_role` rows at creation per that contract.
|
|
181
|
+
Without them `state merge-manifest` cannot walk the chain and the release-union
|
|
182
|
+
gate never engages.
|
|
183
|
+
|
|
184
|
+
## questions.md entry format
|
|
185
|
+
|
|
186
|
+
```markdown
|
|
187
|
+
## q-YYYY-MM-DD-NNN
|
|
188
|
+
status: open | answered | dropped
|
|
189
|
+
slice: spec | plan | SLICE-001
|
|
190
|
+
gate: advisory | validating | blocking | escalating
|
|
191
|
+
route: <specialist tag> (escalating only; omit otherwise)
|
|
192
|
+
question: <one crisp sentence>
|
|
193
|
+
options:
|
|
194
|
+
1. <recommended> (Recommended) - <trade-off>
|
|
195
|
+
2. <alternative> - <trade-off>
|
|
196
|
+
3. Something else - describe it
|
|
197
|
+
proposed: <option 1 restated; omit with no (Recommended)>
|
|
198
|
+
raised_at: <RFC 3339, e.g. 2026-10-19T08:17:08Z>
|
|
199
|
+
answered_at:
|
|
200
|
+
answer:
|
|
201
|
+
answered_by: # human, only when resolved with `state resolve --human`
|
|
202
|
+
impact: <affected AC/REQ/slice IDs>
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
No open blocking/escalating question may remain before define/build/prove gates.
|
|
206
|
+
For a new entry, scan every `## q-YYYY-MM-DD-NNN` header for the current date,
|
|
207
|
+
choose one above the highest suffix (or `001` when none exist), advancing until
|
|
208
|
+
it is unused, then re-read
|
|
209
|
+
`questions.md` immediately before the append and recompute. If the candidate is
|
|
210
|
+
no longer unused, retry the scan; never reserve or derive it with an engine
|
|
211
|
+
command.
|
|
212
|
+
|
|
213
|
+
## brief.md template
|
|
214
|
+
|
|
215
|
+
```markdown
|
|
216
|
+
# Brief: <Feature>
|
|
217
|
+
|
|
218
|
+
## Objective
|
|
219
|
+
<One sentence.>
|
|
220
|
+
|
|
221
|
+
## Non-goals
|
|
222
|
+
- <Explicitly out of scope.>
|
|
223
|
+
|
|
224
|
+
## Success definition
|
|
225
|
+
<One sentence that says what "done" means.>
|
|
226
|
+
|
|
227
|
+
## Asks
|
|
228
|
+
- "<the user's words, verbatim>" → <REQ/AC-ID | Non-goal: reason | q-YYYY-MM-DD-NNN>
|
|
229
|
+
|
|
230
|
+
## Route
|
|
231
|
+
Size: <small | standard | large>
|
|
232
|
+
Profile: <quick | standard | full>
|
|
233
|
+
Why: <one line — the significance signals that picked the profile>
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
## Compactness
|
|
237
|
+
|
|
238
|
+
High-traffic files should stay within the budgets in
|
|
239
|
+
[`workspace-artifact-schema.md`](../../devrites-lib/reference/workspace-artifact-schema.md). If a file truly must exceed its budget, add
|
|
240
|
+
`Budget override: <=N lines; <reason>` (N at most 2x the budget) near the top.
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rite-status
|
|
3
|
+
description: "User-invoked read-only active-feature report: phase, active slice, next action, evidence, open questions, drift, risks, and handoff readiness."
|
|
4
|
+
argument-hint: "[feature-slug]"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
---
|
|
8
|
+
<!-- loads: {"always":["devrites-lib/reference/standards/core.md"],"workspace":["state.md","tasks.md","questions.md"]} -->
|
|
9
|
+
> Read-set manifest: `devrites-engine context --skills-root .dsh/skills <slug> --skill rite-status` (no workspace: `--out <path>`) bundles every file named below into one deduplicated read.
|
|
10
|
+
|
|
11
|
+
# /rite-status: active feature status
|
|
12
|
+
|
|
13
|
+
Read-only. Report the active workspace; do not run a phase or write files.
|
|
14
|
+
|
|
15
|
+
## Load
|
|
16
|
+
|
|
17
|
+
Use the supplied slug or `.devrites/ACTIVE`; require its authoritative
|
|
18
|
+
`state.md` and read the cursor directly. Read question, evidence, and risk
|
|
19
|
+
artifacts only as needed. Never infer lifecycle state from `README.md` or chat.
|
|
20
|
+
|
|
21
|
+
If no workspace exists: when archived workspaces record an unfinished
|
|
22
|
+
[continuation sequence](../rite-plan/reference/slicing.md#continuation-workspaces),
|
|
23
|
+
list each next command (`/rite-spec <parent>-<n> "<objective>"`); otherwise
|
|
24
|
+
recommend `/rite-spec <feature>`. Then stop.
|
|
25
|
+
|
|
26
|
+
If `state.md` is unreadable/malformed: report a gap with the defect and stop — never infer the phase from other files; `/rite-doctor`/`/rite-upgrade` own repair.
|
|
27
|
+
|
|
28
|
+
## Report
|
|
29
|
+
|
|
30
|
+
1. feature and one-line objective;
|
|
31
|
+
2. phase, run mode, and active slice;
|
|
32
|
+
3. status from `state.md`;
|
|
33
|
+
4. the single `Next step` recorded in `state.md`;
|
|
34
|
+
5. proven versus unproven evidence;
|
|
35
|
+
6. open questions by gate, including the exact resolving command when awaiting
|
|
36
|
+
a human; list `gate: escalating` entries separately under **Escalating:**
|
|
37
|
+
with their `route:` specialist tag (do not mix with synchronous blockers);
|
|
38
|
+
7. unresolved drift and material risks;
|
|
39
|
+
8. handoff readiness;
|
|
40
|
+
9. tree state: `HEAD`, the `git status --short` path count, and dirty paths absent from
|
|
41
|
+
`touched-files.md` (unrecorded); when `handoff.md` records `Tree at write`, whether HEAD
|
|
42
|
+
and count still match it. Unrecorded paths or a mismatch go under `Open:` as
|
|
43
|
+
reconcile-before-any-writer-command; status never records them itself.
|
|
44
|
+
|
|
45
|
+
A workspace is handoff-ready when it records one next action, all unresolved
|
|
46
|
+
questions, non-obvious decisions, load-bearing assumptions, current drift
|
|
47
|
+
status, and evidence for its claims. If chat contains missing durable context,
|
|
48
|
+
recommend `/rite-handoff` before the lifecycle command.
|
|
49
|
+
`devrites-engine handoff [slug]` emits the deterministic resume record (cursor,
|
|
50
|
+
`awaiting_human`, blocking question gates, ledger reduction, dead ends,
|
|
51
|
+
in-flight waves, read-next order) — cite it for items 3–6 and the handoff-readiness verdict
|
|
52
|
+
rather than re-deriving them. If that command is not found or exits nonzero,
|
|
53
|
+
report items 3–6 and `Handoff:` as `unavailable: <command> <not found | exit N>` —
|
|
54
|
+
never re-derive them from other files, never leave them blank — and set `Next:`
|
|
55
|
+
to `/rite-doctor`. When `metrics.jsonl` exists,
|
|
56
|
+
`devrites-engine metrics summary <slug>` rolls up dispatch/return counts and
|
|
57
|
+
bundle bytes per phase — cite it for dispatch accounting rather than
|
|
58
|
+
re-counting the ledger.
|
|
59
|
+
|
|
60
|
+
Do not derive a command from host identity or invent one from phase names. Read
|
|
61
|
+
the persisted `Next step`.
|
|
62
|
+
|
|
63
|
+
## Output
|
|
64
|
+
|
|
65
|
+
```text
|
|
66
|
+
Feature: <slug> — <objective>
|
|
67
|
+
Phase: <phase>; slice: <slice|n/a>; mode: <HITL|AFK>; status: <status>
|
|
68
|
+
Evidence: <fresh/proven summary | gaps>
|
|
69
|
+
Open: <questions/drift/blockers | none>
|
|
70
|
+
Escalating: <qid route:tag … | none>
|
|
71
|
+
Handoff: <ready | missing durable context | unavailable: <reason>>
|
|
72
|
+
Tree: HEAD <sha>; dirty <n>; unrecorded <paths | none>; record <matches | differs | none>
|
|
73
|
+
Next: <single persisted command>
|
|
74
|
+
```
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rite-temper
|
|
3
|
+
description: Temper a readied spec before planning. Use when the user says "temper this", "strategy review", "pre-mortem the spec", or asks if we are over/under-building. Not for code review or final seal.
|
|
4
|
+
argument-hint: "[feature-slug] [--mode expand|selective|hold-rigor|reduce-to-MVP]"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<!-- loads: {"always":["devrites-lib/reference/standards/core.md","devrites-lib/reference/standards/code-navigation.md","devrites-lib/reference/standards/code-index.md","devrites-lib/reference/orchestration-profiles.md","devrites-lib/reference/standards/agents.md","rite-temper/reference/significance.md","rite-temper/reference/scope-modes.md","rite-temper/reference/review-dimensions.md","rite-temper/reference/strategy-template.md","rite-temper/reference/anti-patterns.md"],"triggers":{"afk":["devrites-lib/reference/standards/afk-hitl.md"],"applicability":["devrites-lib/reference/standards/repository-topology.md","devrites-lib/reference/standards/data-integrity.md","devrites-lib/reference/standards/integration-reliability.md"],"documentation":["devrites-lib/reference/standards/documentation.md"],"elicitation":["devrites-lib/reference/standards/elicitation.md"],"yagni":["devrites-lib/reference/standards/patterns.md","devrites-lib/reference/standards/coding-style.md"]},"workspace":["brief.md","spec.md","state.md","decisions.md","assumptions.md","questions.md","decision-coverage.md","strategy.md","design-brief.md"],"workspaceByRole":{"strategy-reviewer":["brief.md","spec.md","decision-coverage.md","decisions.md","strategy.md","state.md"]},"rootOnly":["devrites-lib/reference/standards/code-index.md","devrites-lib/reference/orchestration-profiles.md","devrites-lib/reference/standards/afk-hitl.md"]} -->
|
|
9
|
+
> Read-set manifest: `devrites-engine context --skills-root .dsh/skills <slug> --phase temper` bundles every file named below into one deduplicated read. Trigger names map to the conditional rules in the sections that follow.
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
# /rite-temper: review scope and risk before planning
|
|
13
|
+
|
|
14
|
+
Review readied spec ambition, scope, pre-mortem risk, and excess surface. Fold
|
|
15
|
+
accepted decisions into the canonical contract before `/rite-define`. Optional for
|
|
16
|
+
small work; skips low-stakes specs; `/rite-autocomplete` always invokes it.
|
|
17
|
+
**Read active workspace first**; no readied `spec.md` → `/rite-spec`. Depth follows
|
|
18
|
+
[`devrites-lib/reference/orchestration-profiles.md`](../devrites-lib/reference/orchestration-profiles.md);
|
|
19
|
+
the required exact strategy reviewer never changes with profile.
|
|
20
|
+
|
|
21
|
+
## Rules consulted (read on demand from `.dsh/skills/devrites-lib/reference/standards/`)
|
|
22
|
+
Pull on demand: [`patterns.md`](../devrites-lib/reference/standards/patterns.md) +
|
|
23
|
+
[`coding-style.md`](../devrites-lib/reference/standards/coding-style.md) (the over-engineering / YAGNI rubric, trigger `yagni`; reuse the pack's standard, don't
|
|
24
|
+
invent one), [`documentation.md`](../devrites-lib/reference/standards/documentation.md) (ADR-style `decisions.md` entries), [`afk-hitl.md`](../devrites-lib/reference/standards/afk-hitl.md)
|
|
25
|
+
(irreversible-risk list + gate ceiling), [`elicitation.md`](../devrites-lib/reference/standards/elicitation.md) (the move-set to deepen a section
|
|
26
|
+
that needs more than the default pre-mortem) selected by the section's risk). Load
|
|
27
|
+
[`repository-topology.md`](../devrites-lib/reference/standards/repository-topology.md), [`data-integrity.md`](../devrites-lib/reference/standards/data-integrity.md), or [`integration-reliability.md`](../devrites-lib/reference/standards/integration-reliability.md) only when
|
|
28
|
+
the spec applicability map triggers that risk family.
|
|
29
|
+
|
|
30
|
+
## Operating rules
|
|
31
|
+
- **Raise outcome ambition, not excess solution surface.** Solve the underlying
|
|
32
|
+
problem without speculative capability/abstraction.
|
|
33
|
+
- **Route every scope change through the Spec Drift Guard.** A scope change takes effect
|
|
34
|
+
only when `spec.md` records the confirmed decision. Growth (`expand`, extra
|
|
35
|
+
acceptance) needs a resolved human `questions.md` qid, so an unattended run holds it
|
|
36
|
+
open. Irreversible-risk still pauses.
|
|
37
|
+
- **Maximum caution:** auth, migration, public API, and data-model changes need
|
|
38
|
+
full review and explicit rollback. Pause only for [canonical irreversible-risk items](../devrites-lib/reference/standards/afk-hitl.md#irreversible-risk-list-always-pause)
|
|
39
|
+
or unresolved human-owned decisions, not an already-approved reversible internal data-model change.
|
|
40
|
+
- **Honest verdict.** Never round "needs work" to "ready"; record each scope call's *why*.
|
|
41
|
+
- **Search before asking.** Apply [`afk-hitl.md`](../devrites-lib/reference/standards/afk-hitl.md) ownership;
|
|
42
|
+
only human-owned calls enter the interactive walk.
|
|
43
|
+
- **You write; reviewer judges.** Sole canonical writer: `strategy.md` + spec edits;
|
|
44
|
+
reviewer is read-only.
|
|
45
|
+
- **Significant features require spec-quality checklists.** Before hardening,
|
|
46
|
+
require passing `checklists/<domain>.md` ([`spec-checklists.md`](../rite-spec/reference/spec-checklists.md)); a
|
|
47
|
+
folded scope expansion **adds its own** rows, including new Success/Acceptance
|
|
48
|
+
criteria. An unquantified folded criterion is a CRITICAL failure reopening readiness.
|
|
49
|
+
|
|
50
|
+
## Workflow
|
|
51
|
+
0. **Read `.dsh/skills/devrites-lib/reference/standards/core.md`**, then
|
|
52
|
+
resolve the active slug, require its `state.md`, and read the cursor directly.
|
|
53
|
+
Then read the workspace: `spec.md`, `decision-coverage.md` (+ `decisions.md`,
|
|
54
|
+
`assumptions.md`, `design-brief.md` if UI), `state.md`. Require `state.md` `spec_gate: passed` (legacy `Spec gate:` accepted): else
|
|
55
|
+
STOP → `/rite-spec`. Require `Decision coverage: CLEAR`: else STOP →
|
|
56
|
+
`/rite-clarify`. If a plan already exists, scope changes route through `/rite-plan
|
|
57
|
+
repair` (record in `drift.md`), not a blind spec edit.
|
|
58
|
+
1. **Significance test:** [`reference/significance.md`](reference/significance.md). Low-stakes
|
|
59
|
+
/ shape-not-meaning work → write the exact one-line `skipped — low stakes (<trigger>)` verdict to `strategy.md`,
|
|
60
|
+
set `state.md` `Phase: temper` + `Next step: /rite-define`, and recommend it. Otherwise fire the full pass below.
|
|
61
|
+
2. **FORWARD pass + mode selection:** [`reference/scope-modes.md`](reference/scope-modes.md).
|
|
62
|
+
First, the **one-sentence-intent test**: state the whole change's intent in a single sentence.
|
|
63
|
+
If you can't without an "and" that joins two unrelated outcomes, it is **two features**: the
|
|
64
|
+
scope-creep signal; recommend splitting or narrowing the spec before continuing.
|
|
65
|
+
Apply the same test to size: a spec whose honest decomposition would exceed the
|
|
66
|
+
[feature ceiling](../rite-plan/reference/slicing.md#feature-ceiling-split-an-epic-never-override-the-budget)
|
|
67
|
+
(roughly ten slices or more than ~20 acceptance criteria) is a feature sequence;
|
|
68
|
+
recommend the thinnest shippable subset now and name the continuations as Non-goals.
|
|
69
|
+
Then consider the 10-star outcome for the underlying problem and choose **exactly one**
|
|
70
|
+
scope mode (`expand` opt-in · `selective` · `hold-rigor` · `reduce-to-MVP`) with its
|
|
71
|
+
rationale and the condition that would change the choice. `$ARGUMENTS` `--mode` is a
|
|
72
|
+
hint, not a command.
|
|
73
|
+
3. **INVERSION pass:** pre-mortem in past tense ("it shipped and failed: what went wrong"),
|
|
74
|
+
each top risk carrying likelihood + mitigation + the slice it will bind to; then the **YAGNI
|
|
75
|
+
ledger** (each candidate scope item gets the "imagine the later refactor" test; defer unless
|
|
76
|
+
now-cost is trivial AND deferred-cost is large).
|
|
77
|
+
**Interruption pre-mortem:** audit the spec forecast and assumptions for unresolved behavior,
|
|
78
|
+
proof prerequisites, approvals, access, and irreversible gates. Resolve facts and reversible
|
|
79
|
+
details now; retain only unavailable-pre-code or mandatory action-time checkpoints.
|
|
80
|
+
Challenge each `not applicable` decision against live evidence and each applicable
|
|
81
|
+
topology/data/integration row against its worst credible partial-state/recovery case.
|
|
82
|
+
- **Deepen on demand.** When a scope decision, requirement, or risk needs more analysis
|
|
83
|
+
than the default pre-mortem provides, choose 3-5 techniques from
|
|
84
|
+
[`elicitation.md`](../devrites-lib/reference/standards/elicitation.md) whose *when-to-reach-for-it* matches that
|
|
85
|
+
section's risk (irreversible decision → Red-Team/Blue-Team + Assumption Audit; sizing → Delphi;
|
|
86
|
+
vague requirement → Steelman-then-Attack), offer them, and run the chosen one **on that
|
|
87
|
+
section**. Record what changed, not the technique name. The default passes remain
|
|
88
|
+
sufficient when no deeper analysis is needed.
|
|
89
|
+
4. **Score the 9 dimensions:** [`reference/review-dimensions.md`](reference/review-dimensions.md).
|
|
90
|
+
Cite evidence *before* the band; **gate on the floor** (the weakest dimension, not an average).
|
|
91
|
+
**Completion:** all nine dimensions have cited evidence, a band, and one explicit floor verdict.
|
|
92
|
+
5. **Review human-owned findings with the human; do not batch them.** `strategy.md`
|
|
93
|
+
records the interactive review but does not replace it. Present each material scope decision through
|
|
94
|
+
`ask_user_question`, one at a time, best-guess + **why**. Each material scope call ends as a
|
|
95
|
+
**recorded decision**: a resolved `questions.md` qid (HITL) or a `decisions.md` ADR (AFK;
|
|
96
|
+
never for `expand` or extra acceptance, which need a human-resolved qid):
|
|
97
|
+
so the review leaves an auditable record outside chat. (AFK gate policy —
|
|
98
|
+
[`reference/significance.md`](reference/significance.md) — autocomplete applies
|
|
99
|
+
`hold-rigor`, `reduce-to-MVP` and a skip, but holds `expand` and extra acceptance for a human
|
|
100
|
+
qid; irreversible-risk always pauses.)
|
|
101
|
+
Apply objective clarity, mitigation, and assumption fixes directly.
|
|
102
|
+
6. **Write `strategy.md` + fold back:** [`reference/strategy-template.md`](reference/strategy-template.md).
|
|
103
|
+
**Choose the drift path based on whether a plan exists:** *no `plan.md` yet* (the normal pre-define
|
|
104
|
+
case) → update `spec.md` **through the Spec Drift Guard**. *Success metrics* (outcome-level, no AC id)
|
|
105
|
+
**and** *Acceptance criteria* for each opt-in expansion / cut, **Non-goals** for every deferred item,
|
|
106
|
+
*Constraints and invariants*, with top failure modes + mitigations folded into *Failure and recovery
|
|
107
|
+
behavior* rows, and the *Open questions* table; *`plan.md`
|
|
108
|
+
already exists* → do **not** edit `spec.md` here: write the deltas to `drift.md` and hand off
|
|
109
|
+
to `/rite-plan repair`. Either way, append `decisions.md` (one ADR per scope call: context ·
|
|
110
|
+
decision · why-not · what-would-change-it) and `assumptions.md` (every "we'll probably need X" →
|
|
111
|
+
assumption-to-verify). (every delta carries the step-5 recorded decision; an untraceable
|
|
112
|
+
fold is invalid). **Re-check the spec Readiness gate** (it fails if
|
|
113
|
+
any folded scope delta lacks its decision or leaves a foreseeable human build choice).
|
|
114
|
+
After any edit to `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, or
|
|
115
|
+
`questions.md`, re-scan the affected coverage rows, assumption audit, residual uncertainty,
|
|
116
|
+
and closed gates. `open` rows, an unowned material assumption, or an open
|
|
117
|
+
blocking/escalating question routes `/rite-clarify`/HITL. Only after the
|
|
118
|
+
matrix is re-closed may the phase advance.
|
|
119
|
+
Set `Phase: temper`; `Next step: /rite-define` only after verification.
|
|
120
|
+
Unapproved irreversible choices and unresolved growth qids set `Awaiting human`.
|
|
121
|
+
Objective below-bar findings continue correction.
|
|
122
|
+
7. **Adversarial verification loop:** ask the exact
|
|
123
|
+
[`devrites-strategy-reviewer`](../../agents/devrites-strategy-reviewer.md)
|
|
124
|
+
through the native fresh-context contract in
|
|
125
|
+
[`agents.md`](../devrites-lib/reference/standards/agents.md), with **only** its `--role strategy-reviewer` read-set
|
|
126
|
+
(hardened spec, `strategy.md`, claim-check artifacts) + rubric, no authoring reasoning. Fold technical findings into one correction;
|
|
127
|
+
exact strategy reviewer rechecks open findings and affected coverage/regressions under
|
|
128
|
+
[the canonical retry contract](../devrites-lib/reference/standards/afk-hitl.md#retry-cap-no-progress-loops-and-self-resolve):
|
|
129
|
+
Product/scope choices and unapproved irreversible risk remain human gates;
|
|
130
|
+
technical exhaustion preserves blocker/reproduction.
|
|
131
|
+
If the named agent is unavailable, stop for HITL. After an accepted edit to a
|
|
132
|
+
coverage-bound input, repeat step 6's native coverage revalidation before handoff.
|
|
133
|
+
8. **STOP.** Report the mode, the scope deltas, and the floor verdict; recommend `/rite-define`.
|
|
134
|
+
|
|
135
|
+
> **Mid-flight discipline.** Do not replace the interactive review with `strategy.md`,
|
|
136
|
+
> expand implementation surface without need, grow scope outside the Drift Guard, or score
|
|
137
|
+
> before citing evidence. See [`reference/anti-patterns.md`](reference/anti-patterns.md).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# /rite-temper: anti-patterns
|
|
2
|
+
|
|
3
|
+
For cross-phase issues, read [universal anti-patterns](../../devrites-lib/reference/standards/anti-patterns.md).
|
|
4
|
+
|
|
5
|
+
## Phase rationalizations
|
|
6
|
+
|
|
7
|
+
| Excuse | Rebuttal |
|
|
8
|
+
|---|---|
|
|
9
|
+
| "I'll write all the findings into `strategy.md` and let the user read it." | Fold and recheck objective corrections preserving scope, behavior, and risk policy. Ask human-owned strategy/acceptance choices with recommendations and await answers. Recording alone resolves nothing; never silently expand or trim the spec. |
|
|
10
|
+
| "Bigger is better: let's add the extra capability while we're thinking big." | Ambition belongs on the **outcome**, not the **solution surface**. A speculative capability/abstraction is gold plating. Expand the problem + acceptance; never the machinery. |
|
|
11
|
+
| "The user obviously wants the ambitious version. I'll add it to the spec." | Expansion is **opt-in**, recorded, and confirmed (HITL) or paused (AFK). Adding acceptance the human didn't approve is silent scope growth: route it through the Spec Drift Guard or don't add it. |
|
|
12
|
+
| "It's over-scoped, I'll just trim those criteria." | Reducing scope is **still a spec change**. Cut acceptance only as a recorded Spec-Drift-Guard decision, and park the rest in Non-goals with a revisit note: never a silent trim. |
|
|
13
|
+
| "This dimension is weak but the others are strong: net it's fine." | The gate is the **floor**, not the average; strong clarity cannot offset broken risk. |
|
|
14
|
+
| "I can see it's adequate. I'll note the band, evidence is obvious." | Cite spec evidence **before** the band; never score first and rationalize later. |
|
|
15
|
+
| "It's a strategy doc, the implementation concerns don't apply yet." | Cross-cutting concerns (security/data/observability/modifiability) are where strategy breaks down. Address each or mark it explicitly N/A: silent omission is a gap. |
|
|
16
|
+
| "This greenfield design is elegant." | Ground ambition in live seams/blast radius; a new dependency or second design system needs an explicit decision. |
|
|
17
|
+
|
|
18
|
+
## Red flags
|
|
19
|
+
- An accepted strategy change recorded in `strategy.md` but not reflected in its
|
|
20
|
+
owning spec acceptance/Non-goals. A clean review does not require gratuitous spec edits.
|
|
21
|
+
- An `expand` decision auto-applied in AFK, an unapproved risk-policy change, or an
|
|
22
|
+
irreversible operation without its required authorization.
|
|
23
|
+
- A pre-mortem with risks listed but no mitigation + owning slice: a risk without an owner is a
|
|
24
|
+
wish.
|
|
25
|
+
- Repeating an exhausted causal failure under the shared no-progress rule in
|
|
26
|
+
[`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md), or stopping a
|
|
27
|
+
distinct cause solely because the total review round exceeds three.
|
|
28
|
+
- The reviewer being handed the author's reasoning as independent evidence
|
|
29
|
+
(defeats the fresh-context point).
|
|
30
|
+
- The skill writing a `plan.md`, slicing, or touching code. That's `/rite-define` / `/rite-build`.
|