devrites 3.2.28 → 4.0.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 +16 -144
- package/NOTICE.md +6 -5
- package/README.md +187 -95
- package/SECURITY.md +103 -79
- package/bin/devrites.mjs +140 -24
- package/docs/adr/0003-gate-model-hitl-pause.md +1 -1
- package/docs/adr/0013-native-codex-agent-orchestration.md +74 -0
- package/docs/adr/0014-native-host-hook-boundary.md +64 -0
- package/docs/adr/0015-read-only-root-native-orchestration.md +96 -0
- package/docs/adr/0016-codex-writer-fail-closed.md +53 -0
- package/docs/adr/0017-native-codex-writer-agent.md +63 -0
- package/docs/adr/0018-native-sandbox-instruction-writer-boundary.md +66 -0
- package/docs/adr/0019-native-boundary-with-deterministic-gates.md +48 -0
- package/docs/adr/0020-thin-engine-native-orchestration-boundary.md +54 -0
- package/docs/adr/0021-observable-workspace-compatibility.md +49 -0
- package/docs/adr/0022-native-orchestration-thin-engine.md +90 -0
- package/docs/adr/0023-native-workspace-reads-line-output.md +71 -0
- package/docs/adr/0024-native-policy-offline-installer-boundary.md +111 -0
- package/docs/adr/0025-evidence-gated-workspace-upgrades.md +64 -0
- package/docs/adr/0026-content-bound-proof-and-bounded-inputs.md +169 -0
- package/docs/adr/0027-content-bound-build-readiness.md +77 -0
- package/docs/adr/README.md +26 -11
- package/docs/agents/domain.md +2 -1
- package/docs/agents/issue-driven-rites.md +1 -1
- package/docs/architecture.md +191 -103
- package/docs/candidate-integrity.md +138 -0
- package/docs/capability-surface-selection.md +15 -5
- package/docs/cli.md +139 -92
- package/docs/command-map.md +88 -63
- package/docs/engine/commands.md +115 -507
- package/docs/engine/state-schema.md +94 -113
- package/docs/engine/workspace-schema.md +169 -229
- package/docs/flow.md +113 -68
- package/docs/harness-compliance.md +29 -56
- package/docs/markdown-instruction-upgrade-2026-08-02.md +302 -0
- package/docs/orchestration.md +136 -149
- package/docs/porting-to-a-new-harness.md +22 -7
- package/docs/quick-reference.md +21 -8
- package/docs/release.md +47 -4
- package/docs/skills.md +111 -72
- package/docs/templates/CRITIC_REVIEW_PACKET_TEMPLATE.md +2 -0
- package/docs/upstream-workflow-benchmark-2026-08-01.md +655 -0
- package/docs/usage.md +99 -65
- package/engine/Makefile +1 -2
- package/engine/cmd/releasepack/main.go +45 -25
- package/engine/cmd/releasepack/main_test.go +69 -0
- package/engine/commands.go +8 -258
- package/engine/harnessmatrix_test.go +28 -41
- package/engine/internal/devritespaths/paths.go +12 -28
- package/engine/internal/fsutil/copy.go +8 -0
- package/engine/internal/gate/gate.go +104 -105
- package/engine/internal/gate/gate_test.go +94 -84
- package/engine/internal/gate/readiness_binding.go +203 -0
- package/engine/internal/gate/readiness_binding_test.go +271 -0
- package/engine/internal/gitenv/env.go +46 -0
- package/engine/internal/gitenv/env_test.go +48 -0
- package/engine/internal/hostpack/hostpack.go +16 -20
- package/engine/internal/hostpack/hostpack_test.go +6 -6
- package/engine/internal/install/install.go +289 -511
- package/engine/internal/install/install_test.go +218 -306
- package/engine/internal/lib/candidate.go +475 -0
- package/engine/internal/lib/candidate_test.go +503 -0
- package/engine/internal/lib/closeout.go +17 -21
- package/engine/internal/lib/closeout_test.go +23 -0
- package/engine/internal/lib/cursor_compat_test.go +12 -75
- package/engine/internal/lib/evidencefresh.go +58 -47
- package/engine/internal/lib/evidencefresh_test.go +120 -0
- package/engine/internal/lib/resolve.go +13 -35
- package/engine/internal/lib/resolve_remediation_test.go +5 -17
- package/engine/internal/lib/secretscan.go +432 -0
- package/engine/internal/lib/secretscan_test.go +555 -0
- package/engine/internal/lib/util.go +24 -65
- package/engine/internal/lib/util_test.go +44 -0
- package/engine/internal/markdowntext/markdowntext.go +108 -0
- package/engine/internal/markdowntext/markdowntext_test.go +58 -0
- package/engine/internal/markdowntext/testdata/structural.json +27 -0
- package/engine/internal/reason/reason.go +2 -123
- package/engine/internal/reason/reason_test.go +4 -2
- package/engine/internal/rootfacts/facts.go +6 -8
- package/engine/internal/rootfacts/facts_test.go +20 -0
- package/engine/internal/state/cmd/workflowmanifest/main.go +10 -12
- package/engine/internal/state/cursor.go +53 -14
- package/engine/internal/state/cursor_test.go +57 -0
- package/engine/internal/state/feature.go +64 -154
- package/engine/internal/state/schema.go +24 -50
- package/engine/internal/state/state_test.go +151 -140
- package/engine/internal/state/status.go +4 -17
- package/engine/internal/state/workflow_manifest.json +9 -89
- package/engine/main.go +73 -502
- package/engine/root_routing_test.go +183 -212
- package/engine/testdata/fixtures/basic/devrites-root/{features/auth-tokens/feature.md → work/auth-tokens/README.md} +0 -1
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/architecture.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/assumptions.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/brief.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/decision-coverage.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/eng-review.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/questions.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/{features/auth-tokens/status.md → work/auth-tokens/state.md} +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/test-plan.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/traceability.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/{features/search-ranking/feature.md → work/search-ranking/README.md} +0 -1
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/assumptions.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/brief.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/decisions.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/questions.md +3 -0
- package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/state.md +2 -0
- package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +1 -1
- package/engine/testdata/golden/TestParityCloseOut/active_slug_cleared.golden +1 -1
- package/engine/tests/adr_0003_gate_exit_code_test.go +2 -2
- package/engine/tests/adr_0011_define_plan_test.go +2 -2
- package/engine/tests/adr_0027_readiness_binding_test.go +106 -0
- package/engine/tests/cli_test.go +24 -107
- package/engine/tests/gate_test.go +177 -200
- package/engine/tests/meta_test.go +5 -35
- package/engine/tests/parity_closeout_test.go +12 -12
- package/engine/tests/parity_resolve_test.go +6 -16
- package/engine/tests/parity_test.go +8 -302
- package/install.sh +201 -34
- package/pack/.claude/agents/devrites-code-reviewer.md +9 -18
- package/pack/.claude/agents/devrites-devex-reviewer.md +10 -18
- package/pack/.claude/agents/devrites-doubt-reviewer.md +10 -20
- package/pack/.claude/agents/devrites-evidence-scout.md +14 -26
- package/pack/.claude/agents/devrites-frontend-reviewer.md +9 -15
- package/pack/.claude/agents/devrites-performance-reviewer.md +13 -21
- package/pack/.claude/agents/devrites-plan-drafter.md +24 -28
- package/pack/.claude/agents/devrites-plan-reviewer.md +30 -47
- package/pack/.claude/agents/devrites-proof-runner.md +41 -47
- package/pack/.claude/agents/devrites-retrospector.md +34 -79
- package/pack/.claude/agents/devrites-security-auditor.md +9 -17
- package/pack/.claude/agents/devrites-simplifier-reviewer.md +9 -18
- package/pack/.claude/agents/devrites-slice-wright.md +44 -62
- package/pack/.claude/agents/devrites-spec-reviewer.md +38 -50
- package/pack/.claude/agents/devrites-strategy-reviewer.md +10 -19
- package/pack/.claude/agents/devrites-test-analyst.md +22 -21
- package/pack/.claude/agents/devrites-upgrade-planner.md +52 -71
- package/pack/.claude/settings.json +12 -100
- package/pack/.claude/skills/devrites-api-interface/SKILL.md +1 -2
- package/pack/.claude/skills/devrites-audit/SKILL.md +6 -9
- package/pack/.claude/skills/devrites-browser-proof/SKILL.md +0 -1
- package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +21 -27
- package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +22 -33
- package/pack/.claude/skills/devrites-doubt/SKILL.md +4 -6
- package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +1 -2
- package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +2 -1
- package/pack/.claude/skills/devrites-interview/SKILL.md +31 -36
- package/pack/.claude/skills/devrites-lib/SKILL.md +37 -66
- package/pack/.claude/skills/devrites-lib/reference/candidate-integrity.md +51 -0
- package/pack/.claude/skills/devrites-lib/reference/intent-map.md +20 -12
- package/pack/.claude/skills/devrites-lib/reference/orchestration-profiles.md +22 -0
- package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +35 -110
- package/pack/.claude/skills/devrites-lib/reference/reply-contract.md +26 -93
- package/pack/.claude/skills/devrites-lib/reference/standards/README.md +6 -3
- package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +43 -34
- package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +90 -216
- package/pack/.claude/skills/devrites-lib/reference/standards/anti-patterns.md +1 -1
- package/pack/.claude/skills/devrites-lib/reference/standards/code-review.md +9 -28
- package/pack/.claude/skills/devrites-lib/reference/standards/context-hygiene.md +13 -11
- package/pack/.claude/skills/devrites-lib/reference/standards/core.md +59 -54
- package/pack/.claude/skills/devrites-lib/reference/standards/hooks.md +3 -5
- package/pack/.claude/skills/devrites-lib/reference/standards/principles.md +29 -143
- package/pack/.claude/skills/devrites-lib/reference/standards/release/ship-checklist.md +5 -6
- package/pack/.claude/skills/devrites-lib/reference/standards/security.md +13 -31
- package/pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md +112 -82
- package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +71 -45
- package/pack/.claude/skills/devrites-lib/reference/standards/testing.md +22 -11
- package/pack/.claude/skills/devrites-lib/reference/standards/tooling.md +15 -24
- package/pack/.claude/skills/devrites-lib/reference/workspace-artifact-schema.md +106 -37
- package/pack/.claude/skills/devrites-prose-craft/SKILL.md +3 -4
- package/pack/.claude/skills/devrites-source-driven/SKILL.md +3 -4
- package/pack/.claude/skills/devrites-ux-shape/SKILL.md +3 -3
- package/pack/.claude/skills/rite/SKILL.md +12 -13
- package/pack/.claude/skills/rite/reference/menu.md +11 -11
- package/pack/.claude/skills/rite-adopt/SKILL.md +29 -84
- package/pack/.claude/skills/rite-adopt/reference/adoption.md +16 -50
- package/pack/.claude/skills/rite-autocomplete/SKILL.md +65 -54
- package/pack/.claude/skills/rite-autocomplete/reference/loop.md +24 -17
- package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +18 -21
- package/pack/.claude/skills/rite-build/SKILL.md +28 -34
- package/pack/.claude/skills/rite-build/reference/afk-discipline.md +36 -34
- package/pack/.claude/skills/rite-build/reference/anti-patterns.md +5 -19
- package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +10 -9
- package/pack/.claude/skills/rite-build/reference/checkpoint.md +17 -17
- package/pack/.claude/skills/rite-build/reference/frontend-trigger.md +3 -3
- package/pack/.claude/skills/rite-build/reference/one-slice-cycle.md +11 -14
- package/pack/.claude/skills/rite-build/reference/output.md +14 -24
- package/pack/.claude/skills/rite-build/reference/phase-contract.md +49 -188
- package/pack/.claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
- package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +43 -133
- package/pack/.claude/skills/rite-clarify/SKILL.md +46 -40
- package/pack/.claude/skills/rite-clarify/reference/decision-coverage.md +4 -10
- package/pack/.claude/skills/rite-converge/SKILL.md +9 -33
- package/pack/.claude/skills/rite-converge/reference/convergence-assessment.md +2 -2
- package/pack/.claude/skills/rite-customize/SKILL.md +34 -50
- package/pack/.claude/skills/rite-define/SKILL.md +34 -58
- package/pack/.claude/skills/rite-define/reference/plan-template.md +15 -0
- package/pack/.claude/skills/rite-doctor/SKILL.md +52 -64
- package/pack/.claude/skills/rite-dogfood/SKILL.md +1 -2
- package/pack/.claude/skills/rite-explain/SKILL.md +1 -20
- package/pack/.claude/skills/rite-frame/SKILL.md +1 -7
- package/pack/.claude/skills/rite-frame/reference/failure-modes.md +1 -1
- package/pack/.claude/skills/rite-handoff/SKILL.md +1 -2
- package/pack/.claude/skills/rite-handoff/reference/handoff-template.md +1 -1
- package/pack/.claude/skills/rite-learn/SKILL.md +44 -104
- package/pack/.claude/skills/rite-plan/SKILL.md +14 -26
- package/pack/.claude/skills/rite-plan/reference/task-breakdown.md +4 -1
- package/pack/.claude/skills/rite-polish/SKILL.md +20 -28
- package/pack/.claude/skills/rite-polish/reference/adr-promotion.md +11 -0
- package/pack/{generated/claude/skills/rite-ship → .claude/skills/rite-polish}/reference/design-memory.md +23 -21
- package/pack/.claude/skills/rite-polish/reference/ledger.md +62 -0
- package/pack/.claude/skills/rite-pov/SKILL.md +28 -32
- package/pack/.claude/skills/rite-pr-feedback/SKILL.md +0 -1
- package/pack/.claude/skills/rite-pressure-test/SKILL.md +6 -13
- package/pack/.claude/skills/rite-prototype/SKILL.md +0 -6
- package/pack/.claude/skills/rite-prove/SKILL.md +73 -68
- package/pack/.claude/skills/rite-prove/reference/acceptance-proof.md +34 -30
- package/pack/.claude/skills/rite-prove/reference/test-command-discovery.md +15 -14
- package/pack/.claude/skills/rite-quick/SKILL.md +5 -19
- package/pack/.claude/skills/rite-resolve/SKILL.md +4 -21
- package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +2 -2
- package/pack/.claude/skills/rite-review/SKILL.md +34 -57
- package/pack/.claude/skills/rite-seal/SKILL.md +54 -87
- package/pack/.claude/skills/rite-seal/reference/anti-patterns.md +2 -2
- package/pack/.claude/skills/rite-seal/reference/final-evidence.md +31 -56
- package/pack/.claude/skills/rite-seal/reference/go-no-go.md +27 -51
- package/pack/.claude/skills/rite-seal/reference/output.md +2 -4
- package/pack/.claude/skills/rite-seal/reference/phase-contract.md +42 -140
- package/pack/.claude/skills/rite-seal/reference/risk-and-rollback.md +2 -2
- package/pack/.claude/skills/rite-seal/reference/seal-template.md +17 -28
- package/pack/.claude/skills/rite-ship/SKILL.md +65 -93
- package/pack/.claude/skills/rite-ship/reference/anti-patterns.md +4 -1
- package/pack/.claude/skills/rite-ship/reference/close-out.md +4 -12
- package/pack/.claude/skills/rite-ship/reference/git-ship.md +86 -48
- package/pack/.claude/skills/rite-ship/reference/ship-template.md +22 -16
- package/pack/.claude/skills/rite-spec/SKILL.md +62 -95
- package/pack/.claude/skills/rite-spec/reference/investigation.md +1 -4
- package/pack/.claude/skills/rite-spec/reference/question-protocol.md +21 -20
- package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +16 -17
- package/pack/.claude/skills/rite-spec/reference/spec-template.md +47 -49
- package/pack/.claude/skills/rite-spec/reference/state-workspace.md +28 -13
- package/pack/.claude/skills/rite-status/SKILL.md +30 -88
- package/pack/.claude/skills/rite-temper/SKILL.md +12 -31
- package/pack/.claude/skills/rite-upgrade/SKILL.md +86 -101
- package/pack/.claude/skills/rite-vet/SKILL.md +88 -117
- package/pack/.claude/skills/rite-vet/reference/artifacts.md +56 -50
- package/pack/.claude/skills/rite-vet/reference/cross-model.md +15 -39
- package/pack/.claude/skills/rite-vet/reference/depth.md +2 -2
- package/pack/.claude/skills/rite-vet/reference/review-axes.md +3 -6
- package/pack/.claude/skills/rite-zoom-out/SKILL.md +0 -6
- package/pack/generated/README.md +2 -2
- package/pack/generated/claude/agents/devrites-code-reviewer.md +9 -18
- package/pack/generated/claude/agents/devrites-devex-reviewer.md +10 -18
- package/pack/generated/claude/agents/devrites-doubt-reviewer.md +10 -20
- package/pack/generated/claude/agents/devrites-evidence-scout.md +14 -26
- package/pack/generated/claude/agents/devrites-frontend-reviewer.md +9 -15
- package/pack/generated/claude/agents/devrites-performance-reviewer.md +13 -21
- package/pack/generated/claude/agents/devrites-plan-drafter.md +24 -28
- package/pack/generated/claude/agents/devrites-plan-reviewer.md +30 -47
- package/pack/generated/claude/agents/devrites-proof-runner.md +41 -47
- package/pack/generated/claude/agents/devrites-retrospector.md +34 -79
- package/pack/generated/claude/agents/devrites-security-auditor.md +9 -17
- package/pack/generated/claude/agents/devrites-simplifier-reviewer.md +9 -18
- package/pack/generated/claude/agents/devrites-slice-wright.md +44 -62
- package/pack/generated/claude/agents/devrites-spec-reviewer.md +38 -50
- package/pack/generated/claude/agents/devrites-strategy-reviewer.md +10 -19
- package/pack/generated/claude/agents/devrites-test-analyst.md +22 -21
- package/pack/generated/claude/agents/devrites-upgrade-planner.md +52 -71
- package/pack/generated/claude/settings.json +12 -100
- package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +1 -2
- package/pack/generated/claude/skills/devrites-audit/SKILL.md +6 -9
- package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +0 -1
- package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +21 -27
- package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +22 -33
- package/pack/generated/claude/skills/devrites-doubt/SKILL.md +4 -6
- package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +1 -2
- package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +2 -1
- package/pack/generated/claude/skills/devrites-interview/SKILL.md +31 -36
- package/pack/generated/claude/skills/devrites-lib/SKILL.md +37 -66
- package/pack/generated/claude/skills/devrites-lib/reference/candidate-integrity.md +51 -0
- package/pack/generated/claude/skills/devrites-lib/reference/intent-map.md +20 -12
- package/pack/generated/claude/skills/devrites-lib/reference/orchestration-profiles.md +22 -0
- package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +35 -110
- package/pack/generated/claude/skills/devrites-lib/reference/reply-contract.md +26 -93
- package/pack/generated/claude/skills/devrites-lib/reference/standards/README.md +6 -3
- package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +43 -34
- package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +90 -216
- package/pack/generated/claude/skills/devrites-lib/reference/standards/anti-patterns.md +1 -1
- package/pack/generated/claude/skills/devrites-lib/reference/standards/code-review.md +9 -28
- package/pack/generated/claude/skills/devrites-lib/reference/standards/context-hygiene.md +13 -11
- package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +59 -54
- package/pack/generated/claude/skills/devrites-lib/reference/standards/hooks.md +3 -5
- package/pack/generated/claude/skills/devrites-lib/reference/standards/principles.md +29 -143
- package/pack/generated/claude/skills/devrites-lib/reference/standards/release/ship-checklist.md +5 -6
- package/pack/generated/claude/skills/devrites-lib/reference/standards/security.md +13 -31
- package/pack/generated/claude/skills/devrites-lib/reference/standards/skill-authoring.md +112 -82
- package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +71 -45
- package/pack/generated/claude/skills/devrites-lib/reference/standards/testing.md +22 -11
- package/pack/generated/claude/skills/devrites-lib/reference/standards/tooling.md +15 -24
- package/pack/generated/claude/skills/devrites-lib/reference/workspace-artifact-schema.md +106 -37
- package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +3 -4
- package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +3 -4
- package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +3 -3
- package/pack/generated/claude/skills/rite/SKILL.md +12 -13
- package/pack/generated/claude/skills/rite/reference/menu.md +11 -11
- package/pack/generated/claude/skills/rite-adopt/SKILL.md +29 -84
- package/pack/generated/claude/skills/rite-adopt/reference/adoption.md +16 -50
- package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +65 -54
- package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +24 -17
- package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +18 -21
- package/pack/generated/claude/skills/rite-build/SKILL.md +28 -34
- package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +36 -34
- package/pack/generated/claude/skills/rite-build/reference/anti-patterns.md +5 -19
- package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +10 -9
- package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +17 -17
- package/pack/generated/claude/skills/rite-build/reference/frontend-trigger.md +3 -3
- package/pack/generated/claude/skills/rite-build/reference/one-slice-cycle.md +11 -14
- package/pack/generated/claude/skills/rite-build/reference/output.md +14 -24
- package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +49 -188
- package/pack/generated/claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
- package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +43 -133
- package/pack/generated/claude/skills/rite-clarify/SKILL.md +46 -40
- package/pack/generated/claude/skills/rite-clarify/reference/decision-coverage.md +4 -10
- package/pack/generated/claude/skills/rite-converge/SKILL.md +9 -33
- package/pack/generated/claude/skills/rite-converge/reference/convergence-assessment.md +2 -2
- package/pack/generated/claude/skills/rite-customize/SKILL.md +34 -50
- package/pack/generated/claude/skills/rite-define/SKILL.md +34 -58
- package/pack/generated/claude/skills/rite-define/reference/plan-template.md +15 -0
- package/pack/generated/claude/skills/rite-doctor/SKILL.md +52 -64
- package/pack/generated/claude/skills/rite-dogfood/SKILL.md +1 -2
- package/pack/generated/claude/skills/rite-explain/SKILL.md +1 -20
- package/pack/generated/claude/skills/rite-frame/SKILL.md +1 -7
- package/pack/generated/claude/skills/rite-frame/reference/failure-modes.md +1 -1
- package/pack/generated/claude/skills/rite-handoff/SKILL.md +1 -2
- package/pack/generated/claude/skills/rite-handoff/reference/handoff-template.md +1 -1
- package/pack/generated/claude/skills/rite-learn/SKILL.md +44 -104
- package/pack/generated/claude/skills/rite-plan/SKILL.md +14 -26
- package/pack/generated/claude/skills/rite-plan/reference/task-breakdown.md +4 -1
- package/pack/generated/claude/skills/rite-polish/SKILL.md +20 -28
- package/pack/generated/claude/skills/rite-polish/reference/adr-promotion.md +11 -0
- package/pack/generated/{codex/skills/rite-ship → claude/skills/rite-polish}/reference/design-memory.md +23 -21
- package/pack/generated/claude/skills/rite-polish/reference/ledger.md +62 -0
- package/pack/generated/claude/skills/rite-pov/SKILL.md +28 -32
- package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +0 -1
- package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +6 -13
- package/pack/generated/claude/skills/rite-prototype/SKILL.md +0 -6
- package/pack/generated/claude/skills/rite-prove/SKILL.md +73 -68
- package/pack/generated/claude/skills/rite-prove/reference/acceptance-proof.md +34 -30
- package/pack/generated/claude/skills/rite-prove/reference/test-command-discovery.md +15 -14
- package/pack/generated/claude/skills/rite-quick/SKILL.md +5 -19
- package/pack/generated/claude/skills/rite-resolve/SKILL.md +4 -21
- package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +2 -2
- package/pack/generated/claude/skills/rite-review/SKILL.md +34 -57
- package/pack/generated/claude/skills/rite-seal/SKILL.md +54 -87
- package/pack/generated/claude/skills/rite-seal/reference/anti-patterns.md +2 -2
- package/pack/generated/claude/skills/rite-seal/reference/final-evidence.md +31 -56
- package/pack/generated/claude/skills/rite-seal/reference/go-no-go.md +27 -51
- package/pack/generated/claude/skills/rite-seal/reference/output.md +2 -4
- package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +42 -140
- package/pack/generated/claude/skills/rite-seal/reference/risk-and-rollback.md +2 -2
- package/pack/generated/claude/skills/rite-seal/reference/seal-template.md +17 -28
- package/pack/generated/claude/skills/rite-ship/SKILL.md +65 -93
- package/pack/generated/claude/skills/rite-ship/reference/anti-patterns.md +4 -1
- package/pack/generated/claude/skills/rite-ship/reference/close-out.md +4 -12
- package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +86 -48
- package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +22 -16
- package/pack/generated/claude/skills/rite-spec/SKILL.md +62 -95
- package/pack/generated/claude/skills/rite-spec/reference/investigation.md +1 -4
- package/pack/generated/claude/skills/rite-spec/reference/question-protocol.md +21 -20
- package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +16 -17
- package/pack/generated/claude/skills/rite-spec/reference/spec-template.md +47 -49
- package/pack/generated/claude/skills/rite-spec/reference/state-workspace.md +28 -13
- package/pack/generated/claude/skills/rite-status/SKILL.md +30 -88
- package/pack/generated/claude/skills/rite-temper/SKILL.md +12 -31
- package/pack/generated/claude/skills/rite-upgrade/SKILL.md +86 -101
- package/pack/generated/claude/skills/rite-vet/SKILL.md +88 -117
- package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +56 -50
- package/pack/generated/claude/skills/rite-vet/reference/cross-model.md +15 -39
- package/pack/generated/claude/skills/rite-vet/reference/depth.md +2 -2
- package/pack/generated/claude/skills/rite-vet/reference/review-axes.md +3 -6
- package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +0 -6
- package/pack/generated/codex/AGENTS.md +5 -4
- package/pack/generated/codex/agents/devrites-code-reviewer.toml +8 -27
- package/pack/generated/codex/agents/devrites-devex-reviewer.toml +9 -27
- package/pack/generated/codex/agents/devrites-doubt-reviewer.toml +9 -29
- package/pack/generated/codex/agents/devrites-evidence-scout.toml +14 -36
- package/pack/generated/codex/agents/devrites-frontend-reviewer.toml +8 -24
- package/pack/generated/codex/agents/devrites-performance-reviewer.toml +12 -30
- package/pack/generated/codex/agents/devrites-plan-drafter.toml +24 -38
- package/pack/generated/codex/agents/devrites-plan-reviewer.toml +30 -57
- package/pack/generated/codex/agents/devrites-proof-runner.toml +41 -57
- package/pack/generated/codex/agents/devrites-retrospector.toml +34 -89
- package/pack/generated/codex/agents/devrites-security-auditor.toml +8 -26
- package/pack/generated/codex/agents/devrites-simplifier-reviewer.toml +8 -27
- package/pack/generated/codex/agents/devrites-slice-wright.toml +44 -71
- package/pack/generated/codex/agents/devrites-spec-reviewer.toml +38 -60
- package/pack/generated/codex/agents/devrites-strategy-reviewer.toml +9 -28
- package/pack/generated/codex/agents/devrites-test-analyst.toml +21 -30
- package/pack/generated/codex/agents/devrites-upgrade-planner.toml +52 -81
- package/pack/generated/codex/config.toml +7 -0
- package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +1 -21
- package/pack/generated/codex/skills/devrites-audit/SKILL.md +6 -28
- package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +1 -21
- package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +21 -46
- package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +22 -33
- package/pack/generated/codex/skills/devrites-doubt/SKILL.md +4 -25
- package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +1 -21
- package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +2 -1
- package/pack/generated/codex/skills/devrites-interview/SKILL.md +32 -56
- package/pack/generated/codex/skills/devrites-lib/SKILL.md +38 -86
- package/pack/generated/codex/skills/devrites-lib/reference/candidate-integrity.md +51 -0
- package/pack/generated/codex/skills/devrites-lib/reference/intent-map.md +20 -12
- package/pack/generated/codex/skills/devrites-lib/reference/orchestration-profiles.md +22 -0
- package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +35 -110
- package/pack/generated/codex/skills/devrites-lib/reference/reply-contract.md +26 -93
- package/pack/generated/codex/skills/devrites-lib/reference/standards/README.md +6 -3
- package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +43 -34
- package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +90 -216
- package/pack/generated/codex/skills/devrites-lib/reference/standards/anti-patterns.md +1 -1
- package/pack/generated/codex/skills/devrites-lib/reference/standards/code-review.md +9 -28
- package/pack/generated/codex/skills/devrites-lib/reference/standards/context-hygiene.md +13 -11
- package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +59 -54
- package/pack/generated/codex/skills/devrites-lib/reference/standards/hooks.md +3 -5
- package/pack/generated/codex/skills/devrites-lib/reference/standards/principles.md +29 -143
- package/pack/generated/codex/skills/devrites-lib/reference/standards/release/ship-checklist.md +5 -6
- package/pack/generated/codex/skills/devrites-lib/reference/standards/security.md +13 -31
- package/pack/generated/codex/skills/devrites-lib/reference/standards/skill-authoring.md +112 -82
- package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +71 -45
- package/pack/generated/codex/skills/devrites-lib/reference/standards/testing.md +22 -11
- package/pack/generated/codex/skills/devrites-lib/reference/standards/tooling.md +15 -24
- package/pack/generated/codex/skills/devrites-lib/reference/workspace-artifact-schema.md +106 -37
- package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +3 -23
- package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +3 -23
- package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +3 -22
- package/pack/generated/codex/skills/rite/SKILL.md +12 -32
- package/pack/generated/codex/skills/rite/reference/menu.md +11 -11
- package/pack/generated/codex/skills/rite-adopt/SKILL.md +29 -103
- package/pack/generated/codex/skills/rite-adopt/reference/adoption.md +16 -50
- package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +65 -73
- package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +24 -17
- package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +18 -21
- package/pack/generated/codex/skills/rite-build/SKILL.md +28 -53
- package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +36 -34
- package/pack/generated/codex/skills/rite-build/reference/anti-patterns.md +5 -19
- package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +10 -9
- package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +17 -17
- package/pack/generated/codex/skills/rite-build/reference/frontend-trigger.md +3 -3
- package/pack/generated/codex/skills/rite-build/reference/one-slice-cycle.md +11 -14
- package/pack/generated/codex/skills/rite-build/reference/output.md +14 -24
- package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +49 -188
- package/pack/generated/codex/skills/rite-build/reference/spec-drift-guard.md +1 -1
- package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +43 -133
- package/pack/generated/codex/skills/rite-clarify/SKILL.md +46 -59
- package/pack/generated/codex/skills/rite-clarify/reference/decision-coverage.md +4 -10
- package/pack/generated/codex/skills/rite-converge/SKILL.md +9 -52
- package/pack/generated/codex/skills/rite-converge/reference/convergence-assessment.md +2 -2
- package/pack/generated/codex/skills/rite-customize/SKILL.md +32 -67
- package/pack/generated/codex/skills/rite-define/SKILL.md +34 -77
- package/pack/generated/codex/skills/rite-define/reference/plan-template.md +15 -0
- package/pack/generated/codex/skills/rite-doctor/SKILL.md +52 -83
- package/pack/generated/codex/skills/rite-dogfood/SKILL.md +1 -21
- package/pack/generated/codex/skills/rite-explain/SKILL.md +1 -39
- package/pack/generated/codex/skills/rite-frame/SKILL.md +1 -26
- package/pack/generated/codex/skills/rite-frame/reference/failure-modes.md +1 -1
- package/pack/generated/codex/skills/rite-handoff/SKILL.md +1 -21
- package/pack/generated/codex/skills/rite-handoff/reference/handoff-template.md +1 -1
- package/pack/generated/codex/skills/rite-learn/SKILL.md +44 -123
- package/pack/generated/codex/skills/rite-plan/SKILL.md +14 -45
- package/pack/generated/codex/skills/rite-plan/reference/task-breakdown.md +4 -1
- package/pack/generated/codex/skills/rite-polish/SKILL.md +20 -47
- package/pack/generated/codex/skills/rite-polish/reference/adr-promotion.md +11 -0
- package/pack/{.claude/skills/rite-ship → generated/codex/skills/rite-polish}/reference/design-memory.md +23 -21
- package/pack/generated/codex/skills/rite-polish/reference/ledger.md +62 -0
- package/pack/generated/codex/skills/rite-pov/SKILL.md +28 -51
- package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +0 -20
- package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +6 -32
- package/pack/generated/codex/skills/rite-prototype/SKILL.md +0 -25
- package/pack/generated/codex/skills/rite-prove/SKILL.md +73 -87
- package/pack/generated/codex/skills/rite-prove/reference/acceptance-proof.md +34 -30
- package/pack/generated/codex/skills/rite-prove/reference/test-command-discovery.md +15 -14
- package/pack/generated/codex/skills/rite-quick/SKILL.md +5 -38
- package/pack/generated/codex/skills/rite-resolve/SKILL.md +4 -40
- package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +2 -2
- package/pack/generated/codex/skills/rite-review/SKILL.md +34 -76
- package/pack/generated/codex/skills/rite-seal/SKILL.md +51 -103
- package/pack/generated/codex/skills/rite-seal/reference/anti-patterns.md +2 -2
- package/pack/generated/codex/skills/rite-seal/reference/final-evidence.md +31 -56
- package/pack/generated/codex/skills/rite-seal/reference/go-no-go.md +27 -51
- package/pack/generated/codex/skills/rite-seal/reference/output.md +2 -4
- package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +42 -140
- package/pack/generated/codex/skills/rite-seal/reference/risk-and-rollback.md +2 -2
- package/pack/generated/codex/skills/rite-seal/reference/seal-template.md +17 -28
- package/pack/generated/codex/skills/rite-ship/SKILL.md +65 -112
- package/pack/generated/codex/skills/rite-ship/reference/anti-patterns.md +4 -1
- package/pack/generated/codex/skills/rite-ship/reference/close-out.md +4 -12
- package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +86 -48
- package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +22 -16
- package/pack/generated/codex/skills/rite-spec/SKILL.md +62 -114
- package/pack/generated/codex/skills/rite-spec/reference/investigation.md +1 -4
- package/pack/generated/codex/skills/rite-spec/reference/question-protocol.md +21 -20
- package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +16 -17
- package/pack/generated/codex/skills/rite-spec/reference/spec-template.md +47 -49
- package/pack/generated/codex/skills/rite-spec/reference/state-workspace.md +28 -13
- package/pack/generated/codex/skills/rite-status/SKILL.md +30 -107
- package/pack/generated/codex/skills/rite-temper/SKILL.md +12 -50
- package/pack/generated/codex/skills/rite-upgrade/SKILL.md +86 -120
- package/pack/generated/codex/skills/rite-vet/SKILL.md +88 -136
- package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +56 -50
- package/pack/generated/codex/skills/rite-vet/reference/cross-model.md +15 -39
- package/pack/generated/codex/skills/rite-vet/reference/depth.md +2 -2
- package/pack/generated/codex/skills/rite-vet/reference/review-axes.md +3 -6
- package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +0 -25
- package/package.json +6 -5
- package/scripts/build-host-artifacts.sh +5 -9
- package/scripts/codex-generate.sh +18 -278
- package/scripts/install-lib.sh +121 -34
- package/uninstall.sh +19 -17
- package/update.sh +26 -18
- package/docs/engine/agent-contract.md +0 -172
- package/docs/extensions.md +0 -178
- package/engine/git_guard.go +0 -187
- package/engine/git_guard_test.go +0 -283
- package/engine/harnessmatrix.go +0 -60
- package/engine/hookpolicy.go +0 -113
- package/engine/hookpolicy_test.go +0 -160
- package/engine/hooks.go +0 -677
- package/engine/hooks_agent_dispatch.go +0 -1726
- package/engine/hooks_events_test.go +0 -431
- package/engine/hooks_workspace.go +0 -1196
- package/engine/internal/doctor/doctor.go +0 -306
- package/engine/internal/doctor/doctor_test.go +0 -252
- package/engine/internal/forge/forge.go +0 -938
- package/engine/internal/forge/forge_test.go +0 -576
- package/engine/internal/forge/git.go +0 -245
- package/engine/internal/forge/liveness_unix.go +0 -48
- package/engine/internal/forge/liveness_windows.go +0 -67
- package/engine/internal/forge/manifest.go +0 -402
- package/engine/internal/harness/compliance.go +0 -96
- package/engine/internal/harness/harness.go +0 -301
- package/engine/internal/harness/harness_test.go +0 -124
- package/engine/internal/iohooks/detach_other.go +0 -11
- package/engine/internal/iohooks/detach_unix.go +0 -11
- package/engine/internal/iohooks/iohooks.go +0 -839
- package/engine/internal/iohooks/iohooks_test.go +0 -561
- package/engine/internal/lib/adoption.go +0 -659
- package/engine/internal/lib/adoption_test.go +0 -121
- package/engine/internal/lib/analyze.go +0 -232
- package/engine/internal/lib/archivesearch.go +0 -125
- package/engine/internal/lib/archivesearch_test.go +0 -138
- package/engine/internal/lib/budget.go +0 -172
- package/engine/internal/lib/buildreadiness.go +0 -111
- package/engine/internal/lib/checkacceptance.go +0 -176
- package/engine/internal/lib/clarifyreturn.go +0 -91
- package/engine/internal/lib/clarifyreturn_test.go +0 -123
- package/engine/internal/lib/command_other.go +0 -7
- package/engine/internal/lib/command_unix.go +0 -24
- package/engine/internal/lib/context.go +0 -280
- package/engine/internal/lib/conventions.go +0 -449
- package/engine/internal/lib/coverage.go +0 -145
- package/engine/internal/lib/dispatchwaive.go +0 -31
- package/engine/internal/lib/dispatchwaive_test.go +0 -23
- package/engine/internal/lib/doubtcoverage.go +0 -78
- package/engine/internal/lib/extensions.go +0 -622
- package/engine/internal/lib/extensions_test.go +0 -305
- package/engine/internal/lib/footprint.go +0 -239
- package/engine/internal/lib/gitauthority.go +0 -601
- package/engine/internal/lib/gitauthority_test.go +0 -346
- package/engine/internal/lib/jsonout.go +0 -129
- package/engine/internal/lib/jsonout_test.go +0 -73
- package/engine/internal/lib/lanes.go +0 -112
- package/engine/internal/lib/learnings.go +0 -397
- package/engine/internal/lib/learnings_inject_test.go +0 -77
- package/engine/internal/lib/learnings_remediation_test.go +0 -24
- package/engine/internal/lib/ledger.go +0 -311
- package/engine/internal/lib/ledger_test.go +0 -186
- package/engine/internal/lib/mutationgate.go +0 -89
- package/engine/internal/lib/observability_test.go +0 -358
- package/engine/internal/lib/overrides.go +0 -164
- package/engine/internal/lib/overrides_test.go +0 -112
- package/engine/internal/lib/preamble.go +0 -159
- package/engine/internal/lib/preamble_questions_test.go +0 -10
- package/engine/internal/lib/progress.go +0 -210
- package/engine/internal/lib/provenance.go +0 -462
- package/engine/internal/lib/provenance_test.go +0 -154
- package/engine/internal/lib/readiness_contract.json +0 -118
- package/engine/internal/lib/readinessartifact.go +0 -533
- package/engine/internal/lib/readinessartifact_test.go +0 -422
- package/engine/internal/lib/reconcile.go +0 -1496
- package/engine/internal/lib/reconcile_test.go +0 -1071
- package/engine/internal/lib/recoveryattempts.go +0 -298
- package/engine/internal/lib/recoveryattempts_test.go +0 -215
- package/engine/internal/lib/reviewers.go +0 -143
- package/engine/internal/lib/reviewers_test.go +0 -45
- package/engine/internal/lib/reviewerstats.go +0 -199
- package/engine/internal/lib/reviewerstats_test.go +0 -104
- package/engine/internal/lib/reviewintegrity.go +0 -143
- package/engine/internal/lib/reviewintegrity_test.go +0 -103
- package/engine/internal/lib/runbook.go +0 -295
- package/engine/internal/lib/runbook_context_test.go +0 -182
- package/engine/internal/lib/session.go +0 -1020
- package/engine/internal/lib/session_test.go +0 -177
- package/engine/internal/lib/specparse.go +0 -125
- package/engine/internal/lib/specskeleton.go +0 -79
- package/engine/internal/lib/specvalidate.go +0 -391
- package/engine/internal/lib/specvalidate_test.go +0 -185
- package/engine/internal/lib/stuck.go +0 -206
- package/engine/internal/lib/templates/conventions_drift.tmpl +0 -6
- package/engine/internal/lib/templates/conventions_ledger_header.md +0 -6
- package/engine/internal/lib/templates/conventions_orient_header.txt +0 -1
- package/engine/internal/lib/testintegrity.go +0 -199
- package/engine/internal/lib/testintegrity_test.go +0 -149
- package/engine/internal/lib/tickafk.go +0 -86
- package/engine/internal/migrate/migrate.go +0 -279
- package/engine/internal/migrate/migrate_test.go +0 -157
- package/engine/internal/orient/firstrun.go +0 -50
- package/engine/internal/orient/firstrun_test.go +0 -72
- package/engine/internal/orient/orient.go +0 -69
- package/engine/internal/orient/orient_test.go +0 -25
- package/engine/internal/profile/profile.go +0 -284
- package/engine/internal/profile/profile_test.go +0 -13
- package/engine/internal/state/clarify_transition.go +0 -165
- package/engine/internal/state/clarify_transition_test.go +0 -130
- package/engine/internal/state/snapshot.go +0 -457
- package/engine/internal/toolpolicy/classifier.go +0 -533
- package/engine/internal/toolpolicy/classifier_test.go +0 -424
- package/engine/internal/toolpolicy/git.go +0 -616
- package/engine/internal/toolpolicy/scanner.go +0 -382
- package/engine/observability_cli_test.go +0 -52
- package/engine/profile_test.go +0 -76
- package/engine/subagent_orient_context.txt +0 -8
- package/engine/testdata/golden/TestParityA1Guard/devrites-edit-allowed.golden +0 -1
- package/engine/testdata/golden/TestParityA1Guard/no-window-silent.golden +0 -1
- package/engine/testdata/golden/TestParityA1Guard/non-edit-tool.golden +0 -1
- package/engine/testdata/golden/TestParityA1Guard/observe-mode-silent.golden +0 -1
- package/engine/testdata/golden/TestParityA1Guard/source-edit-enforce-denies.golden +0 -2
- package/engine/testdata/golden/TestParityA1Guard/subagent-allowed.golden +0 -1
- package/engine/testdata/golden/TestParityAnalyze/noactive.golden +0 -1
- package/engine/testdata/golden/TestParityAnalyze/slug=covered.golden +0 -15
- package/engine/testdata/golden/TestParityAnalyze/slug=dangling.golden +0 -16
- package/engine/testdata/golden/TestParityAnalyze/slug=ghost.golden +0 -1
- package/engine/testdata/golden/TestParityAnalyze/slug=noac.golden +0 -15
- package/engine/testdata/golden/TestParityAnalyze/slug=order.golden +0 -17
- package/engine/testdata/golden/TestParityAnalyze/slug=orphan.golden +0 -16
- package/engine/testdata/golden/TestParityAnalyze/slug=uncovered.golden +0 -16
- package/engine/testdata/golden/TestParityBudget/default-active.golden +0 -4
- package/engine/testdata/golden/TestParityBudget/extra-md.golden +0 -5
- package/engine/testdata/golden/TestParityBudget/no-active.golden +0 -1
- package/engine/testdata/golden/TestParityBudget/no-feature.golden +0 -1
- package/engine/testdata/golden/TestParityBudget/over-advisory.golden +0 -6
- package/engine/testdata/golden/TestParityBudget/over-strict.golden +0 -6
- package/engine/testdata/golden/TestParityBudget/within.golden +0 -6
- package/engine/testdata/golden/TestParityBuildReadiness/arg=approved.golden +0 -2
- package/engine/testdata/golden/TestParityBuildReadiness/arg=approvenone.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=await.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=blocked.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=clarifyopen.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=emptystatus.golden +0 -2
- package/engine/testdata/golden/TestParityBuildReadiness/arg=ghost.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=legacycontract.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=noapprove.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=noclarify.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=novet.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=stalevet.golden +0 -1
- package/engine/testdata/golden/TestParityBuildReadiness/arg=trailhash.golden +0 -2
- package/engine/testdata/golden/TestParityBuildReadiness/arg=trailpipe.golden +0 -2
- package/engine/testdata/golden/TestParityBuildReadiness/arg=vetnotready.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=blank-section.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=empty.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-dropped.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-ok.golden +0 -2
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-unchecked.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-gap.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-ok.golden +0 -2
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=no-seal.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=no-section.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance/arg=nonexistent.golden +0 -1
- package/engine/testdata/golden/TestParityCheckAcceptance.golden +0 -1
- package/engine/testdata/golden/TestParityCoverage/arg=flat.golden +0 -7
- package/engine/testdata/golden/TestParityCoverage/arg=full.golden +0 -10
- package/engine/testdata/golden/TestParityCoverage/arg=nonexistent.golden +0 -1
- package/engine/testdata/golden/TestParityCoverage/arg=nospec.golden +0 -1
- package/engine/testdata/golden/TestParityCoverage/arg=speconly.golden +0 -9
- package/engine/testdata/golden/TestParityCoverage.golden +0 -1
- package/engine/testdata/golden/TestParityCursor/bare.golden +0 -3
- package/engine/testdata/golden/TestParityCursor/full-afk.golden +0 -6
- package/engine/testdata/golden/TestParityCursor/full-hitl.golden +0 -5
- package/engine/testdata/golden/TestParityCursor/no-active.golden +0 -1
- package/engine/testdata/golden/TestParityCursor/red.golden +0 -5
- package/engine/testdata/golden/TestParityCursor/zerogates.golden +0 -5
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=doubted.golden +0 -2
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=ghost.golden +0 -2
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing.golden +0 -3
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=nodoubt.golden +0 -4
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=nolog.golden +0 -2
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=nowright.golden +0 -2
- package/engine/testdata/golden/TestParityDoubtCoverage.golden +0 -1
- package/engine/testdata/golden/TestParityMutationGate/active-slug.golden +0 -3
- package/engine/testdata/golden/TestParityMutationGate/explicit-slug.golden +0 -3
- package/engine/testdata/golden/TestParityMutationGate/ghost.golden +0 -1
- package/engine/testdata/golden/TestParityOrientSilentPath.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/bad-mode.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/check-clean/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/check-clean.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/check-no-base.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/check-no-claimed/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/check-violation/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/check-violation.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/close-window/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/close-window.golden +0 -3
- package/engine/testdata/golden/TestParityReconcile/not-git.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/snapshot/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityReconcile/snapshot-no-allowlist.golden +0 -1
- package/engine/testdata/golden/TestParityReconcile/snapshot.golden +0 -2
- package/engine/testdata/golden/TestParityRedwatch/fail-writes-red.golden +0 -2
- package/engine/testdata/golden/TestParityRedwatch/non-bash-tool.golden +0 -1
- package/engine/testdata/golden/TestParityRedwatch/non-test-command.golden +0 -1
- package/engine/testdata/golden/TestParityRedwatch/pass-clears-red.golden +0 -1
- package/engine/testdata/golden/TestParityResolve/next-qid.golden +0 -2
- package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-devrites-agent-denies.golden +0 -2
- package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-non-devrites-allows.golden +0 -1
- package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-subagent-type-only-allows.golden +0 -1
- package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-git-commit.golden +0 -2
- package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-mutating.golden +0 -2
- package/engine/testdata/golden/TestParityReviewerReadonly/non-bash-tool.golden +0 -1
- package/engine/testdata/golden/TestParityReviewerReadonly/non-tool-input.golden +0 -1
- package/engine/testdata/golden/TestParityReviewerReadonly/observe-mutating-silent.golden +0 -1
- package/engine/testdata/golden/TestParityReviewerReadonly/safe-bash-command.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=dup.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=empty.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=flat.golden +0 -2
- package/engine/testdata/golden/TestParitySpecValidate/arg=nonexistent.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=noscenario.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=noshall.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=nothen.golden +0 -1
- package/engine/testdata/golden/TestParitySpecValidate/arg=valid/spec.md.golden +0 -2
- package/engine/testdata/golden/TestParitySpecValidate/arg=valid.golden +0 -2
- package/engine/testdata/golden/TestParitySpecValidate.golden +0 -1
- package/engine/testdata/golden/TestParityStatusline/full-afk.golden +0 -2
- package/engine/testdata/golden/TestParityStatusline/full-hitl.golden +0 -2
- package/engine/testdata/golden/TestParityStatusline/no-active.golden +0 -1
- package/engine/testdata/golden/TestParityStatusline/nophase.golden +0 -2
- package/engine/testdata/golden/TestParityStatusline/red.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/bad-cmd.golden +0 -1
- package/engine/testdata/golden/TestParityStuckCheck/custom-window-2.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/dominant.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/few.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/ghost.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/identical.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/no-cmd.golden +0 -1
- package/engine/testdata/golden/TestParityStuckCheck/no-slug.golden +0 -1
- package/engine/testdata/golden/TestParityStuckCheck/nolog.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/pingpong.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/varied.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/window-04-identical.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/window-2.5-varied4.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/window-4x-varied4.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/window-leadspace-varied4.golden +0 -2
- package/engine/testdata/golden/TestParityStuckCheck/window-plus4-identical.golden +0 -2
- package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent-subagent-type-key.golden +0 -2
- package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent.golden +0 -2
- package/engine/testdata/golden/TestParitySubagentOrient/garbage-input.golden +0 -1
- package/engine/testdata/golden/TestParitySubagentOrient/non-devrites-agent.golden +0 -1
- package/engine/testdata/golden/TestParityTestIntegrity/assertion-dropped.golden +0 -1
- package/engine/testdata/golden/TestParityTestIntegrity/clean.golden +0 -2
- package/engine/testdata/golden/TestParityTestIntegrity/deleted.golden +0 -1
- package/engine/testdata/golden/TestParityTestIntegrity/ghost-workspace.golden +0 -1
- package/engine/testdata/golden/TestParityTestIntegrity/not-git.golden +0 -1
- package/engine/testdata/golden/TestParityTestIntegrity/skip-added.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/budget1/state.md.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/budget1.golden +0 -2
- package/engine/testdata/golden/TestParityTickAfk/budget3/state.md.golden +0 -5
- package/engine/testdata/golden/TestParityTickAfk/budget3.golden +0 -2
- package/engine/testdata/golden/TestParityTickAfk/bulletPipe/state.md.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/bulletPipe.golden +0 -2
- package/engine/testdata/golden/TestParityTickAfk/missingField/state.md.golden +0 -3
- package/engine/testdata/golden/TestParityTickAfk/missingField.golden +0 -2
- package/engine/testdata/golden/TestParityTickAfk/missingFile.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/nonNumeric/state.md.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/nonNumeric.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/none/state.md.golden +0 -1
- package/engine/testdata/golden/TestParityTickAfk/none.golden +0 -2
- package/engine/testdata/golden/TestParityWrightScope/agent-required-non-wright.golden +0 -1
- package/engine/testdata/golden/TestParityWrightScope/devrites-edit-denied.golden +0 -2
- package/engine/testdata/golden/TestParityWrightScope/in-scope-allowed.golden +0 -1
- package/engine/testdata/golden/TestParityWrightScope/non-edit-tool.golden +0 -1
- package/engine/testdata/golden/TestParityWrightScope/out-of-scope-enforce-denies.golden +0 -2
- package/engine/testdata/golden/TestParityWrightScope/out-of-scope-observe-silent.golden +0 -1
- package/engine/testdata/golden/TestSpecSkeleton/missing-some.golden +0 -2
- package/engine/testdata/golden/TestSpecSkeleton/present-all.golden +0 -2
- package/engine/testdata/golden/TestStuckLogHashParity.golden +0 -1
- package/engine/tests/adr_0006_clock_seam_test.go +0 -36
- package/engine/tests/budget_test.go +0 -88
- package/engine/tests/canonical_ac_ids_test.go +0 -44
- package/engine/tests/concurrency_cli_test.go +0 -131
- package/engine/tests/conventions_test.go +0 -106
- package/engine/tests/doctor_cli_test.go +0 -223
- package/engine/tests/forge_cli_test.go +0 -463
- package/engine/tests/hook_test.go +0 -2778
- package/engine/tests/hooks_io_test.go +0 -309
- package/engine/tests/json_contract_test.go +0 -224
- package/engine/tests/lib_parity_test.go +0 -930
- package/engine/tests/migrate_cli_test.go +0 -195
- package/engine/tests/parity_analyze_test.go +0 -55
- package/engine/tests/parity_buildreadiness_test.go +0 -199
- package/engine/tests/parity_learnings_test.go +0 -89
- package/engine/tests/parity_mutationgate_test.go +0 -36
- package/engine/tests/parity_reconcile_test.go +0 -94
- package/engine/tests/parity_testintegrity_test.go +0 -65
- package/engine/tests/parity_tickafk_test.go +0 -83
- package/engine/validatepack.go +0 -192
- package/engine/validatepack_test.go +0 -79
- package/engine/validatepackskills.go +0 -181
- package/engine/validatepackskills_test.go +0 -171
- package/pack/.claude/agents/devrites-forge-judge.md +0 -118
- package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +0 -44
- package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +0 -52
- package/pack/.claude/skills/rite-build/reference/evidence-standard.md +0 -45
- package/pack/.claude/skills/rite-build/reference/forge.md +0 -210
- package/pack/.claude/skills/rite-seal/reference/conventions-ledger.md +0 -60
- package/pack/.claude/skills/rite-ship/reference/adr-promotion.md +0 -9
- package/pack/.claude/skills/rite-ship/reference/ledger.md +0 -56
- package/pack/generated/claude/agents/devrites-forge-judge.md +0 -118
- package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +0 -44
- package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +0 -52
- package/pack/generated/claude/skills/rite-build/reference/evidence-standard.md +0 -45
- package/pack/generated/claude/skills/rite-build/reference/forge.md +0 -210
- package/pack/generated/claude/skills/rite-seal/reference/conventions-ledger.md +0 -60
- package/pack/generated/claude/skills/rite-ship/reference/adr-promotion.md +0 -9
- package/pack/generated/claude/skills/rite-ship/reference/ledger.md +0 -56
- package/pack/generated/codex/agents/devrites-forge-judge.toml +0 -128
- package/pack/generated/codex/hooks.json +0 -185
- package/pack/generated/codex/skills/devrites-api-interface/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-audit/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-browser-proof/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-debug-recovery/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-doubt/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-frontend-craft/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-interview/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +0 -44
- package/pack/generated/codex/skills/devrites-prose-craft/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +0 -71
- package/pack/generated/codex/skills/devrites-refresh-indexes/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-source-driven/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/devrites-ux-shape/agents/openai.yaml +0 -2
- package/pack/generated/codex/skills/rite-build/reference/evidence-standard.md +0 -45
- package/pack/generated/codex/skills/rite-build/reference/forge.md +0 -210
- package/pack/generated/codex/skills/rite-seal/reference/conventions-ledger.md +0 -60
- package/pack/generated/codex/skills/rite-ship/reference/adr-promotion.md +0 -9
- package/pack/generated/codex/skills/rite-ship/reference/ledger.md +0 -56
- package/scripts/build-binaries.sh +0 -75
- package/scripts/build-release-tarball.sh +0 -105
- package/scripts/check-authority-drift.py +0 -125
- package/scripts/check-cross-refs.py +0 -139
- package/scripts/check-generated-skill-budget.mjs +0 -42
- package/scripts/check-instruction-size-baseline.mjs +0 -88
- package/scripts/check-invocation-integrity.py +0 -115
- package/scripts/check-no-global-writes.sh +0 -66
- package/scripts/check-no-personal-paths.py +0 -50
- package/scripts/check-npm-audit.mjs +0 -110
- package/scripts/check-reference-governance.mjs +0 -83
- package/scripts/check-reply-contract.sh +0 -64
- package/scripts/check-rule-uniqueness.sh +0 -45
- package/scripts/devrites-detect.sh +0 -176
- package/scripts/grade-feature.sh +0 -204
- package/scripts/live-hosts/agent-result.schema.json +0 -231
- package/scripts/live-hosts/claude.sh +0 -87
- package/scripts/live-hosts/codex.sh +0 -85
- package/scripts/live-hosts/common.sh +0 -113
- package/scripts/live-hosts/fake-host.py +0 -257
- package/scripts/live-hosts/host-transport.py +0 -286
- package/scripts/npm-audit-exceptions.json +0 -26
- package/scripts/pin.sh +0 -249
- package/scripts/release-check.sh +0 -75
- package/scripts/run-agent-contract-evals.py +0 -1380
- package/scripts/run-behavioral-evals.sh +0 -196
- package/scripts/run-evals.sh +0 -132
- package/scripts/run-live-behavioral-evals.py +0 -1310
- package/scripts/run-outcome-evals.sh +0 -454
- package/scripts/run-routing-evals.py +0 -342
- package/scripts/run-tests.mjs +0 -232
- package/scripts/scan-pack-security.py +0 -209
- package/scripts/scan-supply-chain-iocs.py +0 -127
- package/scripts/skill-pruning-audit.mjs +0 -121
- package/scripts/skills-inventory.mjs +0 -125
- package/scripts/supply-chain-iocs.json +0 -11
- package/scripts/sync-version.sh +0 -54
- package/scripts/validate-agent-composition.py +0 -57
- package/scripts/validate-command-parity.py +0 -70
- package/scripts/validate-frontmatter.py +0 -218
- package/scripts/validate-skill-anatomy.py +0 -139
- package/scripts/validate-workflow-security.py +0 -184
- package/scripts/validate-workspace-schema.py +0 -800
- package/scripts/validate.sh +0 -354
- package/scripts/workflow_schema.py +0 -69
- /package/engine/testdata/fixtures/basic/devrites-root/{features → work}/auth-tokens/decisions.md +0 -0
- /package/engine/testdata/fixtures/basic/devrites-root/{features → work}/auth-tokens/plan.md +0 -0
- /package/engine/testdata/fixtures/basic/devrites-root/{features → work}/auth-tokens/spec.md +0 -0
- /package/engine/testdata/fixtures/basic/devrites-root/{features → work}/auth-tokens/tasks.md +0 -0
- /package/engine/testdata/fixtures/basic/devrites-root/{features → work}/search-ranking/spec.md +0 -0
|
@@ -0,0 +1,655 @@
|
|
|
1
|
+
# DevRites upstream workflow benchmark: 2026-08-01
|
|
2
|
+
|
|
3
|
+
This document records research and disposition. It does not replace
|
|
4
|
+
`CONTEXT.md`, accepted ADRs, or the canonical pack. New architecture selected
|
|
5
|
+
from this audit is recorded in
|
|
6
|
+
[ADR-0026](adr/0026-content-bound-proof-and-bounded-inputs.md).
|
|
7
|
+
|
|
8
|
+
## Baseline, method, and admission rule
|
|
9
|
+
|
|
10
|
+
The DevRites comparison baseline is
|
|
11
|
+
`403e1a60adf3ae32ee88009c417e6ffe015fc1aa`. Before selecting changes, the
|
|
12
|
+
nine repositories were cloned into a new temporary corpus from their recorded
|
|
13
|
+
default branches. The inventory procedure fetched tags, initialized recursive
|
|
14
|
+
submodules, recorded the exact HEAD and commit date, ran repository integrity
|
|
15
|
+
and clean-worktree checks, and inspected source, tests, workflow definitions,
|
|
16
|
+
install/update paths, documentation, history, and the top-level license. Every
|
|
17
|
+
clone was clean and usable. None contained a submodule.
|
|
18
|
+
|
|
19
|
+
A concept qualified only when it closed an observed DevRites gap, fit one
|
|
20
|
+
existing owner, preserved the fixed lifecycle and permission model, added no
|
|
21
|
+
unnecessary dependency or state plane, and admitted positive plus negative
|
|
22
|
+
proof. Repository content was treated as untrusted source material. No upstream
|
|
23
|
+
prompt, code, template, or documentation expression was copied.
|
|
24
|
+
|
|
25
|
+
All nine repositories carry the MIT license in their top-level `LICENSE`.
|
|
26
|
+
Conceptual reimplementation does not copy licensed expression. Any future copy
|
|
27
|
+
or substantial derivative would require retaining the applicable MIT notice and
|
|
28
|
+
reconciling DevRites' third-party notice before distribution.
|
|
29
|
+
|
|
30
|
+
## Exact source inventory
|
|
31
|
+
|
|
32
|
+
| ID | Source | Branch | Exact SHA | Tag state | Commit date | Clone state |
|
|
33
|
+
|---|---|---|---|---|---|---|
|
|
34
|
+
| S1 | [gstack](https://github.com/garrytan/gstack/tree/a3259400a366593e0c909dd9ac3e59752efd2488) | `main` | `a3259400a366593e0c909dd9ac3e59752efd2488` | no tag | `2026-07-14T18:33:46-07:00` | clean, usable, no submodules |
|
|
35
|
+
| S2 | [mattpocock/skills](https://github.com/mattpocock/skills/tree/2ab958093e83e0ec752e6c1c5932da465bf23e0c) | `main` | `2ab958093e83e0ec752e6c1c5932da465bf23e0c` | `v1.1.0` | `2026-07-28T10:18:17+01:00` | clean, usable, no submodules |
|
|
36
|
+
| S3 | [OpenSpec](https://github.com/Fission-AI/OpenSpec/tree/45cca5db6137ed209117cc70510eb3e057fb981b) | `main` | `45cca5db6137ed209117cc70510eb3e057fb981b` | `v1.7.0` | `2026-07-31T02:04:10Z` | clean, usable, no submodules |
|
|
37
|
+
| S4 | [Superpowers](https://github.com/obra/superpowers/tree/44c9b2d6e889982ac18c27d05a19fefe335194e1) | `main` | `44c9b2d6e889982ac18c27d05a19fefe335194e1` | `v6.2.0` | `2026-07-28T12:25:36-07:00` | clean, usable, no submodules |
|
|
38
|
+
| S5 | [Spec Kit](https://github.com/github/spec-kit/tree/d1e86f638277a99b82715c22c90558cd58d3cffd) | `main` | `d1e86f638277a99b82715c22c90558cd58d3cffd` | `v0.15.1` | `2026-07-31T12:45:15-05:00` | clean, usable, no submodules |
|
|
39
|
+
| S6 | [GSD](https://github.com/open-gsd/gsd-core/tree/640eaee16e08bc5426cec570871cc0503a6c7d4c) | `next` | `640eaee16e08bc5426cec570871cc0503a6c7d4c` | `v1.9.1` | `2026-08-01T12:12:20-04:00` | clean, usable, no submodules |
|
|
40
|
+
| S7 | [BMAD Method](https://github.com/bmad-code-org/BMAD-METHOD/tree/a35e4c30d59a8edd808c834610428714785d5847) | `main` | `a35e4c30d59a8edd808c834610428714785d5847` | `v6.10.0` metadata; HEAD is 44 commits past the tag | `2026-08-01T08:11:07-07:00` | clean, usable, no submodules |
|
|
41
|
+
| S8 | [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode/tree/41a4c0f77144c5beb5f5f000a89cff379c680606) | `main` | `41a4c0f77144c5beb5f5f000a89cff379c680606` | `v4.15.7` | `2026-07-23T04:44:59Z` | clean, usable, no submodules |
|
|
42
|
+
| S9 | [ECC](https://github.com/affaan-m/ECC/tree/e4e4163101f162881e628f300a9ca4e6a940bcea) | `main` | `e4e4163101f162881e628f300a9ca4e6a940bcea` | `v2.1.0` | `2026-07-29T14:11:01-04:00` | clean, usable, no submodules |
|
|
43
|
+
|
|
44
|
+
This inventory corrects the earlier report's stale GSD `d3305fc3` and BMAD
|
|
45
|
+
`e39cbbba` pins. GSD is intentionally pinned to its default `next` branch. BMAD's
|
|
46
|
+
package metadata still says 6.10.0, but the audited tree is not the tagged
|
|
47
|
+
v6.10.0 tree.
|
|
48
|
+
|
|
49
|
+
## DevRites baseline retained from the earlier comparison
|
|
50
|
+
|
|
51
|
+
Useful findings already present at the comparison baseline remain part of this
|
|
52
|
+
record:
|
|
53
|
+
|
|
54
|
+
- Review roles use one admitted outcome envelope: `findings`, `no-findings`, or
|
|
55
|
+
blocking `gap`. Confidence, exact evidence, reachable impact, and root
|
|
56
|
+
reconciliation remain the shared reviewer contract.
|
|
57
|
+
- Source intake requires provenance, one native owner, costs, parity impact,
|
|
58
|
+
positive and negative proof, and an explicit disposition. Another catalog or
|
|
59
|
+
runtime remains out of scope.
|
|
60
|
+
- The agent validator checks reviewer-contract loading and output shape;
|
|
61
|
+
frontmatter parsing rejects duplicate top-level keys before YAML parsing.
|
|
62
|
+
- npm package tests prove the exact runtime-script set against a real packed
|
|
63
|
+
tarball, and source installation repairs a partially present generated host
|
|
64
|
+
payload.
|
|
65
|
+
- The stronger existing owners remain unchanged: the 15-phase lifecycle, exact
|
|
66
|
+
fresh-context roles, sole exact-path writer, Markdown workspace, immutable
|
|
67
|
+
proof/review separation, fail-closed secret and path checks, and the offline
|
|
68
|
+
stdlib-only Go engine.
|
|
69
|
+
|
|
70
|
+
## Standardized repository dossiers
|
|
71
|
+
|
|
72
|
+
### S1: gstack
|
|
73
|
+
|
|
74
|
+
- **Purpose/philosophy:** gstack packages planning, implementation support,
|
|
75
|
+
review, browser QA, shipping, and retrospective work into an opinionated
|
|
76
|
+
high-velocity assistant environment.
|
|
77
|
+
- **Architecture/components:** A Bun/TypeScript runtime, generated role skills,
|
|
78
|
+
a Chromium/browser service, setup and update hooks, a ten-host adapter
|
|
79
|
+
registry, evaluation storage, and Git-backed long-lived context form one
|
|
80
|
+
integrated system (`ARCHITECTURE.md`, `hosts/`, `test/helpers/eval-store.ts`).
|
|
81
|
+
- **Strongest ideas:** Its live multi-host scenarios persist partial and final
|
|
82
|
+
results, compare historical cost and turn budgets, and expose coverage debt.
|
|
83
|
+
Review findings also carry confidence and concrete evidence.
|
|
84
|
+
- **End-to-end workflow:** A user can tune a plan, implement, run specialist
|
|
85
|
+
review, exercise browser QA, prepare a ship action, and write retrospective
|
|
86
|
+
context without leaving the suite.
|
|
87
|
+
- **Skill/agent patterns:** Host-specific roles are generated from shared
|
|
88
|
+
material and can fan work out, but reviewer, QA, and ship roles are allowed to
|
|
89
|
+
mutate more state than DevRites reviewers.
|
|
90
|
+
- **Spec/planning:** Product and executive plan lenses improve challenge quality;
|
|
91
|
+
they do not provide DevRites' durable requirement, traceability, and decision
|
|
92
|
+
contract.
|
|
93
|
+
- **Execution controls:** Browser automation, worktree use, and eval budgets are
|
|
94
|
+
concrete controls. Several fallback paths continue in the current worktree or
|
|
95
|
+
classify errors heuristically.
|
|
96
|
+
- **Proof/review:** Browser QA, self-verification regressions, and live model
|
|
97
|
+
comparisons are material strengths. Scheduled coverage is incomplete: the
|
|
98
|
+
audited TODO records only 9 of roughly 66 E2E files in periodic CI.
|
|
99
|
+
- **State/context:** Partial eval artifacts and Git-backed memory improve
|
|
100
|
+
continuity, at the cost of another mutable context authority.
|
|
101
|
+
- **Safety/failure handling:** Content, DNS, classifier, and parser paths can fail
|
|
102
|
+
open; shell assignments are later evaluated; setup may update in the
|
|
103
|
+
background; upgrade can hard-reset; worktree failure may fall back to the
|
|
104
|
+
current tree.
|
|
105
|
+
- **DX/docs:** The first-use path and task-oriented documentation are strong,
|
|
106
|
+
while the breadth of browser, tunnel, runtime, and memory services raises the
|
|
107
|
+
operational floor.
|
|
108
|
+
- **Extension model:** The typed host registry and specialist integrations are
|
|
109
|
+
effective for a many-host product but premature for DevRites' two maintained
|
|
110
|
+
hosts.
|
|
111
|
+
- **Install/update:** Setup installs Bun/browser dependencies and wires hooks;
|
|
112
|
+
session-time update behavior and destructive upgrade recovery are unsuitable
|
|
113
|
+
defaults.
|
|
114
|
+
- **Weaknesses/tradeoffs:** Integrated convenience comes with a daemon/browser
|
|
115
|
+
stack, telemetry and update coupling, mutable review paths, and large live-eval
|
|
116
|
+
maintenance.
|
|
117
|
+
- **Already present in DevRites:** Result admission, independent review, browser
|
|
118
|
+
proof, exact-role dispatch, evidence artifacts, runtime smokes, and bounded
|
|
119
|
+
recovery already cover the core safety intent.
|
|
120
|
+
- **Weaker/missing in DevRites:** DevRites lacks systematic budgeted live-host
|
|
121
|
+
scenario execution with coverage accounting and historical comparison.
|
|
122
|
+
- **Unsuitable concepts:** Browser/tunnel daemons, reviewer mutation, finding
|
|
123
|
+
quotas, background auto-update, telemetry, hard-reset upgrade, and a second
|
|
124
|
+
memory system are rejected.
|
|
125
|
+
- **License implication:** MIT permits adaptation with notice; this report copies
|
|
126
|
+
no implementation or prose. Direct reuse would require attribution review.
|
|
127
|
+
- **Native adaptation/disposition:** Defer a bounded live-host eval runner until
|
|
128
|
+
its recurring cost and security model have an owner. Retain the existing
|
|
129
|
+
reviewer-admission and browser-proof mechanisms; add no gstack runtime.
|
|
130
|
+
|
|
131
|
+
### S2: mattpocock/skills
|
|
132
|
+
|
|
133
|
+
- **Purpose/philosophy:** This repository is a curated skill library centered on
|
|
134
|
+
choosing the right skill, doing the necessary source work, loading references
|
|
135
|
+
only when needed, and defining completion.
|
|
136
|
+
- **Architecture/components:** Forty-one Markdown skills, a router, authoring
|
|
137
|
+
guidance and glossary, templates/scripts, and plugin metadata form a catalog
|
|
138
|
+
rather than a stateful workflow engine.
|
|
139
|
+
- **Strongest ideas:** Its authoring model asks authors to reduce routing
|
|
140
|
+
ambiguity, order instructions by need, state how the model corrects course,
|
|
141
|
+
define observable completion, and delete guidance that no longer changes
|
|
142
|
+
behavior.
|
|
143
|
+
- **End-to-end workflow:** A user selects a focused skill for specification,
|
|
144
|
+
tracer-bullet delivery, TDD, debugging, review, or handoff; the skill performs
|
|
145
|
+
its task and yields to another skill rather than advancing canonical state.
|
|
146
|
+
- **Skill/agent patterns:** Skills prefer references and concrete legwork, but
|
|
147
|
+
generic agents and catalog routing do not enforce DevRites' exact role and
|
|
148
|
+
permission boundaries.
|
|
149
|
+
- **Spec/planning:** Ticket, spec, and tracer-bullet guidance favors actionable
|
|
150
|
+
plans. It does not own a persistent acceptance/traceability schema.
|
|
151
|
+
- **Execution controls:** TDD and debugging procedures are instruction-enforced;
|
|
152
|
+
commits and external issue writes may occur without DevRites' fresh approval
|
|
153
|
+
boundary.
|
|
154
|
+
- **Proof/review:** Checkable completion and review guidance are useful, but the
|
|
155
|
+
audited repository has no validating test suite or CI for skill semantics.
|
|
156
|
+
- **State/context:** Handoff artifacts carry local continuity; there is no
|
|
157
|
+
canonical lifecycle cursor or evidence ledger.
|
|
158
|
+
- **Safety/failure handling:** Some flows assume authority to commit or write to
|
|
159
|
+
external trackers. An unfinished wizard handles environment and GitHub secrets
|
|
160
|
+
without a sufficient promotion boundary.
|
|
161
|
+
- **DX/docs:** The authoring glossary is compact and teachable. Router, docs,
|
|
162
|
+
skills, and version metadata contain observable drift.
|
|
163
|
+
- **Extension model:** Contributors add another skill or plugin entry. Importing
|
|
164
|
+
that open-ended catalog would duplicate DevRites' routed public rites.
|
|
165
|
+
- **Install/update:** Plugin distribution is simple, but package 1.1.0 and Claude
|
|
166
|
+
plugin 1.2.0 metadata disagree at the audited revision.
|
|
167
|
+
- **Weaknesses/tradeoffs:** Low ceremony aids contribution but leaves behavioral
|
|
168
|
+
regressions, permissions, and cross-surface drift largely unchecked.
|
|
169
|
+
- **Already present in DevRites:** Progressive references, routing budgets,
|
|
170
|
+
authoring validation, outcome evals, exact agents, TDD, debug recovery, review,
|
|
171
|
+
and handoff already implement the useful method.
|
|
172
|
+
- **Weaker/missing in DevRites:** The glossary is clearer than some DevRites
|
|
173
|
+
authoring prose, and semantic-drift negative fixtures could be stronger.
|
|
174
|
+
- **Unsuitable concepts:** A sibling skill catalog, generic agents, external issue
|
|
175
|
+
authority, unconditional commits, and secret-handling wizard defaults are
|
|
176
|
+
rejected.
|
|
177
|
+
- **License implication:** MIT permits reuse with notice. Only general method was
|
|
178
|
+
considered; no text or template was copied.
|
|
179
|
+
- **Native adaptation/disposition:** Retain the baseline skill-authoring owner and
|
|
180
|
+
its semantic validation. Merge terminology only when it shortens that owner;
|
|
181
|
+
do not add skills, agents, or distribution paths from this source.
|
|
182
|
+
|
|
183
|
+
### S3: OpenSpec
|
|
184
|
+
|
|
185
|
+
- **Purpose/philosophy:** OpenSpec treats a proposed change as a graph of durable
|
|
186
|
+
specification artifacts and folds accepted deltas back into a main spec set.
|
|
187
|
+
- **Architecture/components:** A TypeScript CLI, YAML artifact schemas, a
|
|
188
|
+
validated artifact DAG, generated assistant skills, delta parsing/folding,
|
|
189
|
+
change/spec stores, archive logic, and beta references/worksets make up the
|
|
190
|
+
system (`src/core/artifact-graph/`, `src/core/specs-apply.ts`).
|
|
191
|
+
- **Strongest ideas:** MODIFIED folding detects scenario loss, preserves multiple
|
|
192
|
+
scenarios, handles header conflicts, and supports idempotent early sync.
|
|
193
|
+
Archive pre-validates the resulting specs before writes.
|
|
194
|
+
- **End-to-end workflow:** Propose creates artifacts; apply drives implementation;
|
|
195
|
+
update or sync folds deltas; verify inspects the result; archive closes the
|
|
196
|
+
change.
|
|
197
|
+
- **Skill/agent patterns:** Generated skills adapt the artifact graph to multiple
|
|
198
|
+
assistants. The graph, rather than exact reviewer/writer roles, is the main
|
|
199
|
+
coordinator.
|
|
200
|
+
- **Spec/planning:** Main specifications plus ADDED, MODIFIED, and REMOVED deltas
|
|
201
|
+
are explicit and inspectable. Custom schemas allow a project to redefine the
|
|
202
|
+
artifact workflow.
|
|
203
|
+
- **Execution controls:** Artifact readiness is structural and can become DONE
|
|
204
|
+
when a generated file merely exists. Archive offers bypass flags and performs
|
|
205
|
+
sequential writes without repository-wide rollback.
|
|
206
|
+
- **Proof/review:** Verify is optional in the expanded profile and relies partly
|
|
207
|
+
on keyword/path inference instead of immutable executed evidence.
|
|
208
|
+
- **State/context:** Change directories, main specs, references, stores, and
|
|
209
|
+
worksets retain context. Beta cross-repository references can remain stale
|
|
210
|
+
until a user synchronizes them.
|
|
211
|
+
- **Safety/failure handling:** Prevalidation is strong, but user/project schemas
|
|
212
|
+
and followed schema-directory symlinks widen the prompt and supply-chain
|
|
213
|
+
boundary; archive bypasses weaken fail-closed behavior.
|
|
214
|
+
- **DX/docs:** A worked beginner transcript and inspectable change files make the
|
|
215
|
+
model approachable.
|
|
216
|
+
- **Extension model:** Custom schemas, adapters, stores, and worksets are broad by
|
|
217
|
+
design and would create a second workflow language in DevRites.
|
|
218
|
+
- **Install/update:** The CLI carries telemetry and self-update concerns that do
|
|
219
|
+
not belong in DevRites' offline engine boundary.
|
|
220
|
+
- **Weaknesses/tradeoffs:** Flexibility weakens uniform proof, permits
|
|
221
|
+
existence-only completion, and multiplies schema/runtime compatibility work.
|
|
222
|
+
- **Already present in DevRites:** Durable Markdown workspaces, Requirement and
|
|
223
|
+
Scenario grammar, capability deltas, native phase owners, Prove, Seal, and
|
|
224
|
+
reversible archive already cover the main lifecycle.
|
|
225
|
+
- **Weaker/missing in DevRites:** The current capability fold can lose prior
|
|
226
|
+
MODIFIED scenarios or source claims and lacks an explicit justified no-impact
|
|
227
|
+
form.
|
|
228
|
+
- **Unsuitable concepts:** A configurable artifact DAG, custom prompt schemas,
|
|
229
|
+
telemetry/self-update, heuristic optional verify, and broad adapter/store
|
|
230
|
+
registries are rejected.
|
|
231
|
+
- **License implication:** MIT allows reuse with notice. The selected behavior is
|
|
232
|
+
independently specified; no parser, schema, or prompt was copied.
|
|
233
|
+
- **Native adaptation/disposition:** Adopt loss-aware MODIFIED capability/source
|
|
234
|
+
preservation and an explicit no-impact declaration in the existing ledger
|
|
235
|
+
owner. Move the fold before Review/Seal; add no OpenSpec runtime.
|
|
236
|
+
|
|
237
|
+
### S4: Superpowers
|
|
238
|
+
|
|
239
|
+
- **Purpose/philosophy:** Superpowers is a skill-centered development method that
|
|
240
|
+
prescribes discovery, planning, isolated execution, TDD, debugging, review,
|
|
241
|
+
and completion checks.
|
|
242
|
+
- **Architecture/components:** Harness-neutral Markdown skills, adapters and
|
|
243
|
+
hooks, plan-scoped file workspaces, fresh subagent packets, shell tests, and a
|
|
244
|
+
visual brainstorming companion form the distribution.
|
|
245
|
+
- **Strongest ideas:** Plan-scoped file briefs, hashable review packets, narrow
|
|
246
|
+
re-review after a fix, honest null-result eval reporting, condition-based waits,
|
|
247
|
+
and backward root-cause tracing are practical mechanisms.
|
|
248
|
+
- **End-to-end workflow:** Route through the skill system, brainstorm and approve
|
|
249
|
+
a design, create an isolated worktree, write a full task plan, execute each task
|
|
250
|
+
with TDD and review/fix, run broad review, then integrate the branch.
|
|
251
|
+
- **Skill/agent patterns:** Fresh subagents receive bounded task and review
|
|
252
|
+
packets. The current task reviewer combines concerns despite older docs still
|
|
253
|
+
describing a two-stage review.
|
|
254
|
+
- **Spec/planning:** Plans can include full implementation detail and code, which
|
|
255
|
+
improves determinism but increases context and early commitment.
|
|
256
|
+
- **Execution controls:** Worktrees, per-task commits, test-first work, and
|
|
257
|
+
condition waits are explicit. Mandatory 1 percent routing and repeated
|
|
258
|
+
park-and-complete loops add fixed cost.
|
|
259
|
+
- **Proof/review:** Verification-before-completion and scoped re-review are sound;
|
|
260
|
+
several integration assertions do not prove all guarantees claimed by their
|
|
261
|
+
prompts.
|
|
262
|
+
- **State/context:** Plan-scoped files reduce cross-plan leakage and make review
|
|
263
|
+
packets reproducible without another database.
|
|
264
|
+
- **Safety/failure handling:** A raw-HTML visual server, weak content policy,
|
|
265
|
+
page-visible key, remote branding, and spoofable user-role markers make the
|
|
266
|
+
visual/bootstrap surfaces unsuitable as-is.
|
|
267
|
+
- **DX/docs:** Concrete TDD, async, and debugging recipes are useful, although
|
|
268
|
+
documentation and current combined-review behavior drift.
|
|
269
|
+
- **Extension model:** Harness ports and adapter-specific bootstraps widen reach
|
|
270
|
+
but increase parity and trust-boundary work.
|
|
271
|
+
- **Install/update:** Some install guidance asks an agent to mutate user or main
|
|
272
|
+
configuration; that conflicts with DevRites' managed local installer.
|
|
273
|
+
- **Weaknesses/tradeoffs:** The mandatory workflow is expensive for small changes,
|
|
274
|
+
overcommits plans to code, and couples method correctness to prompts and hooks.
|
|
275
|
+
- **Already present in DevRites:** Exact slice packets, one writer, test-first
|
|
276
|
+
behavior, causal debugging, independent review, immutable proof, bounded
|
|
277
|
+
correction, and host generation already cover its core strengths.
|
|
278
|
+
- **Weaker/missing in DevRites:** The baseline candidate packet is not bound to
|
|
279
|
+
content; evidence freshness uses modification times rather than file identity.
|
|
280
|
+
- **Unsuitable concepts:** Mandatory worktrees and task commits, global bootstrap,
|
|
281
|
+
five-round parking, raw-HTML visual tooling, and mutable-main installation are
|
|
282
|
+
rejected.
|
|
283
|
+
- **License implication:** MIT permits reuse with notice. The candidate identity
|
|
284
|
+
design is a clean DevRites format, not copied Superpowers code or prose.
|
|
285
|
+
- **Native adaptation/disposition:** Adopt a canonical content-bound candidate
|
|
286
|
+
manifest and scoped re-proof after candidate changes. Keep all enforcement in
|
|
287
|
+
existing Build, Prove, Polish, Review, Seal, and engine owners.
|
|
288
|
+
|
|
289
|
+
### S5: Spec Kit
|
|
290
|
+
|
|
291
|
+
- **Purpose/philosophy:** Spec Kit supplies a specification-first command set and
|
|
292
|
+
CLI that can project templates and workflows into many assistant hosts.
|
|
293
|
+
- **Architecture/components:** A Python CLI, command templates, constitution and
|
|
294
|
+
persistence guidance, presets, extensions, role bundles, a persisted YAML
|
|
295
|
+
workflow engine, and multi-host generators form the product.
|
|
296
|
+
- **Strongest ideas:** Its persistence taxonomy is easy to explain. Download and
|
|
297
|
+
ZIP handling enforce byte and path limits, check entry types, and have rollback
|
|
298
|
+
coverage.
|
|
299
|
+
- **End-to-end workflow:** Establish principles, specify, clarify, plan, derive
|
|
300
|
+
tasks, analyze consistency, implement, and converge; alternative YAML workflows
|
|
301
|
+
can select a different command graph.
|
|
302
|
+
- **Skill/agent patterns:** Commands are generated for multiple integrations and
|
|
303
|
+
may be grouped into roles. Permissions are described rather than enforced by
|
|
304
|
+
exact host profiles.
|
|
305
|
+
- **Spec/planning:** Constitution, structured feature specs, clarification,
|
|
306
|
+
checklists, plans, and tasks provide a familiar specification path.
|
|
307
|
+
- **Execution controls:** The generic engine stores workflow progress and exact
|
|
308
|
+
top-level resume state, but requirements are advisory and shell fields can be
|
|
309
|
+
interpolated without a capability boundary.
|
|
310
|
+
- **Proof/review:** Generated story tests can be optional, checklist gates can be
|
|
311
|
+
bypassed, and the built-in full workflow omits several clarify, convergence,
|
|
312
|
+
proof, and review stages.
|
|
313
|
+
- **State/context:** Feature directories, active context, workflow YAML, presets,
|
|
314
|
+
and persistence categories keep artifacts visible but introduce multiple ways
|
|
315
|
+
to define lifecycle truth.
|
|
316
|
+
- **Safety/failure handling:** Archive acquisition and extraction are strong.
|
|
317
|
+
Project hooks, raw shell interpolation, auto-commit behavior, and optional gates
|
|
318
|
+
are weaker trust boundaries.
|
|
319
|
+
- **DX/docs:** Multi-integration onboarding and persistence explanations are good;
|
|
320
|
+
some release/citation metadata trails the implementation.
|
|
321
|
+
- **Extension model:** Stackable presets, extensions, hooks, workflows, and role
|
|
322
|
+
bundles are useful for a framework product but duplicate DevRites' fixed rites.
|
|
323
|
+
- **Install/update:** The Python CLI bounds remote data and validates ZIPs before
|
|
324
|
+
extraction, with rollback tests for failed generation and updates.
|
|
325
|
+
- **Weaknesses/tradeoffs:** Broad configurability improves reach while making
|
|
326
|
+
permission, proof, and workflow guarantees conditional on project content.
|
|
327
|
+
- **Already present in DevRites:** Principles, explicit specifications,
|
|
328
|
+
Clarify/Define/Vet, active workspace state, convergence, Prove/Review/Seal, and
|
|
329
|
+
manifest-aware managed install already cover the workflow value.
|
|
330
|
+
- **Weaker/missing in DevRites:** Shell and Node acquisition paths lack complete
|
|
331
|
+
response, archive, member, expanded-size, and secure-temp bounds; checksum
|
|
332
|
+
failure can reach an unchecked fallback.
|
|
333
|
+
- **Unsuitable concepts:** A generic YAML workflow engine, project-directed hooks,
|
|
334
|
+
extension marketplace, advisory permissions, optional tests, and auto-commit
|
|
335
|
+
are rejected.
|
|
336
|
+
- **License implication:** MIT permits reuse with notice. DevRites adopts the
|
|
337
|
+
boundary requirements, not Spec Kit's downloader or templates.
|
|
338
|
+
- **Native adaptation/disposition:** Adopt exact-asset plus checksum-sidecar
|
|
339
|
+
acquisition, fixed transfer limits, secure temp failure, full archive preflight,
|
|
340
|
+
and mandatory release sidecars in existing bootstrap and release owners.
|
|
341
|
+
|
|
342
|
+
### S6: GSD
|
|
343
|
+
|
|
344
|
+
- **Purpose/philosophy:** GSD is a broad phase-oriented project workflow that
|
|
345
|
+
favors fresh-context agents, file-backed planning, checkpointed execution, and
|
|
346
|
+
user acceptance at the end of each phase.
|
|
347
|
+
- **Architecture/components:** Markdown workflows and agents, a Node/CommonJS
|
|
348
|
+
installer/runtime, `.planning` state, UAT predicates, workstreams, capability
|
|
349
|
+
metadata, migration journals, workflow fragments, and multi-host generation
|
|
350
|
+
support fifteen runtimes.
|
|
351
|
+
- **Strongest ideas:** Its UAT predicate demands positive evidence rather than
|
|
352
|
+
accepting the absence of failures. Read-only workspace inventory, truthful
|
|
353
|
+
progress metadata, install-script disclosure, and update impact previews are
|
|
354
|
+
also useful.
|
|
355
|
+
- **End-to-end workflow:** Initialize a project, research and roadmap it, discuss
|
|
356
|
+
and plan a phase, check the plan, execute tasks, verify and run UAT, then close
|
|
357
|
+
or continue the milestone.
|
|
358
|
+
- **Skill/agent patterns:** Researchers, planners, checkers, executors, and
|
|
359
|
+
verifiers operate in fresh contexts with file handoffs; workstreams can fan out
|
|
360
|
+
to several source writers.
|
|
361
|
+
- **Spec/planning:** Roadmaps, phase research, context, plans, and verification
|
|
362
|
+
criteria provide durable decomposition, though they do not use DevRites'
|
|
363
|
+
requirement/scenario and decision-coverage contract.
|
|
364
|
+
- **Execution controls:** Worktrees, checkpoints, atomic commits, recovery, and
|
|
365
|
+
partial fragment composition are explicit. Fragment conditions are validated
|
|
366
|
+
but were not selected dynamically at the audited revision.
|
|
367
|
+
- **Proof/review:** UAT fails when evidence is empty or vacuous, a stronger rule
|
|
368
|
+
than compile-only success. Plan checking and final verification are separate.
|
|
369
|
+
- **State/context:** `.planning` state, progress, checkpoints, handoffs, and
|
|
370
|
+
optional external memory provide continuity at the cost of a large state
|
|
371
|
+
vocabulary.
|
|
372
|
+
- **Safety/failure handling:** Typed capability trust and migration journals help.
|
|
373
|
+
Executable capability sources, hook bypass, parallel writers, and external
|
|
374
|
+
memory authority widen the trust boundary.
|
|
375
|
+
- **DX/docs:** The command set is extensive and well illustrated, but Node 18/22,
|
|
376
|
+
release, hook, and non-Claude parallel documentation disagree with code.
|
|
377
|
+
- **Extension model:** Workflows, fragments, capabilities, workstreams, and many
|
|
378
|
+
host targets create an open platform rather than a fixed method.
|
|
379
|
+
- **Install/update:** A large installer manages host payloads and migrations;
|
|
380
|
+
recent changes improve empty-cherry-pick and metadata behavior but increase the
|
|
381
|
+
compatibility surface.
|
|
382
|
+
- **Weaknesses/tradeoffs:** Coverage is broad, while installer size, documentation
|
|
383
|
+
drift, external capabilities, and parallel mutation make guarantees harder to
|
|
384
|
+
state and test.
|
|
385
|
+
- **Already present in DevRites:** The fixed lifecycle, fresh exact agents,
|
|
386
|
+
Markdown workspace, AFK/HITL, task slices, recovery, handoff, Prove, Review,
|
|
387
|
+
Seal, and managed local installation cover the main workflow strengths.
|
|
388
|
+
- **Weaker/missing in DevRites:** Proof guidance can accept skipped,
|
|
389
|
+
assertion-free, compile-only, or otherwise non-observable success. Cross-feature
|
|
390
|
+
status and update impact presentation could also improve.
|
|
391
|
+
- **Unsuitable concepts:** Parallel source writers, executable capability
|
|
392
|
+
marketplaces, external canonical memory, generic workstreams, and ambiguous
|
|
393
|
+
pseudo-numeric scoring are rejected.
|
|
394
|
+
- **License implication:** MIT permits reuse with notice. The admitted proof rule
|
|
395
|
+
is independently stated in DevRites terms.
|
|
396
|
+
- **Native adaptation/disposition:** Adopt positive observable/framework evidence
|
|
397
|
+
as a proof minimum. Defer read-only all-workspace inventory and update preview
|
|
398
|
+
until a concrete navigation problem justifies them; add no GSD runtime.
|
|
399
|
+
|
|
400
|
+
### S7: BMAD Method
|
|
401
|
+
|
|
402
|
+
- **Purpose/philosophy:** BMAD provides scale-adaptive planning and delivery
|
|
403
|
+
through role-focused workflows, explicit architecture decisions, readiness,
|
|
404
|
+
story execution, review, checkpoints, and retrospective learning.
|
|
405
|
+
- **Architecture/components:** A Node installer, module catalogs, YAML/Markdown
|
|
406
|
+
workflows, roles and skills, spec and architecture templates, memlog state,
|
|
407
|
+
verification-gap prompts, and custom-module acquisition form a configurable
|
|
408
|
+
method.
|
|
409
|
+
- **Strongest ideas:** Its architecture records bind choices to constraints, spec
|
|
410
|
+
validation includes a claim-preservation pass, and the installer deliberately
|
|
411
|
+
removes inherited Git variables that can retarget repository commands.
|
|
412
|
+
- **End-to-end workflow:** Choose a quick or full path, produce analysis and
|
|
413
|
+
product/architecture artifacts, check readiness, create and implement stories,
|
|
414
|
+
review them, checkpoint larger work, and run a retrospective.
|
|
415
|
+
- **Skill/agent patterns:** Named personas and concern-oriented reviewers provide
|
|
416
|
+
useful lenses, but inline writer fallback and quotas weaken separation and
|
|
417
|
+
honest null findings.
|
|
418
|
+
- **Spec/planning:** The spec kernel, two-pass validation, readiness, and explicit
|
|
419
|
+
architecture consequences are strong. Append-only memlog claims can become a
|
|
420
|
+
competing source of truth.
|
|
421
|
+
- **Execution controls:** Story workflows, checkpoints, prior-action follow-up,
|
|
422
|
+
and commits structure delivery; some flows assume authority to mutate and
|
|
423
|
+
commit without DevRites' approval ladder.
|
|
424
|
+
- **Proof/review:** Multi-lens gap review is useful. A recent blanket exclusion of
|
|
425
|
+
source-text and model-output checks would miss DevRites' executable guidance,
|
|
426
|
+
schema, and eval surfaces.
|
|
427
|
+
- **State/context:** Product, architecture, story, checkpoint, retrospective, and
|
|
428
|
+
memlog artifacts preserve context, with more mutable owners than DevRites.
|
|
429
|
+
- **Safety/failure handling:** Git environment filtering addresses a real
|
|
430
|
+
retargeting risk. In contrast, the custom SSH source parser permits shell
|
|
431
|
+
metacharacters before `execSync`, and custom modules can run install scripts.
|
|
432
|
+
- **DX/docs:** Many roles and routes cover projects of different sizes. The audited
|
|
433
|
+
HEAD reports 6.10.0 metadata but is 44 commits beyond the v6.10.0 tag.
|
|
434
|
+
- **Extension model:** Custom modules and remote sources make the method open, but
|
|
435
|
+
also introduce unverified code and lifecycle execution.
|
|
436
|
+
- **Install/update:** The Node installer composes modules and filters Git
|
|
437
|
+
environment state; custom-source and dependency installation remain high-risk
|
|
438
|
+
edges.
|
|
439
|
+
- **Weaknesses/tradeoffs:** Configurability, personas, memlog, quotas, and module
|
|
440
|
+
loading add competing authority and supply-chain exposure.
|
|
441
|
+
- **Already present in DevRites:** Frame/Spec/Define/Vet, binding decisions,
|
|
442
|
+
exact-role review, checkpointed Build, Prove, Seal/Ship separation, and Learn
|
|
443
|
+
already implement the strongest workflow concepts.
|
|
444
|
+
- **Weaker/missing in DevRites:** Both Go Git subprocess sites and production shell
|
|
445
|
+
Git calls inherit retargeting `GIT_*` variables. Capability/source folding can
|
|
446
|
+
also lose earlier claims.
|
|
447
|
+
- **Unsuitable concepts:** Finding quotas, blanket source-test exclusion, inline
|
|
448
|
+
writer fallback, auto-commit, memlog authority, remote module loading, and the
|
|
449
|
+
custom SSH parser are rejected.
|
|
450
|
+
- **License implication:** MIT permits reuse with notice. DevRites adopts the
|
|
451
|
+
security property and preservation criterion, not BMAD implementation text.
|
|
452
|
+
- **Native adaptation/disposition:** Adopt one Go and one shell Git-environment
|
|
453
|
+
policy with dynamic config-pair parity; merge claim preservation into the
|
|
454
|
+
existing capability fold. Add no BMAD module or state surface.
|
|
455
|
+
|
|
456
|
+
### S8: oh-my-claudecode
|
|
457
|
+
|
|
458
|
+
- **Purpose/philosophy:** oh-my-claudecode is a hook-driven Claude orchestration
|
|
459
|
+
runtime for autonomous and team execution, iterative recovery, verification,
|
|
460
|
+
provider routing, and cancellation.
|
|
461
|
+
- **Architecture/components:** TypeScript commands, skills, agents, ambient hooks,
|
|
462
|
+
Team, Autopilot, Ralph, UltraQA, state and cancellation stores, worktree locks,
|
|
463
|
+
provider routing, installer/update code, and benchmarks form overlapping modes.
|
|
464
|
+
- **Strongest ideas:** Named-workflow resume validates content and transcript
|
|
465
|
+
identity, candidate state uses SHA-256 in critical paths, and commit-time checks
|
|
466
|
+
reauthenticate what is about to ship.
|
|
467
|
+
- **End-to-end workflow:** Magic keywords or commands choose a mode; Autopilot
|
|
468
|
+
plans and executes, Team fans out work, Ralph iterates, UltraQA checks results,
|
|
469
|
+
and cancel/state commands manage long-running sessions.
|
|
470
|
+
- **Skill/agent patterns:** Nested workers and provider-selected agents increase
|
|
471
|
+
throughput, while worker permissions are advisory rather than exact
|
|
472
|
+
host-enforced source boundaries.
|
|
473
|
+
- **Spec/planning:** Mode-specific planning exists, but no single requirement,
|
|
474
|
+
decision, traceability, and evidence chain matches the DevRites workspace.
|
|
475
|
+
- **Execution controls:** Cross-platform locks, worktrees, resume validation,
|
|
476
|
+
retries, cancellation, and provider routing are useful; overlapping modes make
|
|
477
|
+
authority and stop conditions hard to reason about.
|
|
478
|
+
- **Proof/review:** UltraQA and iterative review provide repeated checks, but some
|
|
479
|
+
approvals depend on model text or caller-supplied verdicts rather than frozen
|
|
480
|
+
executable proof.
|
|
481
|
+
- **State/context:** Hook state and transcripts support recovery. Documented
|
|
482
|
+
UltraQA paths and actual runtime paths drift.
|
|
483
|
+
- **Safety/failure handling:** Security protections default off in places, CI uses
|
|
484
|
+
mutable action tags, external teams have advisory permissions, and silent
|
|
485
|
+
update installs an unpinned npm latest release.
|
|
486
|
+
- **DX/docs:** Many modes are discoverable, but skill counts, state paths, and
|
|
487
|
+
claimed benchmark savings disagree with checked-in evidence.
|
|
488
|
+
- **Extension model:** Hooks, providers, modes, agents, and keyword routing make an
|
|
489
|
+
extensible runtime at the cost of a large implicit control surface.
|
|
490
|
+
- **Install/update:** Plugin installation is convenient; the silent floating
|
|
491
|
+
updater and checksum gaps conflict with DevRites release requirements.
|
|
492
|
+
- **Weaknesses/tradeoffs:** Autonomy and provider flexibility add ambient hooks,
|
|
493
|
+
nested modes, heuristic routing, mutable updates, and evidence claims that are
|
|
494
|
+
difficult to reproduce.
|
|
495
|
+
- **Already present in DevRites:** AFK/HITL, exact native agents, causal recovery,
|
|
496
|
+
immutable Prove/Review/Seal, cancellation by the host, managed checksummed
|
|
497
|
+
acquisition, locks, and runtime smokes cover the useful intent.
|
|
498
|
+
- **Weaker/missing in DevRites:** Evidence freshness binds modification time, not
|
|
499
|
+
candidate bytes, path state, or executable mode. Live reviewer eval fixtures
|
|
500
|
+
are also limited.
|
|
501
|
+
- **Unsuitable concepts:** Ambient hooks, magic routing, nested team/autopilot
|
|
502
|
+
modes, heuristic provider routing, security-off defaults, and floating
|
|
503
|
+
auto-update are rejected.
|
|
504
|
+
- **License implication:** MIT permits reuse with notice. The selected digest and
|
|
505
|
+
manifest format is original DevRites design.
|
|
506
|
+
- **Native adaptation/disposition:** Adopt content-addressed candidate identity
|
|
507
|
+
shared by Candidate and Seal, plus staged/committed reauthentication before
|
|
508
|
+
outbound Git. Defer broader live-model evaluation; add no OMC mode or hook
|
|
509
|
+
runtime.
|
|
510
|
+
|
|
511
|
+
### S9: ECC
|
|
512
|
+
|
|
513
|
+
- **Purpose/philosophy:** ECC combines a large cross-harness skill and agent
|
|
514
|
+
catalog with contract-first development, memory guidance, install profiles,
|
|
515
|
+
hooks, dashboards, and an alpha orchestration control plane.
|
|
516
|
+
- **Architecture/components:** The audited tree contains 281 skills, 67 agents,
|
|
517
|
+
rules and commands, manual host mirrors, JavaScript install lifecycle code,
|
|
518
|
+
session/memory stores, hooks, and a Rust `ecc2` daemon/TUI/worktree system.
|
|
519
|
+
- **Strongest ideas:** Contract-first integration uses one canonical API, event,
|
|
520
|
+
or schema artifact and asks both provider and consumer to test it. Typed review
|
|
521
|
+
outcomes, scoped memory trust, and installer preview are also useful.
|
|
522
|
+
- **End-to-end workflow:** Users compose planning, contract, implementation,
|
|
523
|
+
review, and memory skills; profiles install subsets; ECC2 can schedule agents,
|
|
524
|
+
worktrees, output capture, and merge work.
|
|
525
|
+
- **Skill/agent patterns:** A broad specialist catalog and cross-host mirrors offer
|
|
526
|
+
coverage, but manual duplication and parallel writers conflict with DevRites'
|
|
527
|
+
generated exact-role model.
|
|
528
|
+
- **Spec/planning:** Contract-first guidance grounds an integration slice in one
|
|
529
|
+
boundary artifact; general plans and annotations do not provide a single fixed
|
|
530
|
+
lifecycle schema.
|
|
531
|
+
- **Execution controls:** Profiles, hooks, worktrees, a scheduler, merge queue,
|
|
532
|
+
daemon, and TUI provide many controls. The Rust control plane is not part of
|
|
533
|
+
main CI at the audited revision.
|
|
534
|
+
- **Proof/review:** Provider and consumer tests against the same artifact close a
|
|
535
|
+
real integration gap. Universal coverage targets and catalog-level review
|
|
536
|
+
recipes are too generic for all projects.
|
|
537
|
+
- **State/context:** Session vaults, unified memory, dashboards, and SQLite retain
|
|
538
|
+
context, creating a second authority beside project files.
|
|
539
|
+
- **Safety/failure handling:** Written supply-chain and memory trust guidance is
|
|
540
|
+
strong. Floating `npx` MCP packages, clone-time npm install, always-on hooks,
|
|
541
|
+
live-web defaults, and delayed output-persistence errors contradict that
|
|
542
|
+
posture.
|
|
543
|
+
- **DX/docs:** Profiles and quick references make the catalog approachable, but
|
|
544
|
+
v2.1.0 metadata, a changelog ending at 2.0.0, and stale alpha docs show drift.
|
|
545
|
+
- **Extension model:** Skills, agents, rules, commands, MCPs, dashboards, profiles,
|
|
546
|
+
and the Rust runtime form a broad plugin platform.
|
|
547
|
+
- **Install/update:** JavaScript lifecycle code previews and applies profiles;
|
|
548
|
+
manual host mirrors and optional runtime/tool downloads multiply parity work.
|
|
549
|
+
- **Weaknesses/tradeoffs:** Breadth creates large validation, documentation,
|
|
550
|
+
supply-chain, and state costs. The daemon/TUI/worktree plane duplicates native
|
|
551
|
+
host orchestration.
|
|
552
|
+
- **Already present in DevRites:** Exact reviewers and outcome admission, scoped
|
|
553
|
+
memory promotion in Learn, fresh-context planning and proof, installer
|
|
554
|
+
manifests, one writer, and generated Claude/Codex parity already cover most
|
|
555
|
+
strengths.
|
|
556
|
+
- **Weaker/missing in DevRites:** A boundary-changing slice need not prove that
|
|
557
|
+
provider and consumer tests consume the same canonical contract artifact.
|
|
558
|
+
- **Unsuitable concepts:** The Rust daemon/TUI/scheduler/merge queue, parallel
|
|
559
|
+
writers, broad hooks, duplicate memory/session stores, floating MCP defaults,
|
|
560
|
+
universal coverage, dashboards, and manual mirrors are rejected.
|
|
561
|
+
- **License implication:** MIT permits reuse with notice. The conditional
|
|
562
|
+
provider/consumer rule is independently specified; no ECC content was copied.
|
|
563
|
+
- **Native adaptation/disposition:** Adopt a conditional shared-contract proof
|
|
564
|
+
rule in existing Spec/Plan/Prove/testing owners. Add no registry, daemon,
|
|
565
|
+
profile, agent, or state store.
|
|
566
|
+
|
|
567
|
+
## Cross-project adoption matrix
|
|
568
|
+
|
|
569
|
+
The matrix is split into linked tables so each cost and proof field remains
|
|
570
|
+
readable. `Adopt` means planned by ADR-0026. `Merge` means strengthen an existing
|
|
571
|
+
owner without new public surface. `Defer` requires new evidence. `Reject` appears
|
|
572
|
+
in each dossier for duplicated or unsafe systems.
|
|
573
|
+
|
|
574
|
+
### Decision, owner, and validation
|
|
575
|
+
|
|
576
|
+
| ID | Source | Exact SHA | Concept and problem | Current DevRites handling | Native adaptation | Decision and implementation owner/location | Validation method |
|
|
577
|
+
|---|---|---|---|---|---|---|---|
|
|
578
|
+
| C1 | Superpowers; oh-my-claudecode | `44c9b2d6e889982ac18c27d05a19fefe335194e1`; `41a4c0f77144c5beb5f5f000a89cff379c680606` | Candidate/evidence identity; mtime and heuristic path extraction do not bind proved bytes. | Seal compares proof and touched-file mtimes; missing manifests and listed files can pass. Ship later changes candidate files. | Explicit `present`/`deleted` manifest, no-files marker, normalized bounded closure, streaming versioned digest, shared Candidate/Seal helper, pre-Review closure, affected re-proof, identical exact digest lines in evidence, review, seal, and browser evidence when present, plus Ship and staged/committed checks. | **Adopt.** Go candidate/evidence owner in `engine/internal/lib/` and `engine/internal/gate/`; native Prove/Polish/Review/Seal/Ship and workspace schema in `pack/.claude/`. | Positive digest stability; byte/path/state/type/mode mutations; malformed/legacy manifests; bounds; symlink/special-file rejection; missing or mismatched evidence/review/seal/browser lines; routing and Git-ladder contract tests. |
|
|
579
|
+
| C2 | BMAD Method | `a35e4c30d59a8edd808c834610428714785d5847` | Inherited Git variables can retarget repository, objects, refs, config, or pathspec despite `git -C`. | Two Go subprocess sites and production shell Git sites inherit ambient `GIT_*`. | One shared Go sanitizer and one sourced shell sanitizer; preserve unrelated variables; remove retargeting variables; keep dynamic config key/value pairs in parity. | **Adopt.** Go subprocess owners in `engine/internal/lib/` and `engine/internal/rootfacts/`; shared shell policy under `scripts/` used by all production shell Git callers. | Poisoned two-repository probes; per-variable table tests; dynamic-pair malformed/preserve/drop cases; Go/shell parity; root and secret-scan regression. |
|
|
580
|
+
| C3 | Spec Kit | `d1e86f638277a99b82715c22c90558cd58d3cffd` | Unbounded or unchecked acquisition can exhaust resources or bypass provenance. | Release checksums exist, but shell/Node transfers lack complete bounds, temp fallback can be predictable, and unchecked source/tag/raw fallbacks remain. | Exact asset plus mandatory SHA-256 sidecar, fixed transfer ceilings, secure private temp or fail, complete one-prefix archive preflight, no unchecked fallback, mandatory release sidecars. | **Adopt.** `install.sh`, `update.sh`, `scripts/install-lib.sh`, `bin/devrites.mjs`, release builder/check, and existing install/update/release tests. | Oversized metadata/checksum/archive/binary; missing/incorrect sidecar; temp failure; extra prefix/member/type; traversal; symlink/special file; expanded-size limit; release missing-sidecar failure; curl-plus-tar smoke. |
|
|
581
|
+
| C4 | OpenSpec; BMAD Method | `45cca5db6137ed209117cc70510eb3e057fb981b`; `a35e4c30d59a8edd808c834610428714785d5847` | MODIFIED capability folding can lose prior scenarios or source claims; no-impact changes are implicit. | `spec-grammar.md` and the capability ledger own deltas, but preservation and no-impact are not explicit enough. | Preserve prior scenarios and claims unless explicitly replaced; require justified no-impact; perform every candidate-affecting fold before Review/Seal. | **Merge.** Existing capability/spec owners in `pack/.claude/skills/rite-polish/`, shared spec grammar/schema, and native contract tests. | Multiple-scenario and foreign-tail fixtures; explicit replacement; duplicate/conflict; no-impact justification; Ship mutation rejection; generated-host parity. |
|
|
582
|
+
| C5 | GSD | `640eaee16e08bc5426cec570871cc0503a6c7d4c` | A green command can be skipped, assertion-free, compile-only, or otherwise vacuous. | Prove records commands and acceptance links, but positive observable/framework evidence is not uniformly mandatory. | Require executed positive observation or framework assertion; classify skipped, vacuous, compile-only, assertion-free, and non-executed results as unproven. | **Adopt.** Canonical testing and Prove standards, traceability/evidence schema, reviewer/test analyst, and routing/native contract tests. | Fixtures for each vacuous form plus real positive unit, integration, browser, and textual-artifact evidence; test-integrity review; Seal rejection. |
|
|
583
|
+
| C6 | ECC | `e4e4163101f162881e628f300a9ca4e6a940bcea` | Provider and consumer can test different assumptions about one API/event/schema boundary. | Traceability can name tests, but it does not require both sides to consume one canonical artifact. | When a boundary changes, identify one canonical contract artifact and require provider plus consumer tests against it; otherwise mark the rule not applicable. | **Adopt conditionally.** Existing Spec/Plan/traceability/testing/Prove owners; no registry or new phase. | Provider-only, consumer-only, duplicated-artifact, divergent-artifact, and both-sides-positive fixtures; not-applicable non-boundary slice. |
|
|
584
|
+
| C7 | gstack; oh-my-claudecode | `a3259400a366593e0c909dd9ac3e59752efd2488`; `41a4c0f77144c5beb5f5f000a89cff379c680606` | Static eval schemas do not measure recurring live-host behavior, cost, or regressions. | Opt-in Claude/Codex runtime smokes exist; behavioral evals mostly validate deterministic fixtures and shape. | Possible bounded runner with explicit scenario coverage, cost/turn caps, partial/final persistence, clean negatives, and comparison history. | **Defer.** Would belong beside existing isolated runtime smokes and evals only after an owner accepts recurring cost and privacy obligations. | Pilot with fixed scenarios, budget exhaustion, interrupted partial state, clean negative, known flaw, both hosts, and reproducibility review. |
|
|
585
|
+
| C8 | mattpocock/skills | `2ab958093e83e0ec752e6c1c5932da465bf23e0c` | Skill guidance can be verbose or drift semantically across router, docs, and body. | DevRites has one authoring standard, validators, trigger/outcome evals, size budgets, and generated parity. | Tighten routing, instruction ordering, course-correction, completion, and deletion rules only when the change shortens the existing owner; add negative drift fixtures when a real recurrence appears. | **Merge existing; no new surface.** `pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md`, authoring evals, and validators. | Existing routing/outcome/size/parity gates plus a targeted negative fixture for any admitted drift rule. |
|
|
586
|
+
| C9 | GSD | `640eaee16e08bc5426cec570871cc0503a6c7d4c` | Users may lack one read-only view across workspaces and an update-impact preview. | `/rite-status` is active-workspace focused; installer/update checks compare local candidates without a broad presentation layer. | Consider a read-only inventory or changelog preview within current Status/installer owners, without storing another index. | **Defer.** Current status and installer/update paths; no new command until a concrete navigation or update failure is demonstrated. | Large/malformed workspace set, no-workspace case, stale ACTIVE, read-only assertion, update with and without material changes. |
|
|
587
|
+
| C10 | DevRites baseline | `403e1a60adf3ae32ee88009c417e6ffe015fc1aa` | Invocation integrity misclassifies the literal `devrites-orchestrator` profile as a skill. | The baseline gate reports a false failure. | Classify that exact profile as a non-skill without weakening other invocation checks. | **Adopt.** `scripts/check-invocation-integrity.py` and its focused regression fixture. | Literal profile passes; real undeclared skill invocation still fails; full invocation-integrity gate. |
|
|
588
|
+
| C11 | DevRites baseline | `403e1a60adf3ae32ee88009c417e6ffe015fc1aa` | GHSA-mh99-v99m-4gvg temporary exception has stale range/expiry data. | `scripts/npm-audit-exceptions.json` can fail by date or hide the wrong dependency path. | Revalidate installed ancestry; remove when patched, else retain the exact affected path with owner, reason, and short expiry. | **Adopt.** npm audit checker, exception data, and supply-chain tests. | Patched ancestry without exception; exact vulnerable ancestry with live exception; wrong path/range and expired exception fail. |
|
|
589
|
+
|
|
590
|
+
### Benefits, risks, cost, compatibility, security, and license
|
|
591
|
+
|
|
592
|
+
| ID | Benefit | Regression risk | Maintenance/complexity cost | Compatibility | Security | License |
|
|
593
|
+
|---|---|---|---|---|---|---|
|
|
594
|
+
| C1 | Proof, review, and seal bind the exact candidate and survive harmless timestamp changes. | Serialization, normalization, or fixed-line drift could invalidate sound evidence or miss a platform ambiguity. | One versioned format, one shared helper, exact-line readers, migration guidance, and manifest fixtures. | Public rites stay; old touched/evidence/review/seal records must refresh before a new Seal. | Fails closed on malicious paths, types, sizes, state mismatch, digest mismatch, and post-proof mutation. | Clean-room format; MIT sources require no notice change for concepts alone. |
|
|
595
|
+
| C2 | Every Git caller targets the intended repository with one auditable rule. | Over-filtering could remove a legitimate Git behavior; under-filtering leaves retargeting. | Small shared Go/shell tables plus parity tests. | Unrelated Git variables remain; callers retain current commands and output. | Closes repository, object, ref, config, and pathspec environment injection. | Security property only; no copied implementation. |
|
|
596
|
+
| C3 | Bootstrap remains available without accepting unauthenticated or resource-unbounded input. | Bad limits or archive assumptions could reject a valid release. | Bounds, one preflight parser per edge, release sidecar enforcement, and hostile fixtures. | curl plus tar remain sufficient; unchecked tag/main/raw fallback is intentionally removed. | Improves provenance, temp safety, traversal/type safety, and resource exhaustion resistance. | Requirements adapted from observed behavior, no copied downloader. |
|
|
597
|
+
| C4 | Capability history and source claims survive routine MODIFIED folds. | Over-preservation could retain intentionally removed content without an explicit replacement marker. | A few semantic fixtures and earlier routing; no new store. | Existing ledger/spec files remain; Ship stops mutating candidate files. | Reduces silent loss and unsupported provenance claims. | Clean-room behavior, no upstream schemas or prompts. |
|
|
598
|
+
| C5 | Green proof means an observable claim was checked. | Some legitimate compile-only slices need a precise observable claim or justified non-applicability. | Guidance, reviewer logic, and focused fixtures; no runtime dependency. | Existing test runners remain; weak historical evidence must be refreshed when relied upon. | Reduces false assurance, including in security and supply-chain gates. | General testing rule, no copied expression. |
|
|
599
|
+
| C6 | Detects integration drift where isolated tests agree with themselves but not each other. | Forcing it on non-boundary work would add ceremony, so applicability must be explicit. | Conditional traceability fields and paired fixtures; no registry. | Additive to existing specs/tests; projects keep their canonical artifact format. | Narrows schema/API substitution and unreviewed boundary drift. | General contract-testing rule, no copied artifact or prompt. |
|
|
600
|
+
| C7 | Could measure real host quality, cost, and regression instead of fixture shape. | Network/model nondeterminism, privacy exposure, rate limits, and false comparisons. | High recurring scenario, provider, storage, budget, and triage cost. | Opt-in only if admitted; no current workflow change. | Requires strict secret/privacy isolation and bounded agency. | Concept only; any future harness must remain clean-room. |
|
|
601
|
+
| C8 | Keeps skill authoring concise and makes semantic drift easier to name. | Vocabulary churn can add prose without changing behavior. | Low if merged only when deleting more text than it adds. | No public or runtime change. | Neutral except clearer authority and completion boundaries. | Conceptual terminology should be independently phrased. |
|
|
602
|
+
| C9 | Improves navigation and update awareness without changing workspaces. | A broad scan can be slow or expose unrelated workspace names. | Moderate presentation and hostile-workspace tests. | Can be read-only and additive inside current owners. | Must preserve path containment and avoid external writes. | General product behavior, no copied code. |
|
|
603
|
+
| C10 | Removes one false baseline failure while retaining the skill-invocation guard. | A broad exception could hide real undeclared skills. | One exact classification and focused test. | No public change. | Preserves gate signal without weakening coverage. | DevRites-local repair. |
|
|
604
|
+
| C11 | Keeps npm audit exceptions exact, current, and temporary. | Removing too early can break release; extending too broadly can hide exposure. | Periodic ancestry review until patched. | No runtime API change. | Direct supply-chain improvement. | DevRites-local dependency governance. |
|
|
605
|
+
|
|
606
|
+
### Bounded qualitative scores
|
|
607
|
+
|
|
608
|
+
Scores use 1 (poor) through 5 (strong). For simplicity/maintainability and
|
|
609
|
+
context efficiency, a higher score means lower ongoing cost.
|
|
610
|
+
|
|
611
|
+
| ID | User value | Reliability | Fit | Simplicity / maintainability | Testability | Security | Context efficiency | Extensibility |
|
|
612
|
+
|---|---:|---:|---:|---:|---:|---:|---:|---:|
|
|
613
|
+
| C1 | 5 | 5 | 5 | 4 | 5 | 5 | 5 | 4 |
|
|
614
|
+
| C2 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 4 |
|
|
615
|
+
| C3 | 5 | 5 | 5 | 4 | 5 | 5 | 5 | 3 |
|
|
616
|
+
| C4 | 4 | 4 | 5 | 5 | 5 | 4 | 5 | 4 |
|
|
617
|
+
| C5 | 5 | 5 | 5 | 5 | 5 | 5 | 4 | 4 |
|
|
618
|
+
| C6 | 4 | 5 | 5 | 4 | 5 | 4 | 4 | 5 |
|
|
619
|
+
| C7 | 3 | 3 | 3 | 1 | 3 | 2 | 2 | 4 |
|
|
620
|
+
| C8 | 3 | 3 | 5 | 4 | 4 | 3 | 5 | 4 |
|
|
621
|
+
| C9 | 2 | 3 | 3 | 3 | 4 | 3 | 4 | 3 |
|
|
622
|
+
| C10 | 4 | 5 | 5 | 5 | 5 | 4 | 5 | 2 |
|
|
623
|
+
| C11 | 5 | 5 | 5 | 4 | 5 | 5 | 5 | 3 |
|
|
624
|
+
|
|
625
|
+
## Source-to-DevRites traceability
|
|
626
|
+
|
|
627
|
+
| Source | Material DevRites strength retained or admitted | Duplication explicitly rejected or deferred |
|
|
628
|
+
|---|---|---|
|
|
629
|
+
| gstack | Existing confidence/evidence reviewer admission and browser proof; live-host eval remains a bounded future candidate. | Browser/tunnel daemon, mutable reviewers, telemetry, auto-update, and second memory store. |
|
|
630
|
+
| mattpocock/skills | Existing skill-authoring, progressive references, routing budgets, and behavior evals. | Parallel catalog, generic agents, external issue authority, and secret wizard. |
|
|
631
|
+
| OpenSpec | Existing capability deltas and Markdown workspace; loss-aware preservation and no-impact form admitted. | Custom artifact DAG, schema runtime, telemetry, and broad stores/adapters. |
|
|
632
|
+
| Superpowers | Existing exact slice packets, TDD/debug/review; content-bound candidate identity admitted. | Mandatory worktrees/commits, global bootstrap, and visual server. |
|
|
633
|
+
| Spec Kit | Existing principles, structured planning, and lifecycle gates; bounded verified acquisition admitted. | YAML workflow engine, extension marketplace, hooks, auto-commit, and optional proof. |
|
|
634
|
+
| GSD | Existing fresh agents, file state, recovery, and Prove; positive non-vacuous evidence admitted. | Parallel writers, executable capabilities, external memory authority, and generic workstreams. |
|
|
635
|
+
| BMAD Method | Existing binding decisions, readiness, review, and Learn; Git sanitation and claim preservation admitted. | Finding quotas, inline writer, memlog authority, auto-commit, and remote modules. |
|
|
636
|
+
| oh-my-claudecode | Existing AFK/recovery and frozen Prove/Review/Seal; content-addressed candidate checks admitted. | Ambient hooks, magic modes, provider routing, security-off defaults, and floating update. |
|
|
637
|
+
| ECC | Existing exact reviewers, memory promotion, installer manifest, and one writer; conditional shared-contract proof admitted. | Rust daemon/TUI/scheduler, parallel writers, duplicate state, broad hooks, MCP defaults, and manual mirrors. |
|
|
638
|
+
|
|
639
|
+
## Selected cohesive architecture
|
|
640
|
+
|
|
641
|
+
ADR-0026 groups the admitted changes around one invariant: every consequential
|
|
642
|
+
operation must bind bounded input to the exact object it claims to validate. The
|
|
643
|
+
implementation keeps the public lifecycle and owners intact, adds only the
|
|
644
|
+
read-only `check candidate` primitive, closes the candidate in Polish before
|
|
645
|
+
Review, and requires `evidence.md`, `review.md`, `seal.md`, plus
|
|
646
|
+
`browser-evidence.md` when present, to carry the same exact digest. Ship rechecks
|
|
647
|
+
that identity before Git and remains candidate-read-only. The architecture also
|
|
648
|
+
sanitizes all Git targeting, verifies and bounds acquisition, strengthens the
|
|
649
|
+
existing capability and proof contracts, and repairs the two baseline gates.
|
|
650
|
+
|
|
651
|
+
No repository is adopted as a framework. No new phase, skill, agent, dependency,
|
|
652
|
+
daemon, scheduler, registry, workflow language, database, or state plane is
|
|
653
|
+
admitted. The guard locations named in ADR-0026 are planned validation targets;
|
|
654
|
+
this research record does not claim that implementation or those tests already
|
|
655
|
+
pass.
|