devrites 5.14.4 → 6.0.1
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 +23 -0
- package/NOTICE.md +6 -4
- package/README.md +77 -16
- package/SECURITY.md +25 -11
- package/bin/devrites.mjs +49 -15
- package/docs/adr/0001-go-engine-as-control-plane.md +6 -3
- package/docs/adr/0029-v5-workspace-schema-and-native-migration.md +9 -0
- package/docs/adr/README.md +3 -2
- package/docs/agents/issue-tracker.md +1 -1
- package/docs/architecture.md +6 -3
- package/docs/cli.md +32 -9
- package/docs/command-map.md +5 -3
- package/docs/engine/state-schema.md +1 -1
- package/docs/flow.md +1 -1
- package/docs/harness-compliance.md +2 -2
- package/docs/release.md +15 -11
- package/docs/usage.md +1 -1
- package/engine/commands.go +1 -1
- package/engine/go.mod +1 -1
- package/engine/help.go +41 -15
- package/engine/help_test.go +134 -0
- package/engine/internal/acceptance/acceptance_test.go +298 -7
- package/engine/internal/acceptance/approve.go +7 -2
- package/engine/internal/acceptance/cli.go +3 -0
- package/engine/internal/acceptance/evidence.go +69 -5
- package/engine/internal/acceptance/lint.go +1 -1
- package/engine/internal/acceptance/run.go +5 -3
- package/engine/internal/acceptance/scaffold.go +5 -16
- package/engine/internal/devritespaths/paths.go +7 -6
- package/engine/internal/devritespaths/paths_test.go +18 -0
- package/engine/internal/fsutil/copy.go +83 -49
- package/engine/internal/fsutil/copy_test.go +70 -109
- package/engine/internal/gate/gate.go +89 -16
- package/engine/internal/gate/gate_test.go +101 -0
- package/engine/internal/hostpack/hostpack.go +52 -2
- package/engine/internal/hostpack/hostpack_test.go +83 -2
- package/engine/internal/install/apply.go +59 -16
- package/engine/internal/install/binary.go +10 -1
- package/engine/internal/install/install_test.go +428 -0
- package/engine/internal/install/merge.go +69 -38
- package/engine/internal/install/preflight.go +7 -0
- package/engine/internal/install/uninstall.go +43 -4
- package/engine/internal/lib/claims.go +25 -4
- package/engine/internal/lib/claims_test.go +57 -0
- package/engine/internal/lib/closeout.go +41 -3
- package/engine/internal/lib/closeout_test.go +144 -0
- package/engine/internal/lib/context.go +8 -4
- package/engine/internal/lib/context_next_test.go +100 -0
- package/engine/internal/lib/detect.go +1 -1
- package/engine/internal/lib/detect_test.go +13 -0
- package/engine/internal/lib/diffscope.go +19 -9
- package/engine/internal/lib/dispatch.go +7 -0
- package/engine/internal/lib/dup.go +40 -37
- package/engine/internal/lib/dup_test.go +178 -0
- package/engine/internal/lib/manifest_union.go +4 -1
- package/engine/internal/lib/manifest_union_test.go +37 -0
- package/engine/internal/lib/metrics.go +4 -0
- package/engine/internal/lib/metrics_test.go +28 -0
- package/engine/internal/lib/migrate_test.go +59 -0
- package/engine/internal/lib/observe_budgets.go +25 -9
- package/engine/internal/lib/observe_budgets_test.go +254 -0
- package/engine/internal/lib/observe_summary.go +23 -2
- package/engine/internal/lib/open_visual.go +4 -2
- package/engine/internal/lib/open_visual_test.go +11 -0
- package/engine/internal/lib/regression.go +62 -23
- package/engine/internal/lib/regression_test.go +103 -0
- package/engine/internal/lib/resolve.go +36 -17
- package/engine/internal/lib/resolve_remediation_test.go +132 -0
- package/engine/internal/lib/skilltrust.go +0 -11
- package/engine/internal/lib/slicecheck.go +7 -5
- package/engine/internal/lib/slicecheck_test.go +18 -0
- package/engine/internal/lib/triggers.go +9 -3
- package/engine/internal/lib/triggers_test.go +23 -0
- package/engine/internal/lib/util.go +17 -3
- package/engine/internal/lib/util_test.go +104 -0
- package/engine/internal/lib/visual_outline.go +7 -3
- package/engine/internal/lib/visual_outline_test.go +28 -0
- package/engine/internal/lib/windows.go +13 -9
- package/engine/internal/lib/windows_test.go +98 -0
- package/engine/internal/lib/workspace_read.go +2 -11
- package/engine/internal/lib/workspace_read_test.go +102 -0
- package/engine/internal/markdowntext/markdowntext.go +194 -11
- package/engine/internal/markdowntext/testdata/structural.json +250 -0
- package/engine/internal/notes/cli.go +30 -12
- package/engine/internal/notes/notes.go +242 -39
- package/engine/internal/notes/notes_test.go +372 -0
- package/engine/internal/overhaul/admit/packet.go +89 -0
- package/engine/internal/overhaul/admit/packet_test.go +223 -0
- package/engine/internal/overhaul/admit/run.go +4 -0
- package/engine/internal/overhaul/bench/run.go +6 -0
- package/engine/internal/overhaul/bench/run_test.go +46 -0
- package/engine/internal/overhaul/overhaul.go +6 -1
- package/engine/internal/overhaul/ovio/ovio.go +10 -3
- package/engine/internal/overhaul/ovio/ovio_test.go +75 -0
- package/engine/internal/overhaul/packet/packet.go +208 -0
- package/engine/internal/overhaul/packet/packet_test.go +263 -0
- package/engine/internal/overhaul/records/check.go +6 -0
- package/engine/internal/overhaul/records/init.go +16 -5
- package/engine/internal/overhaul/records/records_test.go +4 -0
- package/engine/internal/overhaul/records/run.go +66 -0
- package/engine/internal/overhaul/records/run_test.go +77 -0
- package/engine/internal/overhaul/render/run.go +15 -11
- package/engine/internal/overhaul/render/run_test.go +463 -1
- package/engine/internal/overhaul/render/visual.go +95 -33
- package/engine/internal/overhaul/score/run.go +20 -0
- package/engine/internal/overhaul/score/run_test.go +156 -1
- package/engine/internal/overhaul/snapshot/run.go +78 -21
- package/engine/internal/overhaul/snapshot/run_test.go +344 -8
- package/engine/internal/parallel/cli.go +33 -20
- package/engine/internal/parallel/cli_test.go +59 -0
- package/engine/internal/parallel/git.go +39 -1
- package/engine/internal/parallel/ops.go +101 -11
- package/engine/internal/parallel/ops_test.go +552 -69
- package/engine/internal/parallel/parallel_test.go +31 -1
- package/engine/internal/parallel/pathdisjoint.go +19 -1
- package/engine/internal/parallel/pathdisjoint_test.go +72 -0
- package/engine/internal/parallel/select.go +6 -2
- package/engine/internal/release/release.go +13 -3
- package/engine/internal/release/release_test.go +208 -3
- package/engine/internal/rootfacts/facts.go +9 -0
- package/engine/internal/rootfacts/facts_test.go +38 -0
- package/engine/internal/state/acceptance.go +7 -1
- package/engine/internal/state/budgets.go +11 -10
- package/engine/internal/state/budgets_test.go +93 -0
- package/engine/internal/state/cursor.go +19 -8
- package/engine/internal/state/cursor_test.go +120 -0
- package/engine/internal/state/lock_unix.go +7 -1
- package/engine/internal/state/lock_windows.go +7 -1
- package/engine/internal/state/state_test.go +49 -18
- package/engine/internal/state/taskgraph.go +18 -4
- package/engine/internal/state/taskgraph_test.go +43 -0
- package/engine/internal/state/workspaceschema.go +16 -2
- package/engine/internal/state/workspaceschema_test.go +34 -0
- package/engine/internal/state/write.go +67 -6
- package/engine/internal/state/write_test.go +136 -0
- package/engine/internal/version/version_test.go +2 -0
- package/engine/main.go +8 -1
- package/engine/observation_contract_test.go +1 -1
- package/engine/root_routing_test.go +23 -1
- package/install.sh +132 -12
- package/pack/.claude/agents/devrites-spec-reviewer.md +2 -2
- package/pack/.claude/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/.claude/skills/devrites-interview/SKILL.md +4 -4
- package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/.claude/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/.claude/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/.claude/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/.claude/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/.claude/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/.claude/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/.claude/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/.claude/skills/overhaul/SKILL.md +1 -1
- package/pack/.claude/skills/overhaul/references/orchestration.md +5 -3
- package/pack/.claude/skills/overhaul/references/records.md +39 -0
- package/pack/.claude/skills/overhaul/references/scoring.md +14 -4
- package/pack/.claude/skills/rite/reference/menu.md +1 -1
- package/pack/.claude/skills/rite-adopt/SKILL.md +8 -2
- package/pack/.claude/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/.claude/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/.claude/skills/rite-build/SKILL.md +2 -1
- package/pack/.claude/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/.claude/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/.claude/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/.claude/skills/rite-clarify/SKILL.md +5 -4
- package/pack/.claude/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/.claude/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/.claude/skills/rite-converge/SKILL.md +2 -0
- package/pack/.claude/skills/rite-customize/SKILL.md +6 -4
- package/pack/.claude/skills/rite-define/SKILL.md +2 -0
- package/pack/.claude/skills/rite-define/reference/gates.md +8 -7
- package/pack/.claude/skills/rite-explain/SKILL.md +1 -1
- package/pack/.claude/skills/rite-explain/reference/intake.md +1 -1
- package/pack/.claude/skills/rite-fast/SKILL.md +1 -1
- package/pack/.claude/skills/rite-plan/SKILL.md +4 -3
- package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/.claude/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/.claude/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/.claude/skills/rite-resolve/SKILL.md +3 -3
- package/pack/.claude/skills/rite-seal/SKILL.md +4 -3
- package/pack/.claude/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/.claude/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/.claude/skills/rite-ship/SKILL.md +4 -2
- package/pack/.claude/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/.claude/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/.claude/skills/rite-spec/SKILL.md +2 -2
- package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/.claude/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/.claude/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/.claude/skills/rite-temper/SKILL.md +12 -9
- package/pack/.claude/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/.claude/skills/rite-temper/reference/significance.md +10 -3
- package/pack/.claude/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/.claude/skills/rite-vet/SKILL.md +4 -3
- package/pack/.claude/skills/rite-vet/reference/artifacts.md +1 -1
- package/pack/.claude/workflows/devrites-readonly-review.js +5 -4
- package/pack/generated/claude/agents/devrites-spec-reviewer.md +2 -2
- package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/generated/claude/skills/devrites-interview/SKILL.md +4 -4
- package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/generated/claude/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/generated/claude/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/generated/claude/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/generated/claude/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/generated/claude/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/generated/claude/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/generated/claude/skills/overhaul/SKILL.md +1 -1
- package/pack/generated/claude/skills/overhaul/references/orchestration.md +5 -3
- package/pack/generated/claude/skills/overhaul/references/records.md +39 -0
- package/pack/generated/claude/skills/overhaul/references/scoring.md +14 -4
- package/pack/generated/claude/skills/rite/reference/menu.md +1 -1
- package/pack/generated/claude/skills/rite-adopt/SKILL.md +8 -2
- package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/generated/claude/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/generated/claude/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/generated/claude/skills/rite-clarify/SKILL.md +5 -4
- package/pack/generated/claude/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/generated/claude/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/generated/claude/skills/rite-converge/SKILL.md +2 -0
- package/pack/generated/claude/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/claude/skills/rite-define/SKILL.md +2 -0
- package/pack/generated/claude/skills/rite-define/reference/gates.md +8 -7
- package/pack/generated/claude/skills/rite-explain/SKILL.md +1 -1
- package/pack/generated/claude/skills/rite-explain/reference/intake.md +1 -1
- package/pack/generated/claude/skills/rite-fast/SKILL.md +1 -1
- package/pack/generated/claude/skills/rite-plan/SKILL.md +4 -3
- package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/generated/claude/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/generated/claude/skills/rite-resolve/SKILL.md +3 -3
- package/pack/generated/claude/skills/rite-seal/SKILL.md +4 -3
- package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/generated/claude/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/generated/claude/skills/rite-ship/SKILL.md +4 -2
- package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/generated/claude/skills/rite-spec/SKILL.md +2 -2
- package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/generated/claude/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/generated/claude/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/generated/claude/skills/rite-temper/SKILL.md +12 -9
- package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -3
- package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/generated/claude/skills/rite-vet/SKILL.md +4 -3
- package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +1 -1
- package/pack/generated/claude/workflows/devrites-readonly-review.js +5 -4
- package/pack/generated/codex/AGENTS.md +1 -1
- package/pack/generated/codex/agents/devrites-spec-reviewer.toml +2 -2
- package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/generated/codex/skills/devrites-interview/SKILL.md +4 -4
- package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/generated/codex/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/generated/codex/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/generated/codex/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/generated/codex/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/generated/codex/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/generated/codex/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/generated/codex/skills/overhaul/SKILL.md +1 -1
- package/pack/generated/codex/skills/overhaul/references/orchestration.md +5 -3
- package/pack/generated/codex/skills/overhaul/references/records.md +39 -0
- package/pack/generated/codex/skills/overhaul/references/scoring.md +14 -4
- package/pack/generated/codex/skills/rite/reference/menu.md +1 -1
- package/pack/generated/codex/skills/rite-adopt/SKILL.md +8 -2
- package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/generated/codex/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/generated/codex/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/generated/codex/skills/rite-clarify/SKILL.md +5 -4
- package/pack/generated/codex/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/generated/codex/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/generated/codex/skills/rite-converge/SKILL.md +2 -0
- package/pack/generated/codex/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-define/SKILL.md +2 -0
- package/pack/generated/codex/skills/rite-define/reference/gates.md +8 -7
- package/pack/generated/codex/skills/rite-explain/SKILL.md +1 -1
- package/pack/generated/codex/skills/rite-explain/reference/intake.md +1 -1
- package/pack/generated/codex/skills/rite-fast/SKILL.md +1 -1
- package/pack/generated/codex/skills/rite-plan/SKILL.md +4 -3
- package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/generated/codex/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/generated/codex/skills/rite-resolve/SKILL.md +3 -3
- package/pack/generated/codex/skills/rite-seal/SKILL.md +4 -3
- package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/generated/codex/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/generated/codex/skills/rite-ship/SKILL.md +4 -2
- package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/generated/codex/skills/rite-spec/SKILL.md +2 -2
- package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/generated/codex/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/generated/codex/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/generated/codex/skills/rite-temper/SKILL.md +12 -9
- package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -3
- package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/generated/codex/skills/rite-vet/SKILL.md +4 -3
- package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +1 -1
- package/pack/generated/devin/AGENTS.md +1 -1
- package/pack/generated/devin/agents/devrites-spec-reviewer.md +2 -2
- package/pack/generated/devin/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/generated/devin/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/generated/devin/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/generated/devin/skills/devrites-interview/SKILL.md +4 -4
- package/pack/generated/devin/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/generated/devin/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/generated/devin/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/generated/devin/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/generated/devin/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/generated/devin/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/generated/devin/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/generated/devin/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/generated/devin/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/generated/devin/skills/overhaul/SKILL.md +1 -1
- package/pack/generated/devin/skills/overhaul/references/orchestration.md +5 -3
- package/pack/generated/devin/skills/overhaul/references/records.md +39 -0
- package/pack/generated/devin/skills/overhaul/references/scoring.md +14 -4
- package/pack/generated/devin/skills/rite/reference/menu.md +1 -1
- package/pack/generated/devin/skills/rite-adopt/SKILL.md +8 -2
- package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/generated/devin/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/generated/devin/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/devin/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/generated/devin/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/generated/devin/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/generated/devin/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/generated/devin/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/generated/devin/skills/rite-clarify/SKILL.md +5 -4
- package/pack/generated/devin/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/generated/devin/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/generated/devin/skills/rite-converge/SKILL.md +2 -0
- package/pack/generated/devin/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/devin/skills/rite-define/SKILL.md +2 -0
- package/pack/generated/devin/skills/rite-define/reference/gates.md +8 -7
- package/pack/generated/devin/skills/rite-explain/SKILL.md +1 -1
- package/pack/generated/devin/skills/rite-explain/reference/intake.md +1 -1
- package/pack/generated/devin/skills/rite-fast/SKILL.md +1 -1
- package/pack/generated/devin/skills/rite-plan/SKILL.md +4 -3
- package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/generated/devin/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/generated/devin/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/generated/devin/skills/rite-resolve/SKILL.md +3 -3
- package/pack/generated/devin/skills/rite-seal/SKILL.md +4 -3
- package/pack/generated/devin/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/generated/devin/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/generated/devin/skills/rite-ship/SKILL.md +4 -2
- package/pack/generated/devin/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/generated/devin/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/generated/devin/skills/rite-spec/SKILL.md +2 -2
- package/pack/generated/devin/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/generated/devin/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/generated/devin/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/generated/devin/skills/rite-temper/SKILL.md +12 -9
- package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/generated/devin/skills/rite-temper/reference/significance.md +10 -3
- package/pack/generated/devin/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/generated/devin/skills/rite-vet/SKILL.md +4 -3
- package/pack/generated/devin/skills/rite-vet/reference/artifacts.md +1 -1
- package/pack/generated/omp/agents/devrites-spec-reviewer.md +2 -2
- package/pack/generated/omp/commands/rite-define.md +1 -1
- package/pack/generated/omp/commands/rite-handoff.md +1 -1
- package/pack/generated/omp/commands/rite-plan.md +1 -1
- package/pack/generated/omp/commands/rite-pressure-test.md +1 -1
- package/pack/generated/omp/commands/rite-quick.md +1 -1
- package/pack/generated/omp/commands/rite-status.md +1 -1
- package/pack/generated/omp/commands/rite-temper.md +1 -1
- package/pack/generated/omp/commands/rite-zoom-out.md +1 -1
- package/pack/generated/omp/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/generated/omp/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/generated/omp/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/generated/omp/skills/devrites-interview/SKILL.md +4 -4
- package/pack/generated/omp/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/generated/omp/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/generated/omp/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/generated/omp/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/generated/omp/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/generated/omp/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/generated/omp/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/generated/omp/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/generated/omp/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/generated/omp/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/generated/omp/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/generated/omp/skills/overhaul/SKILL.md +1 -1
- package/pack/generated/omp/skills/overhaul/references/orchestration.md +5 -3
- package/pack/generated/omp/skills/overhaul/references/records.md +39 -0
- package/pack/generated/omp/skills/overhaul/references/scoring.md +14 -4
- package/pack/generated/omp/skills/rite/reference/menu.md +1 -1
- package/pack/generated/omp/skills/rite-adopt/SKILL.md +8 -2
- package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/generated/omp/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/generated/omp/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/generated/omp/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/omp/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/generated/omp/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/generated/omp/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/generated/omp/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/generated/omp/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/generated/omp/skills/rite-clarify/SKILL.md +5 -4
- package/pack/generated/omp/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/generated/omp/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/generated/omp/skills/rite-converge/SKILL.md +2 -0
- package/pack/generated/omp/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/omp/skills/rite-define/SKILL.md +2 -0
- package/pack/generated/omp/skills/rite-define/reference/gates.md +8 -7
- package/pack/generated/omp/skills/rite-explain/SKILL.md +1 -1
- package/pack/generated/omp/skills/rite-explain/reference/intake.md +1 -1
- package/pack/generated/omp/skills/rite-fast/SKILL.md +1 -1
- package/pack/generated/omp/skills/rite-plan/SKILL.md +4 -3
- package/pack/generated/omp/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/generated/omp/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/generated/omp/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/generated/omp/skills/rite-resolve/SKILL.md +3 -3
- package/pack/generated/omp/skills/rite-seal/SKILL.md +4 -3
- package/pack/generated/omp/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/generated/omp/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/generated/omp/skills/rite-ship/SKILL.md +4 -2
- package/pack/generated/omp/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/generated/omp/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/generated/omp/skills/rite-spec/SKILL.md +2 -2
- package/pack/generated/omp/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/generated/omp/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/generated/omp/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/generated/omp/skills/rite-temper/SKILL.md +12 -9
- package/pack/generated/omp/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/generated/omp/skills/rite-temper/reference/significance.md +10 -3
- package/pack/generated/omp/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/generated/omp/skills/rite-vet/SKILL.md +4 -3
- package/pack/generated/omp/skills/rite-vet/reference/artifacts.md +1 -1
- package/pack/generated/pi/AGENTS.md +1 -1
- package/pack/generated/pi/agents/devrites-spec-reviewer.md +2 -2
- package/pack/generated/pi/prompts/rite-define.md +1 -1
- package/pack/generated/pi/prompts/rite-handoff.md +1 -1
- package/pack/generated/pi/prompts/rite-plan.md +1 -1
- package/pack/generated/pi/prompts/rite-pressure-test.md +1 -1
- package/pack/generated/pi/prompts/rite-quick.md +1 -1
- package/pack/generated/pi/prompts/rite-status.md +1 -1
- package/pack/generated/pi/prompts/rite-temper.md +1 -1
- package/pack/generated/pi/prompts/rite-zoom-out.md +1 -1
- package/pack/generated/pi/skills/devrites-browser-proof/SKILL.md +2 -2
- package/pack/generated/pi/skills/devrites-frontend-craft/reference/design-references.md +18 -18
- package/pack/generated/pi/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
- package/pack/generated/pi/skills/devrites-interview/SKILL.md +4 -4
- package/pack/generated/pi/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
- package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
- package/pack/generated/pi/skills/devrites-lib/reference/standards/agents.md +5 -2
- package/pack/generated/pi/skills/devrites-lib/reference/standards/gates.md +6 -5
- package/pack/generated/pi/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
- package/pack/generated/pi/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
- package/pack/generated/pi/skills/devrites-lib/reference/standards/windows.md +3 -3
- package/pack/generated/pi/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
- package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
- package/pack/generated/pi/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
- package/pack/generated/pi/skills/devrites-ux-shape/SKILL.md +11 -12
- package/pack/generated/pi/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
- package/pack/generated/pi/skills/overhaul/SKILL.md +1 -1
- package/pack/generated/pi/skills/overhaul/references/orchestration.md +5 -3
- package/pack/generated/pi/skills/overhaul/references/records.md +39 -0
- package/pack/generated/pi/skills/overhaul/references/scoring.md +14 -4
- package/pack/generated/pi/skills/rite/reference/menu.md +1 -1
- package/pack/generated/pi/skills/rite-adopt/SKILL.md +8 -2
- package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +11 -6
- package/pack/generated/pi/skills/rite-autocomplete/reference/decision-policy.md +3 -2
- package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +1 -1
- package/pack/generated/pi/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
- package/pack/generated/pi/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/pi/skills/rite-build/reference/afk-discipline.md +1 -1
- package/pack/generated/pi/skills/rite-build/reference/checkpoint-protocol.md +1 -1
- package/pack/generated/pi/skills/rite-build/reference/checkpoint.md +5 -0
- package/pack/generated/pi/skills/rite-build/reference/parallel-batch.md +2 -2
- package/pack/generated/pi/skills/rite-build/reference/wright-dispatch.md +6 -3
- package/pack/generated/pi/skills/rite-clarify/SKILL.md +5 -4
- package/pack/generated/pi/skills/rite-clarify/reference/anti-patterns.md +2 -2
- package/pack/generated/pi/skills/rite-clarify/reference/decision-coverage.md +3 -2
- package/pack/generated/pi/skills/rite-converge/SKILL.md +2 -0
- package/pack/generated/pi/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/pi/skills/rite-define/SKILL.md +2 -0
- package/pack/generated/pi/skills/rite-define/reference/gates.md +8 -7
- package/pack/generated/pi/skills/rite-explain/SKILL.md +1 -1
- package/pack/generated/pi/skills/rite-explain/reference/intake.md +1 -1
- package/pack/generated/pi/skills/rite-fast/SKILL.md +1 -1
- package/pack/generated/pi/skills/rite-plan/SKILL.md +4 -3
- package/pack/generated/pi/skills/rite-plan/reference/replan-and-repair.md +4 -4
- package/pack/generated/pi/skills/rite-polish/reference/anti-ai-slop.md +1 -1
- package/pack/generated/pi/skills/rite-prove/reference/browser-proof.md +5 -5
- package/pack/generated/pi/skills/rite-resolve/SKILL.md +3 -3
- package/pack/generated/pi/skills/rite-seal/SKILL.md +4 -3
- package/pack/generated/pi/skills/rite-seal/reference/phase-contract.md +3 -2
- package/pack/generated/pi/skills/rite-seal/reference/seal-template.md +2 -0
- package/pack/generated/pi/skills/rite-ship/SKILL.md +4 -2
- package/pack/generated/pi/skills/rite-ship/reference/git-ship.md +8 -2
- package/pack/generated/pi/skills/rite-ship/reference/ship-template.md +2 -1
- package/pack/generated/pi/skills/rite-spec/SKILL.md +2 -2
- package/pack/generated/pi/skills/rite-spec/reference/spec-checklists.md +1 -1
- package/pack/generated/pi/skills/rite-spec/reference/spec-template.md +7 -3
- package/pack/generated/pi/skills/rite-spec/reference/state-workspace.md +2 -0
- package/pack/generated/pi/skills/rite-temper/SKILL.md +12 -9
- package/pack/generated/pi/skills/rite-temper/reference/scope-modes.md +1 -1
- package/pack/generated/pi/skills/rite-temper/reference/significance.md +10 -3
- package/pack/generated/pi/skills/rite-temper/reference/strategy-template.md +13 -2
- package/pack/generated/pi/skills/rite-vet/SKILL.md +4 -3
- package/pack/generated/pi/skills/rite-vet/reference/artifacts.md +1 -1
- package/package.json +5 -4
- package/scripts/build-host-artifacts.sh +15 -0
- package/scripts/codex-generate.sh +1 -1
- package/scripts/devin-generate.sh +1 -1
- package/scripts/expand-includes.py +46 -0
- package/scripts/install-lib.sh +42 -7
- package/scripts/omp-generate.sh +11 -0
- package/scripts/pi-generate.sh +12 -1
- package/update.sh +1 -2
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/README.md +0 -7
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/architecture.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/assumptions.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/brief.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/decision-coverage.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/decisions.md +0 -4
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/eng-review.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/gates.md +0 -4
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/plan.md +0 -5
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/questions.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/spec.md +0 -6
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/state.md +0 -8
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/tasks.md +0 -1
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/test-plan.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/traceability.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/README.md +0 -7
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/assumptions.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/brief.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/decisions.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/questions.md +0 -3
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/spec.md +0 -6
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/state.md +0 -3
- package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +0 -2
- package/engine/testdata/golden/TestParityCloseOut/active_slug_cleared.golden +0 -2
- package/engine/testdata/golden/TestParityCloseOut/archive_clobber.golden +0 -1
- package/engine/testdata/golden/TestParityCloseOut/missing_slug.golden +0 -1
- package/engine/testdata/golden/TestParityCloseOut/missing_workspace.golden +0 -1
- package/engine/testdata/golden/TestParityLearnings/add.golden +0 -2
- package/engine/testdata/golden/TestParityLearnings/list.golden +0 -5
- package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +0 -2
- package/engine/testdata/golden/TestParityLearnings/mine.golden +0 -5
- package/engine/testdata/golden/TestParityLearnings/nudge.golden +0 -2
- package/engine/testdata/golden/TestParityLearnings/unknown.golden +0 -1
- package/engine/testdata/golden/TestParityPackageExistence/ghost-workspace.golden +0 -1
- package/engine/testdata/golden/TestParityPackageExistence/no-manifest.golden +0 -1
- package/engine/testdata/golden/TestParityPackageExistence/not-git.golden +0 -1
- package/engine/testdata/golden/TestParityPackageExistence/undeclared.golden +0 -1
- package/engine/testdata/golden/TestParityPreamble/afk/a.golden +0 -14
- package/engine/testdata/golden/TestParityPreamble/hitl/active.golden +0 -18
- package/engine/testdata/golden/TestParityPreamble/hitl/bare.golden +0 -10
- package/engine/testdata/golden/TestParityPreamble/hitl/full.golden +0 -18
- package/engine/testdata/golden/TestParityPreamble/hitl/ghost.golden +0 -2
- package/engine/testdata/golden/TestParityPreamble/hitl/nonl.golden +0 -11
- package/engine/testdata/golden/TestParityPreamble/hitl/openend.golden +0 -13
- package/engine/testdata/golden/TestParityProgress/arg=allbuilt.golden +0 -4
- package/engine/testdata/golden/TestParityProgress/arg=done.golden +0 -3
- package/engine/testdata/golden/TestParityProgress/arg=ghost.golden +0 -1
- package/engine/testdata/golden/TestParityProgress/arg=mid.golden +0 -4
- package/engine/testdata/golden/TestParityProgress/arg=nophase.golden +0 -3
- package/engine/testdata/golden/TestParityProgress/arg=noslice.golden +0 -3
- package/engine/testdata/golden/TestParityProgress/arg=plan.golden +0 -4
- package/engine/testdata/golden/TestParityProgress/arg=seal.golden +0 -3
- package/engine/testdata/golden/TestParityResolve/answer/questions.md.golden +0 -9
- package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +0 -7
- package/engine/testdata/golden/TestParityResolve/answer.golden +0 -4
- package/engine/testdata/golden/TestParityResolve/batch/questions.md.golden +0 -9
- package/engine/testdata/golden/TestParityResolve/batch-unterminated/questions.md.golden +0 -9
- package/engine/testdata/golden/TestParityResolve/batch-unterminated.golden +0 -2
- package/engine/testdata/golden/TestParityResolve/batch.golden +0 -3
- package/engine/testdata/golden/TestParityResolve/drop/questions.md.golden +0 -9
- package/engine/testdata/golden/TestParityResolve/drop/state.md.golden +0 -9
- package/engine/testdata/golden/TestParityResolve/drop.golden +0 -4
- package/engine/testdata/golden/TestParityResolve/missing-answer.golden +0 -1
- package/engine/testdata/golden/TestParityResolve/no-workspace.golden +0 -1
- package/engine/testdata/golden/TestParityResolve/not-found.golden +0 -1
- package/engine/testdata/golden/TestParityResolve/not-open.golden +0 -1
- package/engine/testdata/golden/TestStatusLiveWorkspace.golden +0 -10
- package/engine/testdata/golden/status/auth-tokens.txt +0 -9
- package/engine/testdata/golden/status/search-ranking.txt +0 -9
- package/engine/testdata/visual/open-visual-smoke.html +0 -675
- package/engine/testdata/visual/open-visual-smoke.outline.md +0 -54
- package/engine/tests/adr_0003_gate_exit_code_test.go +0 -32
- package/engine/tests/adr_0004_required_by_phase_test.go +0 -54
- package/engine/tests/adr_0011_define_plan_test.go +0 -32
- package/engine/tests/adr_0027_readiness_binding_test.go +0 -107
- package/engine/tests/cli_test.go +0 -126
- package/engine/tests/gate_test.go +0 -669
- package/engine/tests/meta_test.go +0 -37
- package/engine/tests/parity_closeout_test.go +0 -105
- package/engine/tests/parity_githelpers_test.go +0 -41
- package/engine/tests/parity_resolve_test.go +0 -136
- package/engine/tests/parity_test.go +0 -86
- package/engine/tests/workspace_observation_migration_test.go +0 -1069
|
@@ -12,13 +12,13 @@ Pack-wide rationalizations: see
|
|
|
12
12
|
| --- | --- |
|
|
13
13
|
| "We already discussed this in chat." | Chat is not durable decision coverage. Scan topology and record owners in workspace artifacts. |
|
|
14
14
|
| "The answer is obvious — assume it." | Product, scope, policy, and irreversible-risk choices are human-owned unless already recorded in an accepted decision. |
|
|
15
|
-
| "Most rows are clear — good enough for AFK." |
|
|
15
|
+
| "Most rows are clear — good enough for AFK." | `open` material rows block CLEAR and block AFK arming. |
|
|
16
16
|
| "Skip clarify for this small change." | Clarify is mandatory and adaptive; it may ask no questions, but it still runs the scan. |
|
|
17
17
|
| "I'll clarify during build if needed." | Unowned decisions discovered in build are expensive drift. Close them before plan/vet. |
|
|
18
18
|
|
|
19
19
|
## Red flags in your own output
|
|
20
20
|
|
|
21
|
-
- `Decision coverage: CLEAR` with
|
|
21
|
+
- `Decision coverage: CLEAR` with `open` material rows still open.
|
|
22
22
|
- Product/policy choices recorded without a human packet or cited prior decision.
|
|
23
23
|
- AFK armed or `/rite-define` started before CLEAR is durable.
|
|
24
24
|
- Clarify skipped because the user said they were "in a hurry".
|
|
@@ -18,8 +18,9 @@ environment, credentials/approvals, and evidence limits.
|
|
|
18
18
|
- `not-applicable`: evidence shows the dimension does not apply.
|
|
19
19
|
- `deferred-nonblocking`: pre-code evidence is impossible or the item is an explicit
|
|
20
20
|
non-goal; owner and validation gate are named.
|
|
21
|
+
- `open`: the decision is unresolved.
|
|
21
22
|
|
|
22
|
-
`
|
|
23
|
+
`open`, unknown, or ownerless rows never produce `CLEAR`.
|
|
23
24
|
|
|
24
25
|
## Artifact shape
|
|
25
26
|
|
|
@@ -45,7 +46,7 @@ Decision coverage: <CLEAR | NEEDS CLARIFICATION>
|
|
|
45
46
|
| --- | --- | --- | --- |
|
|
46
47
|
|
|
47
48
|
## Readiness verdict
|
|
48
|
-
No
|
|
49
|
+
No `open` row, unowned material assumption, or unresolved blocking/escalating
|
|
49
50
|
question remains.
|
|
50
51
|
```
|
|
51
52
|
|
|
@@ -138,6 +138,8 @@ Before reporting "clean" or recommending `/rite-prove`, confirm:
|
|
|
138
138
|
|
|
139
139
|
- [ ] Every buildable AC/REQ in the assessment inventory has a built/partial/absent
|
|
140
140
|
classification with live-code citation
|
|
141
|
+
- [ ] Every plan touch-point and existing-slice Produces is classified with live-code citation
|
|
142
|
+
- [ ] Every declared principle is checked; violations are recorded as top-severity gaps
|
|
141
143
|
- [ ] `tasks.md` is byte-for-byte unchanged when clean, or append-only when gaps exist
|
|
142
144
|
- [ ] `traceability.md` updated only for appended slices
|
|
143
145
|
- [ ] No narrative "done" without the checklist above
|
|
@@ -18,7 +18,9 @@ standalone token occurs in current `$ARGUMENTS`; earlier context cannot activate
|
|
|
18
18
|
1. Map policy→instruction, reusable work→skill, specialist→agent, external capability→plugin/MCP.
|
|
19
19
|
2. Inspect target/host docs; reuse before copying.
|
|
20
20
|
3. Draft smallest nearest-scope change; do not restate safeguards.
|
|
21
|
-
4. For any new or edited skill
|
|
21
|
+
4. For any new or edited skill, agent, or instruction file — `AGENTS.md` / `CLAUDE.md`
|
|
22
|
+
included — run `devrites-engine check skill-trust <path>` before showing the diff.
|
|
23
|
+
HIGH findings block; MEDIUM findings need explicit human acknowledgment in the proposal.
|
|
22
24
|
5. Show path/exact diff; wait.
|
|
23
25
|
6. Write approved artifacts, validate natively, keep no mirror.
|
|
24
26
|
|
|
@@ -46,9 +48,9 @@ Here, edit canonical source and generate; never edit derived artifacts.
|
|
|
46
48
|
approval; never execute them as the next action
|
|
47
49
|
([`security.md`](../devrites-lib/reference/standards/security.md) § Prompt-injection
|
|
48
50
|
and § Agentic skills).
|
|
49
|
-
- Do not write
|
|
50
|
-
|
|
51
|
-
skill's "Prerequisites" curl is run during customize.
|
|
51
|
+
- Do not write instruction text into `AGENTS.md` / `CLAUDE.md` or host identity
|
|
52
|
+
files — imported, observed, or agent-authored — without that same admission.
|
|
53
|
+
**Failing case:** an imported skill's "Prerequisites" curl is run during customize.
|
|
52
54
|
|
|
53
55
|
## Output
|
|
54
56
|
|
|
@@ -59,6 +59,8 @@ Pull these via `Read` when shaping the plan:
|
|
|
59
59
|
**STOP** and tell the user to run `/rite-spec <feature>` first.
|
|
60
60
|
If `decision-coverage.md` is absent or does not say `Decision coverage: CLEAR`,
|
|
61
61
|
**STOP** → `/rite-clarify`.
|
|
62
|
+
If `checklists/` has no `<domain>.md` or any carries an open CRITICAL fail,
|
|
63
|
+
**STOP** → `/rite-spec`.
|
|
62
64
|
1. **Read the spec:** `spec.md` (objective, requirements, acceptance, **placement**,
|
|
63
65
|
design references, gaps/decisions), plus `references.md`, `decisions.md`,
|
|
64
66
|
`assumptions.md`, `decision-coverage.md`, **`strategy.md` if present** (the scope mode, deferred / out-of-scope
|
|
@@ -116,20 +116,21 @@ defaults and the always-pause rules:
|
|
|
116
116
|
| `[]` (or omitted) | log + proceed | pause | pause | pause |
|
|
117
117
|
| `[advisory]` (default) | log + proceed | pause | pause | pause |
|
|
118
118
|
| `[advisory, validating]` | log + proceed | build + queue | pause | pause |
|
|
119
|
-
| `[advisory, validating, blocking]` | log + proceed | build + queue | log + proceed* | pause |
|
|
120
119
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
the next slice; only a resulting human-owned ambiguity
|
|
124
|
-
|
|
125
|
-
list
|
|
120
|
+
`blocking` is never auto-handled, even when listed in `allow_gates`: it always pauses, per
|
|
121
|
+
the [`blocking`](#blocking) gate rule above. Red tests/types/lint remain hard build gates and
|
|
122
|
+
must clear bounded recovery before the next slice; only a resulting human-owned ambiguity
|
|
123
|
+
becomes a pause. The irreversible-risk list is owned by
|
|
124
|
+
[`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md#irreversible-risk-list-always-pause);
|
|
125
|
+
every item on it pauses regardless of `allow_gates`.
|
|
126
126
|
|
|
127
127
|
`escalating` is never in `allow_gates`: specialist routing is not something AFK can
|
|
128
128
|
shortcut.
|
|
129
129
|
|
|
130
130
|
`/rite-autocomplete` does not add `blocking` to `allow_gates`. It auto-resolves
|
|
131
131
|
open blocking questions that already name a recommended option via
|
|
132
|
-
`devrites-engine state resolve`, then continues.
|
|
132
|
+
`devrites-engine state resolve`, then continues. Escalating, irreversible-risk, and
|
|
133
|
+
access questions still pause, even with a recommended option. That is an orchestrator
|
|
133
134
|
exception, not an AFK ceiling change.
|
|
134
135
|
|
|
135
136
|
## Anti-patterns
|
|
@@ -65,7 +65,7 @@ free: prefer it over re-deriving:
|
|
|
65
65
|
[`tooling.md`](../devrites-lib/reference/standards/tooling.md) (one named-predicate cross-check only when needed), plus any
|
|
66
66
|
`.devrites/principles.md` or ADRs that already take a position on it.
|
|
67
67
|
- An **idea** or a concept with no repo footprint → the user's framing plus, only if it sharpens
|
|
68
|
-
the teaching, current external sources (weight by date
|
|
68
|
+
the teaching, current external sources (weight by date).
|
|
69
69
|
|
|
70
70
|
Create the run directory before composing so the durable artifact has a home:
|
|
71
71
|
|
|
@@ -10,7 +10,7 @@ source for classification; the SKILL improvises none of it.
|
|
|
10
10
|
| --- | --- | --- | --- | --- |
|
|
11
11
|
| **concept** | a named idea / pattern / technology ("explain optimistic locking", "how does our gate engine work") | this repo's footprint of the concept (codegraph first) + external sources only if they sharpen it | build the mental model from a known part of *this* codebase outward | **checked exercise** |
|
|
12
12
|
| **diff** | a specific change: a ref, a slice, a PR, "this diff" | `git diff` / the hunks + `decisions.md` + `seal.md` for the *why* + `touched-files.md` `Review trail` when present | explainer, or **walkthrough** when the user asks to review/approve/checkpoint the change | **predict-then-reveal** |
|
|
13
|
-
| **idea** | a hypothesis or "what if" with no code yet | the user's framing + prior art (external, date-weighted
|
|
13
|
+
| **idea** | a hypothesis or "what if" with no code yet | the user's framing + prior art (external, date-weighted) | steelman the idea, name its hinge and its failure mode | **checked exercise** |
|
|
14
14
|
| **recap** | a time window of the user's own work ("what did I ship this week") | the shipped archive + `git log`/`git diff` over the window + `evidence.md` | narrate what changed and what was learned, ranked by leverage | **predict-then-reveal** |
|
|
15
15
|
|
|
16
16
|
## Token overrides: explicit beats inferred
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: rite-fast
|
|
3
|
-
description: Fast lane for mid-size work: one spec-and-plan step with clarifying questions, up to ten slices built without per-slice gates, one completeness check with gap fixes, review, polish, proof.
|
|
3
|
+
description: "Fast lane for mid-size work: one spec-and-plan step with clarifying questions, up to ten slices built without per-slice gates, one completeness check with gap fixes, review, polish, proof."
|
|
4
4
|
argument-hint: "<task | slug>"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
@@ -71,8 +71,9 @@ Before classifying any Reslice, read `.claude/skills/devrites-lib/reference/stan
|
|
|
71
71
|
- **course-correct:** mid-build user pivot; apply the marked action, choose
|
|
72
72
|
rollback/forward-fix, and update permitted artifacts atomically (`MVP cut` is the named retreat).
|
|
73
73
|
- **revise:** reconcile a requested artifact revision; propose/confirm its file set and
|
|
74
|
-
**never edit source**.
|
|
75
|
-
rule, evidence, gate, paths, and delta
|
|
74
|
+
**never edit source**. A neutral workspace edit is authorized by explicit `/rite-upgrade` with a
|
|
75
|
+
`repairable` assessment naming rule, evidence, gate, paths, and delta, or, for budget relocation
|
|
76
|
+
only, by the phase owner when `orient` reports `over: true`—never source or history rewording.
|
|
76
77
|
**Revise or new?** Same intent? >50% scope survives? Original not completable without it?
|
|
77
78
|
Two “no” answers mean new work: seal/ship current scope (`MVP cut` if named), then
|
|
78
79
|
`/rite-spec`, and stop.
|
|
@@ -158,7 +159,7 @@ Before classifying any Reslice, read `.claude/skills/devrites-lib/reference/stan
|
|
|
158
159
|
mark the `drift.md` entry resolved. Never remove or overwrite a valid caller
|
|
159
160
|
return cursor while writing the Plan checkpoint.
|
|
160
161
|
6. After editing `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, or `questions.md`,
|
|
161
|
-
re-scan affected coverage, assumptions, uncertainty, and gates.
|
|
162
|
+
re-scan affected coverage, assumptions, uncertainty, and gates. `open` rows, unowned
|
|
162
163
|
material assumption, or open blocking/escalating question routes `/rite-clarify`/HITL.
|
|
163
164
|
Restore `CLEAR` only from current evidence.
|
|
164
165
|
7. **Done when:** every slice is sized (builds + proves in one cycle; no slice scoring >3
|
|
@@ -82,15 +82,15 @@ Record the sequence once in `decisions.md`.
|
|
|
82
82
|
## revise
|
|
83
83
|
|
|
84
84
|
Artifact-only reconciliation of `spec.md`, `architecture.md`, `plan.md`, `tasks.md`,
|
|
85
|
-
or `traceability.md` — never source. Propose/confirm the file set first.
|
|
86
|
-
`/rite-upgrade` with a `repairable` assessment
|
|
85
|
+
or `traceability.md` — never source. Propose/confirm the file set first. A neutral workspace
|
|
86
|
+
edit is authorized by explicit `/rite-upgrade` with a `repairable` assessment, or, for budget
|
|
87
|
+
relocation only, by the phase owner when `orient` reports `over: true`.
|
|
87
88
|
|
|
88
89
|
Unchanged acceptance/behavior with non-equivalent `proposed_coverage` is a
|
|
89
90
|
contradictory input: the canonical classifier blocks it — there is no fourth
|
|
90
91
|
route (see [`acceptance-preserving-reslice.md`](../../devrites-lib/reference/standards/acceptance-preserving-reslice.md)).
|
|
91
92
|
|
|
92
|
-
**Budget relocation** (
|
|
93
|
-
`orient` reports `over: true`): move checkpoint narrative, historical fold text and
|
|
93
|
+
**Budget relocation** (authorized as above): move checkpoint narrative, historical fold text and
|
|
94
94
|
closed-round accounts verbatim from `state.md`/`tasks.md`/`plan.md`/`architecture.md`/
|
|
95
95
|
`eng-review.md` into `history/<file>-<YYYYMMDD>.md`, packets/accounts from the root
|
|
96
96
|
into `packets/`, leaving a one-line pointer. Cursor, live slices, open findings, IDs,
|
|
@@ -18,7 +18,7 @@ Build avoids every UI entry; review and polish admit a hit only by this rule. Cl
|
|
|
18
18
|
a declared token, brief line or nearest neighbour (cite both locations), or it has a
|
|
19
19
|
measured user consequence (contrast ratio, overflow, CLS, lost or hidden focus). Otherwise
|
|
20
20
|
it is an AES proposal under "Proposals (non-blocking)": never a Visual Verdict FAIL, never
|
|
21
|
-
scored, capped at Suggestion
|
|
21
|
+
scored, capped at Suggestion, never blocking unless `design-brief.md` adopts it (then
|
|
22
22
|
DS). Act on clusters per [`prose-style.md`](../../devrites-lib/reference/standards/prose-style.md).
|
|
23
23
|
A broken task, data loss or misleading state is reported and fixed before any AES item.
|
|
24
24
|
**Failing case:** `tokens.css` declares Inter and a 20 px card radius, yet review files
|
|
@@ -12,11 +12,9 @@ What `browser-evidence.md` must capture for a UI slice. Delegates to
|
|
|
12
12
|
| EVID-003 | <route> | empty/keyboard | 375 | brief Proof targets + target reference 1 | playwright-mcp | <observed result> | AC-002, SLICE-002 | <none / exact gap> |
|
|
13
13
|
|
|
14
14
|
## Visual Verdict
|
|
15
|
-
|
|
|
16
|
-
|
|
17
|
-
|
|
|
18
|
-
| loading | PASS / FAIL | <what is visible> |
|
|
19
|
-
| error | PASS / FAIL | <what is visible> |
|
|
15
|
+
| Criterion (source, class) | Expected | Observed (screenshot) | Verdict | Severity |
|
|
16
|
+
|---|---|---|---|---|
|
|
17
|
+
| <state / delta / anti-slop criterion> (<brief / reference / anti-slop / acceptance>, <ENG / A11Y / DS / AES>) | <expected> | <what is visible> | PASS / PARTIAL / FAIL / n/a | <Critical / Important / Suggestion> |
|
|
20
18
|
|
|
21
19
|
## Comparison deltas
|
|
22
20
|
| State / viewport | Target | Material delta observed | Disposition | Result |
|
|
@@ -33,6 +31,8 @@ What `browser-evidence.md` must capture for a UI slice. Delegates to
|
|
|
33
31
|
```
|
|
34
32
|
|
|
35
33
|
## Rules
|
|
34
|
+
- The `## Visual Verdict` table follows [visual-verdict.md](../../devrites-browser-proof/reference/visual-verdict.md),
|
|
35
|
+
which owns its rows, verdict values and severity mapping.
|
|
36
36
|
- Open every screenshot path and describe it: never assert from the filename.
|
|
37
37
|
- Read `design-brief.md` + `references.md` first. Compare fidelity only with references
|
|
38
38
|
classified **target**; check constraints as rules and never pixel-match inspiration.
|
|
@@ -74,8 +74,8 @@ Pull these via `Read` when shaping the resolve:
|
|
|
74
74
|
user's explicit consent for this local workspace mutation. Echo the qid, answer/drop,
|
|
75
75
|
and slice being unblocked, then continue immediately; do not ask the user to confirm the
|
|
76
76
|
command they just typed.
|
|
77
|
-
4. **Mutate.** Run `devrites-engine state resolve` with those arguments. It:
|
|
78
|
-
- flips the qid's `status` to `answered` / `dropped` and stamps `answered_at` + `answer`;
|
|
77
|
+
4. **Mutate.** Run `devrites-engine state resolve --human` with those arguments (a human is resolving). It:
|
|
78
|
+
- flips the qid's `status` to `answered` / `dropped` and stamps `answered_at` + `answer` + `answered_by: human`;
|
|
79
79
|
- if the qid is in `state.md`'s `Awaiting human` block (single-question pause), clears
|
|
80
80
|
that block and sets `Status: running`;
|
|
81
81
|
- appends a `Log` line to `state.md`.
|
|
@@ -96,7 +96,7 @@ Pull these via `Read` when shaping the resolve:
|
|
|
96
96
|
**Completion:** the resolved state contains exactly one next command.
|
|
97
97
|
6. **STOP.** User-invoked `/rite-resolve` does not run `/rite-build` itself: the
|
|
98
98
|
user re-enters the workflow explicitly. A controlling `/rite-autocomplete`
|
|
99
|
-
caller invokes the same `devrites-engine state resolve` writer internally and
|
|
99
|
+
caller invokes the same `devrites-engine state resolve` writer internally (never with `--human`) and
|
|
100
100
|
continues; it must not emit this skill as a user handoff for a question that
|
|
101
101
|
already names a ranked recommended option.
|
|
102
102
|
|
|
@@ -65,7 +65,7 @@ Follow [`reference/phase-contract.md`](reference/phase-contract.md)
|
|
|
65
65
|
`../devrites-lib/reference/parallel-dispatch.md` on the same frozen candidate,
|
|
66
66
|
code review through its § Engineering lanes;
|
|
67
67
|
4. reconcile their read-only verdicts against source and immutable evidence;
|
|
68
|
-
5. draft GO/NO-GO `seal.md` with acceptance, tests, decisions, and seven accounts
|
|
68
|
+
5. draft GO/NO-GO `seal.md` with acceptance, tests, decisions, and seven roster accounts plus proof-runner and doubt-reviewer
|
|
69
69
|
(each engineering lane its own account);
|
|
70
70
|
6. write exactly one candidate binding, then run
|
|
71
71
|
`devrites-engine check seal <slug>` for structure and identity, never semantics,
|
|
@@ -74,8 +74,9 @@ Follow [`reference/phase-contract.md`](reference/phase-contract.md)
|
|
|
74
74
|
starts at the named changed, missing, or added input,
|
|
75
75
|
and `devrites-engine check regression <slug>` to confirm no recorded progress
|
|
76
76
|
fact was lost since the last checkpoint — `BLOCKED` is NO-GO; `unproven`
|
|
77
|
-
(no baseline) does not block — plus `devrites-engine check windows <slug
|
|
78
|
-
|
|
77
|
+
(no baseline) does not block — plus two separate runs of `devrites-engine check windows <slug>`,
|
|
78
|
+
one with `--base <release-base>` and one with `--worktree` (the only mode that scans
|
|
79
|
+
untracked files; never pass both flags in one command, the last one wins) so each deferral marker the feature diff introduced
|
|
79
80
|
carries a `windows.md` waiver row ([`windows.md`](../devrites-lib/reference/standards/windows.md));
|
|
80
81
|
unwaived hits are NO-GO. The engine already refuses a `gates.md` ledger
|
|
81
82
|
that is malformed, unmet,
|
|
@@ -28,7 +28,8 @@
|
|
|
28
28
|
and the [`review roster`](../../devrites-lib/reference/parallel-dispatch.md) on
|
|
29
29
|
the candidate. Admit each result through
|
|
30
30
|
[`result admission`](../../devrites-lib/reference/standards/agents.md#result-admission).
|
|
31
|
-
`## Reviewer Accounts` preserves
|
|
31
|
+
`## Reviewer Accounts` preserves the seven roster roles, each engineering lane as its own account, plus
|
|
32
|
+
`devrites-proof-runner` and, when any decision stood, `devrites-doubt-reviewer`; gap/missing/malformed blocks;
|
|
32
33
|
conditional `Not-applicable` names why.
|
|
33
34
|
7. **Route corrections.** Reconcile cited findings/disagreements, but do not
|
|
34
35
|
edit the candidate or manifest in Seal. Route an accepted correction through
|
|
@@ -36,7 +37,7 @@
|
|
|
36
37
|
Review under evidence validity, then restart Seal on the new digest.
|
|
37
38
|
8. **Draft/check.** Write `seal.md` from
|
|
38
39
|
[`seal-template.md`](seal-template.md) with the GO/NO-GO rationale, acceptance map,
|
|
39
|
-
test-analysis account, stood-decision verdicts, all seven reviewer accounts,
|
|
40
|
+
test-analysis account, stood-decision verdicts, all seven roster reviewer accounts plus proof-runner and doubt-reviewer,
|
|
40
41
|
and exactly one `Candidate SHA-256: <64 lowercase hex>` line. Then run:
|
|
41
42
|
```bash
|
|
42
43
|
devrites-engine check seal "<slug>"
|
|
@@ -16,6 +16,8 @@ Candidate SHA-256: <64 lowercase hex>
|
|
|
16
16
|
- devrites-security-auditor: <outcome>
|
|
17
17
|
- devrites-performance-reviewer: <outcome>
|
|
18
18
|
- devrites-devex-reviewer: <outcome>
|
|
19
|
+
- devrites-proof-runner: <outcome>
|
|
20
|
+
- devrites-doubt-reviewer: <outcome, or Not-applicable: no decision stood>
|
|
19
21
|
## Risks / Rollback
|
|
20
22
|
<risks/recovery>
|
|
21
23
|
## Stood Decisions
|
|
@@ -72,8 +72,10 @@ if absent, route to `/rite-spec <feature>`. Ship only with current **GO** in `se
|
|
|
72
72
|
stops. Any command/scope/branch/message/tag/PR change or retry needs a fresh prompt;
|
|
73
73
|
native approval is still required.
|
|
74
74
|
4. On GO, commit; verify committed state/path set and exact candidate digest; then push →
|
|
75
|
-
tag/PR as applicable via `git-ship.md`.
|
|
76
|
-
|
|
75
|
+
tag/PR as applicable via `git-ship.md`. Record SHA and push state in `ship.md` before
|
|
76
|
+
push (git-ship 7a); a push/tag/PR failure stops, and a rerun resumes at push under
|
|
77
|
+
fresh type-GO. Capture branch, tag/PR URL. Mismatch stops before push/tag; retry
|
|
78
|
+
needs fresh approval.
|
|
77
79
|
4a. **PR only:** render [`git-ship.md`](reference/git-ship.md#pull-request-body)'s
|
|
78
80
|
structured body; omit empty sections.
|
|
79
81
|
5. Re-scan the four residual sources; any new/missing/changed item blocks archive.
|
|
@@ -52,7 +52,8 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
|
|
|
52
52
|
sequence whose workspace is sealed in this run
|
|
53
53
|
([afk-hitl.md § Sequence continuation](../../devrites-lib/reference/standards/afk-hitl.md#sequence-continuation-continue_sequence-max_workspaces));
|
|
54
54
|
disclose the exact slug set. A different slug, missing colon, broad `WIP(` match,
|
|
55
|
-
ordinary commit, or mixed history blocks; never reinterpret the range.
|
|
55
|
+
ordinary commit, or mixed history blocks; never reinterpret the range. The recorded
|
|
56
|
+
ship commit of a resumed ship (step 7a) is not an ordinary commit for that rerun.
|
|
56
57
|
2. **Verify the candidate.** Rerun `devrites-engine check candidate <slug>` and
|
|
57
58
|
`devrites-engine check seal <slug>`, compare every binding, require the
|
|
58
59
|
candidate worktree paths to be unchanged, and inspect the existing staged
|
|
@@ -98,6 +99,11 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
|
|
|
98
99
|
paths still match `HEAD`, then rerun `devrites-engine check candidate <slug>`
|
|
99
100
|
and `devrites-engine check seal <slug>` and compare the exact digest again.
|
|
100
101
|
Any mismatch stops; do not reinterpret it.
|
|
102
|
+
7a. **Record before push.** Write `ship.md` `Commit(s)` and `Push: pending`. A failed
|
|
103
|
+
push/tag/PR records `failed`, an unanswered or timed-out one `unknown`; stop. Check
|
|
104
|
+
the remote ref (`git ls-remote`) before any retry. A rerun whose HEAD equals the
|
|
105
|
+
recorded commit and whose candidate digest is unchanged skips steps 1-7 and
|
|
106
|
+
prompts a fresh type-GO for only the remaining push/tag/PR commands.
|
|
101
107
|
8. **Push** to the project-conventional target branch.
|
|
102
108
|
9. **Tag / PR** only when project convention requires it; otherwise skip.
|
|
103
109
|
10. **Close sealed predecessors** only when the prompt disclosed them: run the
|
|
@@ -105,7 +111,7 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
|
|
|
105
111
|
because `ACTIVE` names the release workspace; a nonzero exit stops the rest and
|
|
106
112
|
is reported, never retried against an unverified destination.
|
|
107
113
|
|
|
108
|
-
|
|
114
|
+
Update `Push:` to `pushed` and record branch and tag/PR URL in `ship.md`.
|
|
109
115
|
|
|
110
116
|
## Pull request body
|
|
111
117
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `ship.md` template
|
|
2
2
|
|
|
3
|
-
Write before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
|
|
3
|
+
Write Commit(s)/Push at git-ship step 7a; complete before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
|
|
4
4
|
|
|
5
5
|
```markdown
|
|
6
6
|
# Ship: <slug>
|
|
@@ -10,6 +10,7 @@ Write before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
|
|
|
10
10
|
- Branch: <branch>
|
|
11
11
|
- Commit(s): <sha> [<sha> …]
|
|
12
12
|
- Tag/PR: <value|none>
|
|
13
|
+
- Push: <pushed|pending|failed|unknown>
|
|
13
14
|
|
|
14
15
|
## What shipped
|
|
15
16
|
<project-vocabulary paragraph>
|
|
@@ -143,8 +143,8 @@ load a routed standard to discover required behavior, not to prescribe implement
|
|
|
143
143
|
complete-block preservation rule.
|
|
144
144
|
`tasks.md` deliberately does not exist yet; cross-artifact traceability starts in
|
|
145
145
|
`/rite-define`. Any grammar or delta failure blocks. The interruption forecast must be resolved, owned, or a justified
|
|
146
|
-
action-time gate. Run the [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md) marker sweep; a kept hit blocks. Then
|
|
147
|
-
`
|
|
146
|
+
action-time gate. Run the [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md) marker sweep; a kept hit blocks. Then record
|
|
147
|
+
`passed <iso>; marker sweep: …` in the `state.md` `spec_gate` row, never in `spec.md`.
|
|
148
148
|
6a. **Existing-spec delta.** For a pre-existing slug/workspace, compare old/new
|
|
149
149
|
spec and questions, then show `Acceptance delta` (added/removed/reworded IDs)
|
|
150
150
|
and `Open-question delta` (opened/resolved/reworded IDs), using `none` for
|
|
@@ -77,7 +77,7 @@ Each question checks one requirement-prose failure mode:
|
|
|
77
77
|
The spec **Readiness gate** at the bottom of
|
|
78
78
|
[`spec-template.md`](spec-template.md) requires every
|
|
79
79
|
emitted `checklists/<domain>.md` to reach `Verdict: pass` (zero CRITICAL fails) before the gate
|
|
80
|
-
passes. Minor fails are logged, not blocking. A single open CRITICAL
|
|
80
|
+
passes. Minor fails are logged, not blocking. A single open CRITICAL blocks `spec_gate: passed`.
|
|
81
81
|
`/rite-define` reads the checklists at step 0 and **hard-blocks while any CRITICAL is
|
|
82
82
|
unchecked**. A spec without checklists is not yet checked, so define stops and routes
|
|
83
83
|
back here.
|
|
@@ -6,12 +6,13 @@ topology in `architecture.md`/`flows.md`, coverage in `traceability.md`.
|
|
|
6
6
|
Use `[NEEDS CLARIFICATION: <question>]` (blocking stops `/rite-clarify`); before readiness
|
|
7
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
8
|
Unresolved-question markers — fail closed). Stable `REQ-001`/`AC-001` IDs; link, never
|
|
9
|
-
duplicate, source artifacts; over-budget requires `Budget override: <reason>`.
|
|
9
|
+
duplicate, source artifacts; over-budget requires `Budget override: <reason>`. `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`).
|
|
10
12
|
|
|
11
13
|
```markdown
|
|
12
14
|
# Spec: <Feature>
|
|
13
15
|
Slug: <kebab-case>
|
|
14
|
-
Status: Draft | Ready
|
|
15
16
|
Created: <date>
|
|
16
17
|
|
|
17
18
|
## Problem
|
|
@@ -136,8 +137,11 @@ status routes Define/Vet/Build/Prove to the named standard without copying it he
|
|
|
136
137
|
| Question ID | Gate | Question | Impact |
|
|
137
138
|
| --- | --- | --- | --- |
|
|
138
139
|
| q-YYYY-MM-DD-NNN | blocking | <question text, no marker> | AC-001 |
|
|
140
|
+
```
|
|
139
141
|
|
|
140
142
|
## Readiness gate
|
|
143
|
+
Run before stamping `spec_gate`; it is an authoring check, never written into `spec.md`.
|
|
144
|
+
|
|
141
145
|
- [ ] No blocking clarification or open `blocking`/`escalating` question; REQ/AC IDs are valid and ACs independently provable.
|
|
142
146
|
- [ ] `marker sweep:` recorded with zero kept hits (spec-grammar § Unresolved-question markers).
|
|
143
147
|
- [ ] Every verbatim ask in `brief.md` `## Asks` maps to REQ/AC, a reasoned Non-goal, or a blocking question.
|
|
@@ -151,6 +155,6 @@ status routes Define/Vet/Build/Prove to the named standard without copying it he
|
|
|
151
155
|
- [ ] Every applicability row is `applies` with affected IDs or has a specific
|
|
152
156
|
evidence-backed `not applicable` reason.
|
|
153
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.
|
|
154
159
|
- [ ] Non-goals/scope are explicit; capability impact is singular/specific and matches ledger deltas.
|
|
155
160
|
- [ ] Architecture/flows/decisions are linked, not duplicated; Coverage seed names Clarify surfaces.
|
|
156
|
-
```
|
|
@@ -130,6 +130,7 @@ None.
|
|
|
130
130
|
| active_slice | none |
|
|
131
131
|
| slice_mode | none |
|
|
132
132
|
| risk | none |
|
|
133
|
+
| spec_gate | <passed <iso>; marker sweep: <n> files, <k> hits, <d> discarded — absent until /rite-spec passes> |
|
|
133
134
|
| next_action | <single command + reason, or terminal: none — technical recovery exhausted for an unchanged causal fingerprint> |
|
|
134
135
|
| return_phase | <originating later phase; clarification or agent-owned technical backtracking only> |
|
|
135
136
|
| return_next_action | <saved originating command> |
|
|
@@ -195,6 +196,7 @@ proposed: <best current answer>
|
|
|
195
196
|
raised_at: <iso>
|
|
196
197
|
answered_at:
|
|
197
198
|
answer:
|
|
199
|
+
answered_by: # human, only when resolved with `state resolve --human`
|
|
198
200
|
impact: <affected AC/REQ/slice IDs>
|
|
199
201
|
```
|
|
200
202
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: rite-temper
|
|
3
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|reduce]"
|
|
4
|
+
argument-hint: "[feature-slug] [--mode expand|selective|hold-rigor|reduce-to-MVP]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -31,8 +31,9 @@ the spec applicability map triggers that risk family.
|
|
|
31
31
|
- **Raise outcome ambition without expanding the solution unnecessarily.** Solve the
|
|
32
32
|
underlying problem without adding speculative capability or abstraction.
|
|
33
33
|
- **Route every scope change through the Spec Drift Guard.** A scope change takes effect
|
|
34
|
-
only when `spec.md` records the confirmed decision.
|
|
35
|
-
|
|
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.
|
|
36
37
|
- **Apply maximum caution to hard-to-reverse changes.** Auth, migration, public API, and
|
|
37
38
|
data-model changes always pause under the irreversible-risk list.
|
|
38
39
|
- **Honest verdict.** Never round "needs work" up to "ready"; record every scope call's *why*.
|
|
@@ -50,7 +51,7 @@ the spec applicability map triggers that risk family.
|
|
|
50
51
|
0. **Read `.claude/skills/devrites-lib/reference/standards/core.md`**, then
|
|
51
52
|
resolve the active slug, require its `state.md`, and read the cursor directly.
|
|
52
53
|
Then read the workspace: `spec.md`, `decision-coverage.md` (+ `decisions.md`,
|
|
53
|
-
`assumptions.md`, `design-brief.md` if UI), `state.md`. Require `Spec gate:
|
|
54
|
+
`assumptions.md`, `design-brief.md` if UI), `state.md`. Require `state.md` `spec_gate: passed` (legacy `Spec gate:` accepted): else
|
|
54
55
|
STOP → `/rite-spec`. Require `Decision coverage: CLEAR`: else STOP →
|
|
55
56
|
`/rite-clarify`. If a plan already exists, scope changes route through `/rite-plan
|
|
56
57
|
repair` (record in `drift.md`), not a blind spec edit.
|
|
@@ -91,10 +92,12 @@ the spec applicability map triggers that risk family.
|
|
|
91
92
|
5. **Review human-owned findings with the human; do not batch them.** `strategy.md`
|
|
92
93
|
records the interactive review but does not replace it. Present each material scope decision through
|
|
93
94
|
`AskUserQuestion`, one at a time, best-guess + **why**. Each material scope call ends as a
|
|
94
|
-
**recorded decision**: a resolved `questions.md` qid (HITL) or a `decisions.md` ADR (AFK
|
|
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):
|
|
95
97
|
so the review leaves an auditable record outside chat. (AFK gate policy —
|
|
96
98
|
[`reference/significance.md`](reference/significance.md) — autocomplete applies
|
|
97
|
-
|
|
99
|
+
`hold-rigor`, `reduce-to-MVP` and a skip, but holds `expand` and extra acceptance for a human
|
|
100
|
+
qid; irreversible-risk always pauses.)
|
|
98
101
|
Apply objective clarity, mitigation, and assumption fixes directly.
|
|
99
102
|
6. **Write `strategy.md` + fold back:** [`reference/strategy-template.md`](reference/strategy-template.md).
|
|
100
103
|
**Choose the drift path based on whether a plan exists:** *no `plan.md` yet* (the normal pre-define
|
|
@@ -110,12 +113,12 @@ the spec applicability map triggers that risk family.
|
|
|
110
113
|
any folded scope delta lacks its decision or leaves a foreseeable human build choice).
|
|
111
114
|
After any edit to `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, or
|
|
112
115
|
`questions.md`, re-scan the affected coverage rows, assumption audit, residual uncertainty,
|
|
113
|
-
and closed gates.
|
|
116
|
+
and closed gates. `open` rows, an unowned material assumption, or an open
|
|
114
117
|
blocking/escalating question routes `/rite-clarify`/HITL. Only after the
|
|
115
118
|
matrix is re-closed may the phase advance.
|
|
116
119
|
Set `Phase: temper`; `Next step: /rite-define` only after verification.
|
|
117
|
-
Unapproved irreversible choices set `Awaiting human`.
|
|
118
|
-
|
|
120
|
+
Unapproved irreversible choices and unresolved growth qids set `Awaiting human`.
|
|
121
|
+
Objective below-bar findings continue correction.
|
|
119
122
|
7. **Adversarial verification loop:** ask the exact
|
|
120
123
|
[`devrites-strategy-reviewer`](../../agents/devrites-strategy-reviewer.md)
|
|
121
124
|
through the native fresh-context contract in
|
|
@@ -35,7 +35,7 @@ Mode selection is the first convergence move. Record the chosen mode + rationale
|
|
|
35
35
|
|
|
36
36
|
| Mode | When | What it does | YAGNI / Drift Guard |
|
|
37
37
|
|---|---|---|---|
|
|
38
|
-
| **EXPAND** *(opt-in, default OFF)* | Under-reaching on the outcome is the real risk | Raise the success bar / reframe to the deeper problem; thinner-but-more-complete path to a bigger target | Expands the *problem + acceptance*, not machinery. Each added criterion is a Drift-Guard-recorded, human-confirmed (HITL) decision: never auto-grown |
|
|
38
|
+
| **EXPAND** *(opt-in, default OFF)* | Under-reaching on the outcome is the real risk | Raise the success bar / reframe to the deeper problem; thinner-but-more-complete path to a bigger target | Expands the *problem + acceptance*, not machinery. Each added criterion is a Drift-Guard-recorded, human-confirmed (HITL) decision: never auto-grown. Under AFK it escalates via `AskUserQuestion` and the fold **holds** until the human answers; an unattended run never auto-applies it |
|
|
39
39
|
| **SELECTIVE** | One or two high-leverage dimensions deserve more; the rest is right | Expand only the high-upside dimension; hold the rest at spec scope | Each selected expansion routes through the Guard; everything not selected is parked in Non-goals so it's neither dropped nor re-injected mid-build |
|
|
40
40
|
| **HOLD-RIGOR** | The spec is right-sized (default for irreversible-risk-heavy or already-tight specs) | No scope change: pure hardening: pre-mortem, risk mitigations, acceptance sharpening, cross-cutting coverage | Adds zero surface; trivially Drift-Guard-clean (no acceptance change) |
|
|
41
41
|
| **REDUCE-TO-MVP** | Over-scoped: second-system bloat, ~all must-haves, gold-plating | Hammer scope to the Minimum Usable Subset; move the rest to Non-goals with one-line reasons + revisit notes | Strongest YAGNI alignment. Cutting acceptance is **still a spec change**: record it via the Guard, never a silent trim |
|
|
@@ -41,6 +41,13 @@ seal can see the call was made deliberately.
|
|
|
41
41
|
|
|
42
42
|
## In `/rite-autocomplete`
|
|
43
43
|
Autocomplete runs the significance test every feature. On skip → straight to `/rite-define`
|
|
44
|
-
(no pause). On fire → run the full review
|
|
45
|
-
`
|
|
46
|
-
|
|
44
|
+
(no pause). On fire → run the full review, then apply the mode under the AFK rule in
|
|
45
|
+
[`scope-modes.md`](scope-modes.md): `hold-rigor`, `reduce-to-MVP`, and a skip apply unattended.
|
|
46
|
+
`expand` and any extra acceptance **do not** apply unattended — acceptance is never auto-grown.
|
|
47
|
+
When the review lands on `expand` or any acceptance growth, the agent presents the scope call as a
|
|
48
|
+
ranked `AskUserQuestion` option set per the HITL rule, records the open `questions.md` qid, and
|
|
49
|
+
**holds the fold**: do not write *Success metrics* or *Acceptance criteria* rows, do not fold via
|
|
50
|
+
Spec Drift Guard, and do not recommend `/rite-define` until a human answers the qid. A self-written
|
|
51
|
+
`decisions.md` ADR is not that human answer (see [`strategy-template.md`](strategy-template.md)
|
|
52
|
+
§ Write discipline); the growth stays blocked until the qid resolves. Irreversible-risk findings
|
|
53
|
+
always pause.
|
|
@@ -74,8 +74,15 @@ already exists, record in `drift.md` and route via `/rite-plan repair` instead o
|
|
|
74
74
|
mitigations go to *Failure and recovery behavior* rows.
|
|
75
75
|
- *Open questions* table: one row per scope call (options offered → decision → owner).
|
|
76
76
|
- **Re-run the Readiness gate** at the bottom of the spec after edits; it must still pass, and
|
|
77
|
-
**every folded scope delta must trace to a recorded decision
|
|
78
|
-
`
|
|
77
|
+
**every folded scope delta must trace to a recorded decision**: a reduction or non-growth
|
|
78
|
+
delta traces to a `questions.md` qid **or** a `decisions.md` ADR, but an **acceptance-growth**
|
|
79
|
+
delta (`expand` or any added *Success metrics* / *Acceptance criteria* row) traces **only** to a
|
|
80
|
+
**resolved human `questions.md` qid** (`status: answered` plus an unindented, lowercase `answered_by: human` line; a qid without exactly
|
|
81
|
+
that line, including every qid written before the field existed, does not satisfy growth traceability).
|
|
82
|
+
A `decisions.md` ADR written by the same run is **not**
|
|
83
|
+
the human approval that growth requires, so an ADR-only growth fold is untraceable and the
|
|
84
|
+
Readiness gate fails closed — `/rite-define` step 0 hard-blocks while it is unresolved. An
|
|
85
|
+
untraceable change is the batch-dump failure.
|
|
79
86
|
- **`decisions.md`:** one ADR-style entry per scope call and accepted trade-off:
|
|
80
87
|
`context · decision · why-not-the-alternative · what-would-change-it`.
|
|
81
88
|
- **`assumptions.md`:** every "we'll probably need X" demoted to an explicit
|
|
@@ -86,5 +93,9 @@ already exists, record in `drift.md` and route via `/rite-plan repair` instead o
|
|
|
86
93
|
`devrites-strategy-reviewer` agent is **read-only** and only returns findings + bands.
|
|
87
94
|
- **No silent scope.** An expansion that the human didn't opt into, or a reduction that drops an
|
|
88
95
|
acceptance criterion without a recorded decision, is a defect, not a convenience.
|
|
96
|
+
- **An ADR is not its own approval.** A `decisions.md` ADR the run writes about its own scope call
|
|
97
|
+
records *why* it chose that mode; it never stands in for the human's answer. Acceptance growth
|
|
98
|
+
stays blocked until a resolved human `questions.md` qid lands, so an unattended run cannot fold
|
|
99
|
+
an expansion by citing its own record.
|
|
89
100
|
- Add `strategy.md` to the workspace between `spec.md` and `plan.md`; `/rite-define` and
|
|
90
101
|
`/rite-ship` read it.
|
|
@@ -20,11 +20,11 @@ Vet owns implementation; current `$ARGUMENTS` (`--full`) feeds the depth trigger
|
|
|
20
20
|
## Rules
|
|
21
21
|
|
|
22
22
|
Read the active standard from: [`principles.md`](../devrites-lib/reference/standards/principles.md), [`patterns.md`](../devrites-lib/reference/standards/patterns.md) + [`coding-style.md`](../devrites-lib/reference/standards/coding-style.md) (over-engineering / YAGNI rubric, trigger `yagni`),
|
|
23
|
-
[`testing.md`](../devrites-lib/reference/standards/testing.md), [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md), [`performance.md`](../devrites-lib/reference/standards/performance.md), [`error-handling.md`](../devrites-lib/reference/standards/error-handling.md),
|
|
23
|
+
[`testing.md`](../devrites-lib/reference/standards/testing.md), [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md), [`performance.md`](../devrites-lib/reference/standards/performance.md), [`error-handling.md`](../devrites-lib/reference/standards/error-handling.md) (trigger `errors`),
|
|
24
24
|
[`development-workflow.md`](../devrites-lib/reference/standards/development-workflow.md), [`afk-hitl.md`](../devrites-lib/reference/standards/afk-hitl.md), [`one-shot-actions.md`](../devrites-lib/reference/standards/one-shot-actions.md),
|
|
25
|
-
[`developer-experience.md`](../devrites-lib/reference/standards/developer-experience.md), [`elicitation.md`](../devrites-lib/reference/standards/elicitation.md), and [`definition-of-done.md`](../devrites-lib/reference/standards/definition-of-done.md). Load
|
|
25
|
+
[`developer-experience.md`](../devrites-lib/reference/standards/developer-experience.md), [`elicitation.md`](../devrites-lib/reference/standards/elicitation.md), and [`definition-of-done.md`](../devrites-lib/reference/standards/definition-of-done.md) (trigger `dod`). Load
|
|
26
26
|
repository topology, data integrity, and integration reliability only when
|
|
27
|
-
triggered. When the plan's scope generalizes an existing boundary — a second
|
|
27
|
+
triggered (trigger `applicability`). When the plan's scope generalizes an existing boundary — a second
|
|
28
28
|
platform/tenant/source of truth, a newly optional field, a constant turned parameter —
|
|
29
29
|
confirm the [`assumption-checkpoints.md`](../devrites-lib/reference/standards/assumption-checkpoints.md) question (trigger `assumption-delta`)
|
|
30
30
|
was answered and recorded, not skipped-as-negative.
|
|
@@ -65,6 +65,7 @@ plan declares a root-authored executable workflow file, read
|
|
|
65
65
|
repeat unaffected axes/reviewers. One dispatch covers every open fingerprint
|
|
66
66
|
of the fold — each checked individually — with a mandatory correction-created
|
|
67
67
|
regression audit.
|
|
68
|
+
- Refuse the rationalizations in [`anti-patterns`](reference/anti-patterns.md).
|
|
68
69
|
<!-- workflow-artifact-adapter: {"module":"devrites-lib/reference/standards/workflow-artifacts.md","entry":"plan declares root-authored executable workflow file","action":"emit exact admission; stale/missing authority uses PLAN_VET_REPAIR","return":"Vet READY cursor or exact technical replan"} -->
|
|
69
70
|
## Workflow
|
|
70
71
|
|
|
@@ -209,7 +209,7 @@ Vet hardens the plan. Use the marked action before fold-back.
|
|
|
209
209
|
- Finish `test-plan.md`, fold-back, and rechecks first. Changes to `brief.md`, `spec.md`,
|
|
210
210
|
`decisions.md`, `assumptions.md`, or `questions.md` require revalidating the
|
|
211
211
|
affected decision-coverage rows, assumption audit, residual uncertainty, and closed gates.
|
|
212
|
-
|
|
212
|
+
`open` rows, an unowned material assumption, or an open blocking/escalating question routes
|
|
213
213
|
`/rite-clarify`/HITL. Re-read affected rows with current evidence; repeat the exact
|
|
214
214
|
plan-reviewer and applicable strategy/DevEx after edits. Root writes READY only after
|
|
215
215
|
the checklist. Normal readiness rejects missing/stale bindings; empty tables,
|