devrites 5.14.4 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (637) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/NOTICE.md +6 -4
  3. package/README.md +77 -16
  4. package/SECURITY.md +25 -11
  5. package/bin/devrites.mjs +49 -15
  6. package/docs/adr/0001-go-engine-as-control-plane.md +6 -3
  7. package/docs/adr/0029-v5-workspace-schema-and-native-migration.md +9 -0
  8. package/docs/adr/README.md +3 -2
  9. package/docs/agents/issue-tracker.md +1 -1
  10. package/docs/architecture.md +6 -3
  11. package/docs/cli.md +32 -9
  12. package/docs/command-map.md +5 -3
  13. package/docs/engine/state-schema.md +1 -1
  14. package/docs/flow.md +1 -1
  15. package/docs/harness-compliance.md +2 -2
  16. package/docs/release.md +15 -11
  17. package/docs/usage.md +1 -1
  18. package/engine/commands.go +1 -1
  19. package/engine/go.mod +1 -1
  20. package/engine/help.go +41 -15
  21. package/engine/help_test.go +134 -0
  22. package/engine/internal/acceptance/acceptance_test.go +298 -7
  23. package/engine/internal/acceptance/approve.go +7 -2
  24. package/engine/internal/acceptance/cli.go +3 -0
  25. package/engine/internal/acceptance/evidence.go +69 -5
  26. package/engine/internal/acceptance/lint.go +1 -1
  27. package/engine/internal/acceptance/run.go +5 -3
  28. package/engine/internal/acceptance/scaffold.go +5 -16
  29. package/engine/internal/devritespaths/paths.go +7 -6
  30. package/engine/internal/devritespaths/paths_test.go +18 -0
  31. package/engine/internal/fsutil/copy.go +83 -49
  32. package/engine/internal/fsutil/copy_test.go +70 -109
  33. package/engine/internal/gate/gate.go +89 -16
  34. package/engine/internal/gate/gate_test.go +101 -0
  35. package/engine/internal/hostpack/hostpack.go +52 -2
  36. package/engine/internal/hostpack/hostpack_test.go +83 -2
  37. package/engine/internal/install/apply.go +59 -16
  38. package/engine/internal/install/binary.go +10 -1
  39. package/engine/internal/install/install_test.go +428 -0
  40. package/engine/internal/install/merge.go +69 -38
  41. package/engine/internal/install/preflight.go +7 -0
  42. package/engine/internal/install/uninstall.go +43 -4
  43. package/engine/internal/lib/claims.go +25 -4
  44. package/engine/internal/lib/claims_test.go +57 -0
  45. package/engine/internal/lib/closeout.go +41 -3
  46. package/engine/internal/lib/closeout_test.go +144 -0
  47. package/engine/internal/lib/context.go +8 -4
  48. package/engine/internal/lib/context_next_test.go +100 -0
  49. package/engine/internal/lib/detect.go +1 -1
  50. package/engine/internal/lib/detect_test.go +13 -0
  51. package/engine/internal/lib/diffscope.go +19 -9
  52. package/engine/internal/lib/dispatch.go +7 -0
  53. package/engine/internal/lib/dup.go +40 -37
  54. package/engine/internal/lib/dup_test.go +178 -0
  55. package/engine/internal/lib/manifest_union.go +4 -1
  56. package/engine/internal/lib/manifest_union_test.go +37 -0
  57. package/engine/internal/lib/metrics.go +4 -0
  58. package/engine/internal/lib/metrics_test.go +28 -0
  59. package/engine/internal/lib/migrate_test.go +59 -0
  60. package/engine/internal/lib/observe_budgets.go +25 -9
  61. package/engine/internal/lib/observe_budgets_test.go +254 -0
  62. package/engine/internal/lib/observe_summary.go +23 -2
  63. package/engine/internal/lib/open_visual.go +4 -2
  64. package/engine/internal/lib/open_visual_test.go +11 -0
  65. package/engine/internal/lib/regression.go +62 -23
  66. package/engine/internal/lib/regression_test.go +103 -0
  67. package/engine/internal/lib/resolve.go +36 -17
  68. package/engine/internal/lib/resolve_remediation_test.go +132 -0
  69. package/engine/internal/lib/skilltrust.go +0 -11
  70. package/engine/internal/lib/slicecheck.go +7 -5
  71. package/engine/internal/lib/slicecheck_test.go +18 -0
  72. package/engine/internal/lib/triggers.go +9 -3
  73. package/engine/internal/lib/triggers_test.go +23 -0
  74. package/engine/internal/lib/util.go +17 -3
  75. package/engine/internal/lib/util_test.go +104 -0
  76. package/engine/internal/lib/visual_outline.go +7 -3
  77. package/engine/internal/lib/visual_outline_test.go +28 -0
  78. package/engine/internal/lib/windows.go +13 -9
  79. package/engine/internal/lib/windows_test.go +98 -0
  80. package/engine/internal/lib/workspace_read.go +2 -11
  81. package/engine/internal/lib/workspace_read_test.go +102 -0
  82. package/engine/internal/markdowntext/markdowntext.go +194 -11
  83. package/engine/internal/markdowntext/testdata/structural.json +250 -0
  84. package/engine/internal/notes/cli.go +30 -12
  85. package/engine/internal/notes/notes.go +242 -39
  86. package/engine/internal/notes/notes_test.go +372 -0
  87. package/engine/internal/overhaul/admit/packet.go +89 -0
  88. package/engine/internal/overhaul/admit/packet_test.go +223 -0
  89. package/engine/internal/overhaul/admit/run.go +4 -0
  90. package/engine/internal/overhaul/bench/run.go +6 -0
  91. package/engine/internal/overhaul/bench/run_test.go +46 -0
  92. package/engine/internal/overhaul/overhaul.go +6 -1
  93. package/engine/internal/overhaul/ovio/ovio.go +10 -3
  94. package/engine/internal/overhaul/ovio/ovio_test.go +75 -0
  95. package/engine/internal/overhaul/packet/packet.go +208 -0
  96. package/engine/internal/overhaul/packet/packet_test.go +263 -0
  97. package/engine/internal/overhaul/records/check.go +6 -0
  98. package/engine/internal/overhaul/records/init.go +16 -5
  99. package/engine/internal/overhaul/records/records_test.go +4 -0
  100. package/engine/internal/overhaul/records/run.go +66 -0
  101. package/engine/internal/overhaul/records/run_test.go +77 -0
  102. package/engine/internal/overhaul/render/run.go +15 -11
  103. package/engine/internal/overhaul/render/run_test.go +463 -1
  104. package/engine/internal/overhaul/render/visual.go +95 -33
  105. package/engine/internal/overhaul/score/run.go +20 -0
  106. package/engine/internal/overhaul/score/run_test.go +156 -1
  107. package/engine/internal/overhaul/snapshot/run.go +78 -21
  108. package/engine/internal/overhaul/snapshot/run_test.go +344 -8
  109. package/engine/internal/parallel/cli.go +33 -20
  110. package/engine/internal/parallel/cli_test.go +59 -0
  111. package/engine/internal/parallel/git.go +39 -1
  112. package/engine/internal/parallel/ops.go +101 -11
  113. package/engine/internal/parallel/ops_test.go +552 -69
  114. package/engine/internal/parallel/parallel_test.go +31 -1
  115. package/engine/internal/parallel/pathdisjoint.go +19 -1
  116. package/engine/internal/parallel/pathdisjoint_test.go +72 -0
  117. package/engine/internal/parallel/select.go +6 -2
  118. package/engine/internal/release/release.go +13 -3
  119. package/engine/internal/release/release_test.go +208 -3
  120. package/engine/internal/rootfacts/facts.go +9 -0
  121. package/engine/internal/rootfacts/facts_test.go +38 -0
  122. package/engine/internal/state/acceptance.go +7 -1
  123. package/engine/internal/state/budgets.go +11 -10
  124. package/engine/internal/state/budgets_test.go +93 -0
  125. package/engine/internal/state/cursor.go +19 -8
  126. package/engine/internal/state/cursor_test.go +120 -0
  127. package/engine/internal/state/lock_unix.go +7 -1
  128. package/engine/internal/state/lock_windows.go +7 -1
  129. package/engine/internal/state/state_test.go +49 -18
  130. package/engine/internal/state/taskgraph.go +18 -4
  131. package/engine/internal/state/taskgraph_test.go +43 -0
  132. package/engine/internal/state/workspaceschema.go +16 -2
  133. package/engine/internal/state/workspaceschema_test.go +34 -0
  134. package/engine/internal/state/write.go +67 -6
  135. package/engine/internal/state/write_test.go +136 -0
  136. package/engine/internal/version/version_test.go +2 -0
  137. package/engine/main.go +8 -1
  138. package/engine/observation_contract_test.go +1 -1
  139. package/engine/root_routing_test.go +23 -1
  140. package/install.sh +132 -12
  141. package/pack/.claude/agents/devrites-spec-reviewer.md +2 -2
  142. package/pack/.claude/skills/devrites-browser-proof/SKILL.md +2 -2
  143. package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  144. package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  145. package/pack/.claude/skills/devrites-interview/SKILL.md +4 -4
  146. package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  147. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  148. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +5 -2
  149. package/pack/.claude/skills/devrites-lib/reference/standards/gates.md +6 -5
  150. package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  151. package/pack/.claude/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  152. package/pack/.claude/skills/devrites-lib/reference/standards/windows.md +3 -3
  153. package/pack/.claude/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  154. package/pack/.claude/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  155. package/pack/.claude/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  156. package/pack/.claude/skills/devrites-ux-shape/SKILL.md +11 -12
  157. package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  158. package/pack/.claude/skills/overhaul/SKILL.md +1 -1
  159. package/pack/.claude/skills/overhaul/references/orchestration.md +5 -3
  160. package/pack/.claude/skills/overhaul/references/records.md +39 -0
  161. package/pack/.claude/skills/overhaul/references/scoring.md +14 -4
  162. package/pack/.claude/skills/rite/reference/menu.md +1 -1
  163. package/pack/.claude/skills/rite-adopt/SKILL.md +8 -2
  164. package/pack/.claude/skills/rite-autocomplete/SKILL.md +11 -6
  165. package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  166. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +1 -1
  167. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  168. package/pack/.claude/skills/rite-build/SKILL.md +2 -1
  169. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +1 -1
  170. package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  171. package/pack/.claude/skills/rite-build/reference/checkpoint.md +5 -0
  172. package/pack/.claude/skills/rite-build/reference/parallel-batch.md +2 -2
  173. package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +6 -3
  174. package/pack/.claude/skills/rite-clarify/SKILL.md +5 -4
  175. package/pack/.claude/skills/rite-clarify/reference/anti-patterns.md +2 -2
  176. package/pack/.claude/skills/rite-clarify/reference/decision-coverage.md +3 -2
  177. package/pack/.claude/skills/rite-converge/SKILL.md +2 -0
  178. package/pack/.claude/skills/rite-customize/SKILL.md +6 -4
  179. package/pack/.claude/skills/rite-define/SKILL.md +2 -0
  180. package/pack/.claude/skills/rite-define/reference/gates.md +8 -7
  181. package/pack/.claude/skills/rite-explain/SKILL.md +1 -1
  182. package/pack/.claude/skills/rite-explain/reference/intake.md +1 -1
  183. package/pack/.claude/skills/rite-fast/SKILL.md +1 -1
  184. package/pack/.claude/skills/rite-plan/SKILL.md +4 -3
  185. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +4 -4
  186. package/pack/.claude/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  187. package/pack/.claude/skills/rite-prove/reference/browser-proof.md +5 -5
  188. package/pack/.claude/skills/rite-resolve/SKILL.md +3 -3
  189. package/pack/.claude/skills/rite-seal/SKILL.md +4 -3
  190. package/pack/.claude/skills/rite-seal/reference/phase-contract.md +3 -2
  191. package/pack/.claude/skills/rite-seal/reference/seal-template.md +2 -0
  192. package/pack/.claude/skills/rite-ship/SKILL.md +4 -2
  193. package/pack/.claude/skills/rite-ship/reference/git-ship.md +8 -2
  194. package/pack/.claude/skills/rite-ship/reference/ship-template.md +2 -1
  195. package/pack/.claude/skills/rite-spec/SKILL.md +2 -2
  196. package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +1 -1
  197. package/pack/.claude/skills/rite-spec/reference/spec-template.md +7 -3
  198. package/pack/.claude/skills/rite-spec/reference/state-workspace.md +2 -0
  199. package/pack/.claude/skills/rite-temper/SKILL.md +12 -9
  200. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +1 -1
  201. package/pack/.claude/skills/rite-temper/reference/significance.md +10 -3
  202. package/pack/.claude/skills/rite-temper/reference/strategy-template.md +13 -2
  203. package/pack/.claude/skills/rite-vet/SKILL.md +4 -3
  204. package/pack/.claude/skills/rite-vet/reference/artifacts.md +1 -1
  205. package/pack/.claude/workflows/devrites-readonly-review.js +5 -4
  206. package/pack/generated/claude/agents/devrites-spec-reviewer.md +2 -2
  207. package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +2 -2
  208. package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  209. package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  210. package/pack/generated/claude/skills/devrites-interview/SKILL.md +4 -4
  211. package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  212. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  213. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +5 -2
  214. package/pack/generated/claude/skills/devrites-lib/reference/standards/gates.md +6 -5
  215. package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  216. package/pack/generated/claude/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  217. package/pack/generated/claude/skills/devrites-lib/reference/standards/windows.md +3 -3
  218. package/pack/generated/claude/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  219. package/pack/generated/claude/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  220. package/pack/generated/claude/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  221. package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +11 -12
  222. package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  223. package/pack/generated/claude/skills/overhaul/SKILL.md +1 -1
  224. package/pack/generated/claude/skills/overhaul/references/orchestration.md +5 -3
  225. package/pack/generated/claude/skills/overhaul/references/records.md +39 -0
  226. package/pack/generated/claude/skills/overhaul/references/scoring.md +14 -4
  227. package/pack/generated/claude/skills/rite/reference/menu.md +1 -1
  228. package/pack/generated/claude/skills/rite-adopt/SKILL.md +8 -2
  229. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +11 -6
  230. package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  231. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +1 -1
  232. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  233. package/pack/generated/claude/skills/rite-build/SKILL.md +2 -1
  234. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +1 -1
  235. package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  236. package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +5 -0
  237. package/pack/generated/claude/skills/rite-build/reference/parallel-batch.md +2 -2
  238. package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +6 -3
  239. package/pack/generated/claude/skills/rite-clarify/SKILL.md +5 -4
  240. package/pack/generated/claude/skills/rite-clarify/reference/anti-patterns.md +2 -2
  241. package/pack/generated/claude/skills/rite-clarify/reference/decision-coverage.md +3 -2
  242. package/pack/generated/claude/skills/rite-converge/SKILL.md +2 -0
  243. package/pack/generated/claude/skills/rite-customize/SKILL.md +6 -4
  244. package/pack/generated/claude/skills/rite-define/SKILL.md +2 -0
  245. package/pack/generated/claude/skills/rite-define/reference/gates.md +8 -7
  246. package/pack/generated/claude/skills/rite-explain/SKILL.md +1 -1
  247. package/pack/generated/claude/skills/rite-explain/reference/intake.md +1 -1
  248. package/pack/generated/claude/skills/rite-fast/SKILL.md +1 -1
  249. package/pack/generated/claude/skills/rite-plan/SKILL.md +4 -3
  250. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +4 -4
  251. package/pack/generated/claude/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  252. package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +5 -5
  253. package/pack/generated/claude/skills/rite-resolve/SKILL.md +3 -3
  254. package/pack/generated/claude/skills/rite-seal/SKILL.md +4 -3
  255. package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +3 -2
  256. package/pack/generated/claude/skills/rite-seal/reference/seal-template.md +2 -0
  257. package/pack/generated/claude/skills/rite-ship/SKILL.md +4 -2
  258. package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +8 -2
  259. package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +2 -1
  260. package/pack/generated/claude/skills/rite-spec/SKILL.md +2 -2
  261. package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +1 -1
  262. package/pack/generated/claude/skills/rite-spec/reference/spec-template.md +7 -3
  263. package/pack/generated/claude/skills/rite-spec/reference/state-workspace.md +2 -0
  264. package/pack/generated/claude/skills/rite-temper/SKILL.md +12 -9
  265. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +1 -1
  266. package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -3
  267. package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +13 -2
  268. package/pack/generated/claude/skills/rite-vet/SKILL.md +4 -3
  269. package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +1 -1
  270. package/pack/generated/claude/workflows/devrites-readonly-review.js +5 -4
  271. package/pack/generated/codex/AGENTS.md +1 -1
  272. package/pack/generated/codex/agents/devrites-spec-reviewer.toml +2 -2
  273. package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +2 -2
  274. package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  275. package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  276. package/pack/generated/codex/skills/devrites-interview/SKILL.md +4 -4
  277. package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  278. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  279. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +5 -2
  280. package/pack/generated/codex/skills/devrites-lib/reference/standards/gates.md +6 -5
  281. package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  282. package/pack/generated/codex/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  283. package/pack/generated/codex/skills/devrites-lib/reference/standards/windows.md +3 -3
  284. package/pack/generated/codex/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  285. package/pack/generated/codex/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  286. package/pack/generated/codex/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  287. package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +11 -12
  288. package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  289. package/pack/generated/codex/skills/overhaul/SKILL.md +1 -1
  290. package/pack/generated/codex/skills/overhaul/references/orchestration.md +5 -3
  291. package/pack/generated/codex/skills/overhaul/references/records.md +39 -0
  292. package/pack/generated/codex/skills/overhaul/references/scoring.md +14 -4
  293. package/pack/generated/codex/skills/rite/reference/menu.md +1 -1
  294. package/pack/generated/codex/skills/rite-adopt/SKILL.md +8 -2
  295. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +11 -6
  296. package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  297. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +1 -1
  298. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  299. package/pack/generated/codex/skills/rite-build/SKILL.md +2 -1
  300. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +1 -1
  301. package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  302. package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +5 -0
  303. package/pack/generated/codex/skills/rite-build/reference/parallel-batch.md +2 -2
  304. package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +6 -3
  305. package/pack/generated/codex/skills/rite-clarify/SKILL.md +5 -4
  306. package/pack/generated/codex/skills/rite-clarify/reference/anti-patterns.md +2 -2
  307. package/pack/generated/codex/skills/rite-clarify/reference/decision-coverage.md +3 -2
  308. package/pack/generated/codex/skills/rite-converge/SKILL.md +2 -0
  309. package/pack/generated/codex/skills/rite-customize/SKILL.md +6 -4
  310. package/pack/generated/codex/skills/rite-define/SKILL.md +2 -0
  311. package/pack/generated/codex/skills/rite-define/reference/gates.md +8 -7
  312. package/pack/generated/codex/skills/rite-explain/SKILL.md +1 -1
  313. package/pack/generated/codex/skills/rite-explain/reference/intake.md +1 -1
  314. package/pack/generated/codex/skills/rite-fast/SKILL.md +1 -1
  315. package/pack/generated/codex/skills/rite-plan/SKILL.md +4 -3
  316. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +4 -4
  317. package/pack/generated/codex/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  318. package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +5 -5
  319. package/pack/generated/codex/skills/rite-resolve/SKILL.md +3 -3
  320. package/pack/generated/codex/skills/rite-seal/SKILL.md +4 -3
  321. package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +3 -2
  322. package/pack/generated/codex/skills/rite-seal/reference/seal-template.md +2 -0
  323. package/pack/generated/codex/skills/rite-ship/SKILL.md +4 -2
  324. package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +8 -2
  325. package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +2 -1
  326. package/pack/generated/codex/skills/rite-spec/SKILL.md +2 -2
  327. package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +1 -1
  328. package/pack/generated/codex/skills/rite-spec/reference/spec-template.md +7 -3
  329. package/pack/generated/codex/skills/rite-spec/reference/state-workspace.md +2 -0
  330. package/pack/generated/codex/skills/rite-temper/SKILL.md +12 -9
  331. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +1 -1
  332. package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -3
  333. package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +13 -2
  334. package/pack/generated/codex/skills/rite-vet/SKILL.md +4 -3
  335. package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +1 -1
  336. package/pack/generated/devin/AGENTS.md +1 -1
  337. package/pack/generated/devin/agents/devrites-spec-reviewer.md +2 -2
  338. package/pack/generated/devin/skills/devrites-browser-proof/SKILL.md +2 -2
  339. package/pack/generated/devin/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  340. package/pack/generated/devin/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  341. package/pack/generated/devin/skills/devrites-interview/SKILL.md +4 -4
  342. package/pack/generated/devin/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  343. package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  344. package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +5 -2
  345. package/pack/generated/devin/skills/devrites-lib/reference/standards/gates.md +6 -5
  346. package/pack/generated/devin/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  347. package/pack/generated/devin/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  348. package/pack/generated/devin/skills/devrites-lib/reference/standards/windows.md +3 -3
  349. package/pack/generated/devin/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  350. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  351. package/pack/generated/devin/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  352. package/pack/generated/devin/skills/devrites-ux-shape/SKILL.md +11 -12
  353. package/pack/generated/devin/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  354. package/pack/generated/devin/skills/overhaul/SKILL.md +1 -1
  355. package/pack/generated/devin/skills/overhaul/references/orchestration.md +5 -3
  356. package/pack/generated/devin/skills/overhaul/references/records.md +39 -0
  357. package/pack/generated/devin/skills/overhaul/references/scoring.md +14 -4
  358. package/pack/generated/devin/skills/rite/reference/menu.md +1 -1
  359. package/pack/generated/devin/skills/rite-adopt/SKILL.md +8 -2
  360. package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +11 -6
  361. package/pack/generated/devin/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  362. package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +1 -1
  363. package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  364. package/pack/generated/devin/skills/rite-build/SKILL.md +2 -1
  365. package/pack/generated/devin/skills/rite-build/reference/afk-discipline.md +1 -1
  366. package/pack/generated/devin/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  367. package/pack/generated/devin/skills/rite-build/reference/checkpoint.md +5 -0
  368. package/pack/generated/devin/skills/rite-build/reference/parallel-batch.md +2 -2
  369. package/pack/generated/devin/skills/rite-build/reference/wright-dispatch.md +6 -3
  370. package/pack/generated/devin/skills/rite-clarify/SKILL.md +5 -4
  371. package/pack/generated/devin/skills/rite-clarify/reference/anti-patterns.md +2 -2
  372. package/pack/generated/devin/skills/rite-clarify/reference/decision-coverage.md +3 -2
  373. package/pack/generated/devin/skills/rite-converge/SKILL.md +2 -0
  374. package/pack/generated/devin/skills/rite-customize/SKILL.md +6 -4
  375. package/pack/generated/devin/skills/rite-define/SKILL.md +2 -0
  376. package/pack/generated/devin/skills/rite-define/reference/gates.md +8 -7
  377. package/pack/generated/devin/skills/rite-explain/SKILL.md +1 -1
  378. package/pack/generated/devin/skills/rite-explain/reference/intake.md +1 -1
  379. package/pack/generated/devin/skills/rite-fast/SKILL.md +1 -1
  380. package/pack/generated/devin/skills/rite-plan/SKILL.md +4 -3
  381. package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +4 -4
  382. package/pack/generated/devin/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  383. package/pack/generated/devin/skills/rite-prove/reference/browser-proof.md +5 -5
  384. package/pack/generated/devin/skills/rite-resolve/SKILL.md +3 -3
  385. package/pack/generated/devin/skills/rite-seal/SKILL.md +4 -3
  386. package/pack/generated/devin/skills/rite-seal/reference/phase-contract.md +3 -2
  387. package/pack/generated/devin/skills/rite-seal/reference/seal-template.md +2 -0
  388. package/pack/generated/devin/skills/rite-ship/SKILL.md +4 -2
  389. package/pack/generated/devin/skills/rite-ship/reference/git-ship.md +8 -2
  390. package/pack/generated/devin/skills/rite-ship/reference/ship-template.md +2 -1
  391. package/pack/generated/devin/skills/rite-spec/SKILL.md +2 -2
  392. package/pack/generated/devin/skills/rite-spec/reference/spec-checklists.md +1 -1
  393. package/pack/generated/devin/skills/rite-spec/reference/spec-template.md +7 -3
  394. package/pack/generated/devin/skills/rite-spec/reference/state-workspace.md +2 -0
  395. package/pack/generated/devin/skills/rite-temper/SKILL.md +12 -9
  396. package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +1 -1
  397. package/pack/generated/devin/skills/rite-temper/reference/significance.md +10 -3
  398. package/pack/generated/devin/skills/rite-temper/reference/strategy-template.md +13 -2
  399. package/pack/generated/devin/skills/rite-vet/SKILL.md +4 -3
  400. package/pack/generated/devin/skills/rite-vet/reference/artifacts.md +1 -1
  401. package/pack/generated/omp/agents/devrites-spec-reviewer.md +2 -2
  402. package/pack/generated/omp/commands/rite-define.md +1 -1
  403. package/pack/generated/omp/commands/rite-handoff.md +1 -1
  404. package/pack/generated/omp/commands/rite-plan.md +1 -1
  405. package/pack/generated/omp/commands/rite-pressure-test.md +1 -1
  406. package/pack/generated/omp/commands/rite-quick.md +1 -1
  407. package/pack/generated/omp/commands/rite-status.md +1 -1
  408. package/pack/generated/omp/commands/rite-temper.md +1 -1
  409. package/pack/generated/omp/commands/rite-zoom-out.md +1 -1
  410. package/pack/generated/omp/skills/devrites-browser-proof/SKILL.md +2 -2
  411. package/pack/generated/omp/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  412. package/pack/generated/omp/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  413. package/pack/generated/omp/skills/devrites-interview/SKILL.md +4 -4
  414. package/pack/generated/omp/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  415. package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  416. package/pack/generated/omp/skills/devrites-lib/reference/standards/agents.md +5 -2
  417. package/pack/generated/omp/skills/devrites-lib/reference/standards/gates.md +6 -5
  418. package/pack/generated/omp/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  419. package/pack/generated/omp/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  420. package/pack/generated/omp/skills/devrites-lib/reference/standards/windows.md +3 -3
  421. package/pack/generated/omp/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  422. package/pack/generated/omp/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  423. package/pack/generated/omp/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  424. package/pack/generated/omp/skills/devrites-ux-shape/SKILL.md +11 -12
  425. package/pack/generated/omp/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  426. package/pack/generated/omp/skills/overhaul/SKILL.md +1 -1
  427. package/pack/generated/omp/skills/overhaul/references/orchestration.md +5 -3
  428. package/pack/generated/omp/skills/overhaul/references/records.md +39 -0
  429. package/pack/generated/omp/skills/overhaul/references/scoring.md +14 -4
  430. package/pack/generated/omp/skills/rite/reference/menu.md +1 -1
  431. package/pack/generated/omp/skills/rite-adopt/SKILL.md +8 -2
  432. package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +11 -6
  433. package/pack/generated/omp/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  434. package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +1 -1
  435. package/pack/generated/omp/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  436. package/pack/generated/omp/skills/rite-build/SKILL.md +2 -1
  437. package/pack/generated/omp/skills/rite-build/reference/afk-discipline.md +1 -1
  438. package/pack/generated/omp/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  439. package/pack/generated/omp/skills/rite-build/reference/checkpoint.md +5 -0
  440. package/pack/generated/omp/skills/rite-build/reference/parallel-batch.md +2 -2
  441. package/pack/generated/omp/skills/rite-build/reference/wright-dispatch.md +6 -3
  442. package/pack/generated/omp/skills/rite-clarify/SKILL.md +5 -4
  443. package/pack/generated/omp/skills/rite-clarify/reference/anti-patterns.md +2 -2
  444. package/pack/generated/omp/skills/rite-clarify/reference/decision-coverage.md +3 -2
  445. package/pack/generated/omp/skills/rite-converge/SKILL.md +2 -0
  446. package/pack/generated/omp/skills/rite-customize/SKILL.md +6 -4
  447. package/pack/generated/omp/skills/rite-define/SKILL.md +2 -0
  448. package/pack/generated/omp/skills/rite-define/reference/gates.md +8 -7
  449. package/pack/generated/omp/skills/rite-explain/SKILL.md +1 -1
  450. package/pack/generated/omp/skills/rite-explain/reference/intake.md +1 -1
  451. package/pack/generated/omp/skills/rite-fast/SKILL.md +1 -1
  452. package/pack/generated/omp/skills/rite-plan/SKILL.md +4 -3
  453. package/pack/generated/omp/skills/rite-plan/reference/replan-and-repair.md +4 -4
  454. package/pack/generated/omp/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  455. package/pack/generated/omp/skills/rite-prove/reference/browser-proof.md +5 -5
  456. package/pack/generated/omp/skills/rite-resolve/SKILL.md +3 -3
  457. package/pack/generated/omp/skills/rite-seal/SKILL.md +4 -3
  458. package/pack/generated/omp/skills/rite-seal/reference/phase-contract.md +3 -2
  459. package/pack/generated/omp/skills/rite-seal/reference/seal-template.md +2 -0
  460. package/pack/generated/omp/skills/rite-ship/SKILL.md +4 -2
  461. package/pack/generated/omp/skills/rite-ship/reference/git-ship.md +8 -2
  462. package/pack/generated/omp/skills/rite-ship/reference/ship-template.md +2 -1
  463. package/pack/generated/omp/skills/rite-spec/SKILL.md +2 -2
  464. package/pack/generated/omp/skills/rite-spec/reference/spec-checklists.md +1 -1
  465. package/pack/generated/omp/skills/rite-spec/reference/spec-template.md +7 -3
  466. package/pack/generated/omp/skills/rite-spec/reference/state-workspace.md +2 -0
  467. package/pack/generated/omp/skills/rite-temper/SKILL.md +12 -9
  468. package/pack/generated/omp/skills/rite-temper/reference/scope-modes.md +1 -1
  469. package/pack/generated/omp/skills/rite-temper/reference/significance.md +10 -3
  470. package/pack/generated/omp/skills/rite-temper/reference/strategy-template.md +13 -2
  471. package/pack/generated/omp/skills/rite-vet/SKILL.md +4 -3
  472. package/pack/generated/omp/skills/rite-vet/reference/artifacts.md +1 -1
  473. package/pack/generated/pi/AGENTS.md +1 -1
  474. package/pack/generated/pi/agents/devrites-spec-reviewer.md +2 -2
  475. package/pack/generated/pi/prompts/rite-define.md +1 -1
  476. package/pack/generated/pi/prompts/rite-handoff.md +1 -1
  477. package/pack/generated/pi/prompts/rite-plan.md +1 -1
  478. package/pack/generated/pi/prompts/rite-pressure-test.md +1 -1
  479. package/pack/generated/pi/prompts/rite-quick.md +1 -1
  480. package/pack/generated/pi/prompts/rite-status.md +1 -1
  481. package/pack/generated/pi/prompts/rite-temper.md +1 -1
  482. package/pack/generated/pi/prompts/rite-zoom-out.md +1 -1
  483. package/pack/generated/pi/skills/devrites-browser-proof/SKILL.md +2 -2
  484. package/pack/generated/pi/skills/devrites-frontend-craft/reference/design-references.md +18 -18
  485. package/pack/generated/pi/skills/devrites-frontend-craft/reference/quality-standards.md +6 -4
  486. package/pack/generated/pi/skills/devrites-interview/SKILL.md +4 -4
  487. package/pack/generated/pi/skills/devrites-lib/reference/parallel-dispatch.md +1 -1
  488. package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +9 -1
  489. package/pack/generated/pi/skills/devrites-lib/reference/standards/agents.md +5 -2
  490. package/pack/generated/pi/skills/devrites-lib/reference/standards/gates.md +6 -5
  491. package/pack/generated/pi/skills/devrites-lib/reference/standards/spec-grammar.md +1 -1
  492. package/pack/generated/pi/skills/devrites-lib/reference/standards/verification-methods.md +3 -3
  493. package/pack/generated/pi/skills/devrites-lib/reference/standards/windows.md +3 -3
  494. package/pack/generated/pi/skills/devrites-lib/reference/standards/workflow-artifacts.md +2 -2
  495. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/outline-template.md +1 -1
  496. package/pack/generated/pi/skills/devrites-lib/reference/workspace-artifact-schema.md +4 -4
  497. package/pack/generated/pi/skills/devrites-ux-shape/SKILL.md +11 -12
  498. package/pack/generated/pi/skills/devrites-ux-shape/reference/visual-direction-probe.md +3 -1
  499. package/pack/generated/pi/skills/overhaul/SKILL.md +1 -1
  500. package/pack/generated/pi/skills/overhaul/references/orchestration.md +5 -3
  501. package/pack/generated/pi/skills/overhaul/references/records.md +39 -0
  502. package/pack/generated/pi/skills/overhaul/references/scoring.md +14 -4
  503. package/pack/generated/pi/skills/rite/reference/menu.md +1 -1
  504. package/pack/generated/pi/skills/rite-adopt/SKILL.md +8 -2
  505. package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +11 -6
  506. package/pack/generated/pi/skills/rite-autocomplete/reference/decision-policy.md +3 -2
  507. package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +1 -1
  508. package/pack/generated/pi/skills/rite-autocomplete/reference/stop-conditions.md +6 -3
  509. package/pack/generated/pi/skills/rite-build/SKILL.md +2 -1
  510. package/pack/generated/pi/skills/rite-build/reference/afk-discipline.md +1 -1
  511. package/pack/generated/pi/skills/rite-build/reference/checkpoint-protocol.md +1 -1
  512. package/pack/generated/pi/skills/rite-build/reference/checkpoint.md +5 -0
  513. package/pack/generated/pi/skills/rite-build/reference/parallel-batch.md +2 -2
  514. package/pack/generated/pi/skills/rite-build/reference/wright-dispatch.md +6 -3
  515. package/pack/generated/pi/skills/rite-clarify/SKILL.md +5 -4
  516. package/pack/generated/pi/skills/rite-clarify/reference/anti-patterns.md +2 -2
  517. package/pack/generated/pi/skills/rite-clarify/reference/decision-coverage.md +3 -2
  518. package/pack/generated/pi/skills/rite-converge/SKILL.md +2 -0
  519. package/pack/generated/pi/skills/rite-customize/SKILL.md +6 -4
  520. package/pack/generated/pi/skills/rite-define/SKILL.md +2 -0
  521. package/pack/generated/pi/skills/rite-define/reference/gates.md +8 -7
  522. package/pack/generated/pi/skills/rite-explain/SKILL.md +1 -1
  523. package/pack/generated/pi/skills/rite-explain/reference/intake.md +1 -1
  524. package/pack/generated/pi/skills/rite-fast/SKILL.md +1 -1
  525. package/pack/generated/pi/skills/rite-plan/SKILL.md +4 -3
  526. package/pack/generated/pi/skills/rite-plan/reference/replan-and-repair.md +4 -4
  527. package/pack/generated/pi/skills/rite-polish/reference/anti-ai-slop.md +1 -1
  528. package/pack/generated/pi/skills/rite-prove/reference/browser-proof.md +5 -5
  529. package/pack/generated/pi/skills/rite-resolve/SKILL.md +3 -3
  530. package/pack/generated/pi/skills/rite-seal/SKILL.md +4 -3
  531. package/pack/generated/pi/skills/rite-seal/reference/phase-contract.md +3 -2
  532. package/pack/generated/pi/skills/rite-seal/reference/seal-template.md +2 -0
  533. package/pack/generated/pi/skills/rite-ship/SKILL.md +4 -2
  534. package/pack/generated/pi/skills/rite-ship/reference/git-ship.md +8 -2
  535. package/pack/generated/pi/skills/rite-ship/reference/ship-template.md +2 -1
  536. package/pack/generated/pi/skills/rite-spec/SKILL.md +2 -2
  537. package/pack/generated/pi/skills/rite-spec/reference/spec-checklists.md +1 -1
  538. package/pack/generated/pi/skills/rite-spec/reference/spec-template.md +7 -3
  539. package/pack/generated/pi/skills/rite-spec/reference/state-workspace.md +2 -0
  540. package/pack/generated/pi/skills/rite-temper/SKILL.md +12 -9
  541. package/pack/generated/pi/skills/rite-temper/reference/scope-modes.md +1 -1
  542. package/pack/generated/pi/skills/rite-temper/reference/significance.md +10 -3
  543. package/pack/generated/pi/skills/rite-temper/reference/strategy-template.md +13 -2
  544. package/pack/generated/pi/skills/rite-vet/SKILL.md +4 -3
  545. package/pack/generated/pi/skills/rite-vet/reference/artifacts.md +1 -1
  546. package/package.json +5 -4
  547. package/scripts/build-host-artifacts.sh +15 -0
  548. package/scripts/codex-generate.sh +1 -1
  549. package/scripts/devin-generate.sh +1 -1
  550. package/scripts/expand-includes.py +46 -0
  551. package/scripts/install-lib.sh +42 -7
  552. package/scripts/omp-generate.sh +11 -0
  553. package/scripts/pi-generate.sh +12 -1
  554. package/update.sh +1 -2
  555. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/README.md +0 -7
  556. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/architecture.md +0 -3
  557. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/assumptions.md +0 -3
  558. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/brief.md +0 -3
  559. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/decision-coverage.md +0 -3
  560. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/decisions.md +0 -4
  561. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/eng-review.md +0 -3
  562. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/gates.md +0 -4
  563. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/plan.md +0 -5
  564. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/questions.md +0 -3
  565. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/spec.md +0 -6
  566. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/state.md +0 -8
  567. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/tasks.md +0 -1
  568. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/test-plan.md +0 -3
  569. package/engine/testdata/fixtures/basic/devrites-root/work/auth-tokens/traceability.md +0 -3
  570. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/README.md +0 -7
  571. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/assumptions.md +0 -3
  572. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/brief.md +0 -3
  573. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/decisions.md +0 -3
  574. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/questions.md +0 -3
  575. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/spec.md +0 -6
  576. package/engine/testdata/fixtures/basic/devrites-root/work/search-ranking/state.md +0 -3
  577. package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +0 -2
  578. package/engine/testdata/golden/TestParityCloseOut/active_slug_cleared.golden +0 -2
  579. package/engine/testdata/golden/TestParityCloseOut/archive_clobber.golden +0 -1
  580. package/engine/testdata/golden/TestParityCloseOut/missing_slug.golden +0 -1
  581. package/engine/testdata/golden/TestParityCloseOut/missing_workspace.golden +0 -1
  582. package/engine/testdata/golden/TestParityLearnings/add.golden +0 -2
  583. package/engine/testdata/golden/TestParityLearnings/list.golden +0 -5
  584. package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +0 -2
  585. package/engine/testdata/golden/TestParityLearnings/mine.golden +0 -5
  586. package/engine/testdata/golden/TestParityLearnings/nudge.golden +0 -2
  587. package/engine/testdata/golden/TestParityLearnings/unknown.golden +0 -1
  588. package/engine/testdata/golden/TestParityPackageExistence/ghost-workspace.golden +0 -1
  589. package/engine/testdata/golden/TestParityPackageExistence/no-manifest.golden +0 -1
  590. package/engine/testdata/golden/TestParityPackageExistence/not-git.golden +0 -1
  591. package/engine/testdata/golden/TestParityPackageExistence/undeclared.golden +0 -1
  592. package/engine/testdata/golden/TestParityPreamble/afk/a.golden +0 -14
  593. package/engine/testdata/golden/TestParityPreamble/hitl/active.golden +0 -18
  594. package/engine/testdata/golden/TestParityPreamble/hitl/bare.golden +0 -10
  595. package/engine/testdata/golden/TestParityPreamble/hitl/full.golden +0 -18
  596. package/engine/testdata/golden/TestParityPreamble/hitl/ghost.golden +0 -2
  597. package/engine/testdata/golden/TestParityPreamble/hitl/nonl.golden +0 -11
  598. package/engine/testdata/golden/TestParityPreamble/hitl/openend.golden +0 -13
  599. package/engine/testdata/golden/TestParityProgress/arg=allbuilt.golden +0 -4
  600. package/engine/testdata/golden/TestParityProgress/arg=done.golden +0 -3
  601. package/engine/testdata/golden/TestParityProgress/arg=ghost.golden +0 -1
  602. package/engine/testdata/golden/TestParityProgress/arg=mid.golden +0 -4
  603. package/engine/testdata/golden/TestParityProgress/arg=nophase.golden +0 -3
  604. package/engine/testdata/golden/TestParityProgress/arg=noslice.golden +0 -3
  605. package/engine/testdata/golden/TestParityProgress/arg=plan.golden +0 -4
  606. package/engine/testdata/golden/TestParityProgress/arg=seal.golden +0 -3
  607. package/engine/testdata/golden/TestParityResolve/answer/questions.md.golden +0 -9
  608. package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +0 -7
  609. package/engine/testdata/golden/TestParityResolve/answer.golden +0 -4
  610. package/engine/testdata/golden/TestParityResolve/batch/questions.md.golden +0 -9
  611. package/engine/testdata/golden/TestParityResolve/batch-unterminated/questions.md.golden +0 -9
  612. package/engine/testdata/golden/TestParityResolve/batch-unterminated.golden +0 -2
  613. package/engine/testdata/golden/TestParityResolve/batch.golden +0 -3
  614. package/engine/testdata/golden/TestParityResolve/drop/questions.md.golden +0 -9
  615. package/engine/testdata/golden/TestParityResolve/drop/state.md.golden +0 -9
  616. package/engine/testdata/golden/TestParityResolve/drop.golden +0 -4
  617. package/engine/testdata/golden/TestParityResolve/missing-answer.golden +0 -1
  618. package/engine/testdata/golden/TestParityResolve/no-workspace.golden +0 -1
  619. package/engine/testdata/golden/TestParityResolve/not-found.golden +0 -1
  620. package/engine/testdata/golden/TestParityResolve/not-open.golden +0 -1
  621. package/engine/testdata/golden/TestStatusLiveWorkspace.golden +0 -10
  622. package/engine/testdata/golden/status/auth-tokens.txt +0 -9
  623. package/engine/testdata/golden/status/search-ranking.txt +0 -9
  624. package/engine/testdata/visual/open-visual-smoke.html +0 -675
  625. package/engine/testdata/visual/open-visual-smoke.outline.md +0 -54
  626. package/engine/tests/adr_0003_gate_exit_code_test.go +0 -32
  627. package/engine/tests/adr_0004_required_by_phase_test.go +0 -54
  628. package/engine/tests/adr_0011_define_plan_test.go +0 -32
  629. package/engine/tests/adr_0027_readiness_binding_test.go +0 -107
  630. package/engine/tests/cli_test.go +0 -126
  631. package/engine/tests/gate_test.go +0 -669
  632. package/engine/tests/meta_test.go +0 -37
  633. package/engine/tests/parity_closeout_test.go +0 -105
  634. package/engine/tests/parity_githelpers_test.go +0 -41
  635. package/engine/tests/parity_resolve_test.go +0 -136
  636. package/engine/tests/parity_test.go +0 -86
  637. package/engine/tests/workspace_observation_migration_test.go +0 -1069
@@ -15,7 +15,9 @@ Run every phase after one clarification window. Irreversible-risk,
15
15
  escalating,<!-- pack-scan-ignore: negated statement: gates are NOT disabled -->
16
16
  access, unanswered blocking with no recommended option, and remaining NO-GO
17
17
  still pause. Open blocking questions that already name a ranked recommended
18
- option auto-resolve; they are not a user handoff. Use the Standard native
18
+ option auto-resolve; they are not a user handoff, except a question whose answer
19
+ would add acceptance or product scope, which a recommended option never resolves.
20
+ Use the Standard native
19
21
  profile by default and Full for high-risk scope or explicit `--full`; see
20
22
  [`orchestration-profiles.md`](../devrites-lib/reference/orchestration-profiles.md).
21
23
 
@@ -64,9 +66,10 @@ executable controller/harness/bundle bytes or a missing writer, read
64
66
  `--max-slices` must occur once and be followed by a positive base-10 integer;
65
67
  `--parallel` must occur once and be followed by a base-10 integer in `1`–`10`.
66
68
  Missing, repeated, malformed, or conflicting values stop before any write.
67
- - Temper always runs after Clarify. Auto-apply the recommended mode, including
68
- `expand` and extra acceptance; record the ADR and fold via Spec Drift Guard.
69
- Irreversible-risk still pauses.
69
+ - Temper always runs after Clarify. Auto-apply `hold-rigor`, `reduce-to-MVP` or a skip;
70
+ record the ADR and fold via Spec Drift Guard. `expand` and extra acceptance never
71
+ auto-apply: ask through `AskUserQuestion`, hold the fold, and stop until a human
72
+ resolves the qid. Irreversible-risk still pauses.
70
73
  - Vet every plan. Cross-model is off unless the current invocation arms it.
71
74
 
72
75
  ## Workflow
@@ -87,7 +90,7 @@ executable controller/harness/bundle bytes or a missing writer, read
87
90
  and `cross_model: yes|no`.
88
91
  **Completion:** normalized state is unambiguous and no sentinel or workspace file has been written.
89
92
  2. **Specify and clarify.** Run `devrites-interview`, `/rite-spec`, and
90
- `/rite-clarify` as one window. Partial/Missing material coverage never arms
93
+ `/rite-clarify` as one window. `open` material coverage never arms
91
94
  AFK. **Completion:** `Decision coverage: CLEAR` is durable.
92
95
  3. **Arm AFK once.** Apply the loop's
93
96
  [one-write AFK contract](reference/loop.md#arm-afk-once): preserve valid
@@ -120,7 +123,9 @@ executable controller/harness/bundle bytes or a missing writer, read
120
123
  option (`proposed` or option 1 labelled Recommended) auto-resolves through
121
124
  `devrites-engine state resolve` and continues (a missing or failing resolver is
122
125
  the bounded resolver-failure stop); do not emit `/rite-resolve` as
123
- a user handoff. Technical exhaustion records terminal
126
+ a user handoff. Exception: a question whose answer would add acceptance or
127
+ product scope is never auto-resolved by a recommended option; it stops for a human.
128
+ Technical exhaustion records terminal
124
129
  `Next step: none`, never a routine phase command. **Completion:** no stop is active, or its cursor and reason are durable.
125
130
  6. **Seal boundary.** Without a ship flag, stop at Seal GO with `/rite-ship` —
126
131
  unless `continue_sequence: false` or sequence budget is spent; otherwise
@@ -39,5 +39,6 @@ not pick the option that's merely easiest to implement.
39
39
  Irreversible-risk, escalating, access, and blocking questions with no ranked
40
40
  recommended option stay human. A blocking question that already names option 1
41
41
  `(Recommended)` or `proposed:` is autocomplete's to resolve: pick that option
42
- via `devrites-engine state resolve` and continue. Recommended temper `expand`
43
- auto-applies; do not invent product intent.
42
+ via `devrites-engine state resolve` and continue. Recommended temper
43
+ `expand` and extra acceptance are never auto-picked: they stop for a human through
44
+ `AskUserQuestion`; do not invent product intent.
@@ -63,7 +63,7 @@ Workspace files carry state; chat does not. Read and execute each phase skill:
63
63
  | --- | --- | --- |
64
64
  | 1 | `/rite-spec` | investigate and write testable intent |
65
65
  | 2 | `/rite-clarify` | topology-first scan; require `Decision coverage: CLEAR`, then arm AFK |
66
- | 3 | `/rite-temper` | harden, reduce, or expand; irreversible risk still pauses |
66
+ | 3 | `/rite-temper` | harden or reduce; `expand` and extra acceptance stop for a human; irreversible risk still pauses |
67
67
  | 4 | `/rite-define` | approved plan/tasks/traceability |
68
68
  | 5 | `/rite-vet` | every plan; derive mutable budget after READY |
69
69
  | 6 | `/rite-build` batch loop | largest eligible path-disjoint set (cap: this invocation's `--parallel N`, else sentinel `max_parallel`, else 10; one-slice round when <2 eligible); recompute after each round; charge once per green built slice |
@@ -62,12 +62,15 @@ exhausted.
62
62
  - **Gate severity:** escalating always stops. Blocking with a ranked recommended
63
63
  option (`proposed` or option 1 labelled Recommended): auto-pick via
64
64
  `devrites-engine state resolve`, then continue internally (including Spec Drift
65
- Guard when the answer changes ownership or acceptance). Blocking with no
65
+ Guard when the answer changes ownership or acceptance). Exception: a question whose answer
66
+ would add acceptance or product scope is never auto-picked, even with a
67
+ recommended option; it stops for a human. Blocking with no
66
68
  recommended option still stops. Validating: auto-pick the recommended option,
67
69
  close the question, continue.
68
- - **Temper:** `expand` and extra acceptance auto-apply (record + Drift Guard).
70
+ - **Temper:** `expand` and extra acceptance stop: ask through `AskUserQuestion`, hold the
71
+ fold, and continue only after a human resolves the qid (an ADR is not that answer).
69
72
  Irreversible-risk still pauses. `hold-rigor`, `reduce-to-MVP`, and a skip do not pause.
70
- - **Clarify:** material Partial/Missing/unowned decision coverage or a
73
+ - **Clarify:** material `open`/unowned decision coverage or a
71
74
  low-confidence high-consequence assumption. Continue the initial interview;
72
75
  never arm AFK early.
73
76
  - **Seal:** remaining NO-GO after recommended-option questions are closed, with
@@ -33,7 +33,8 @@ Execute [`reference/phase-contract.md`](reference/phase-contract.md)
33
33
  Read `.claude/skills/devrites-lib/reference/standards/core.md` first. Load only triggered rules:
34
34
  coding/error/testing/[`tdd.md`](reference/tdd.md)/patterns/DoD; binding
35
35
  `.devrites/principles.md`; security; topology; data integrity; integration reliability.
36
- Wright applies anti-slop; root verifies returns and never patches source.
36
+ Wright applies anti-slop; root verifies returns and never patches source. Refuse the rationalizations in
37
+ [`anti-patterns`](reference/anti-patterns.md).
37
38
 
38
39
  ## Invariants
39
40
 
@@ -114,7 +114,7 @@ logged to `evidence.md` so the user sees them on return.
114
114
 
115
115
  Example targets:
116
116
 
117
- - `curl -d "$DEVRITES_QID: $DEVRITES_QUESTION" ntfy.sh/my-topic`
117
+ - `curl -fsS -m 10 -d "$DEVRITES_QID: $DEVRITES_QUESTION" ntfy.sh/my-topic`
118
118
  - `osascript -e "display notification \"$DEVRITES_QUESTION\" with title \"DevRites: $DEVRITES_GATE\""`
119
119
  - `pb push "$DEVRITES_SLUG: $DEVRITES_QUESTION"` (via pushbullet CLI)
120
120
 
@@ -75,7 +75,7 @@ rewrite; do not claim cross-file atomicity):
75
75
  sh -c "$notify_cmd"
76
76
  ```
77
77
 
78
- Fire after workspace write. Hook failure does **not** roll back the pause (best-effort).
78
+ Fire after workspace write under a bounded tool timeout (e.g. 30 s). Hook failure does **not** roll back the pause (best-effort); append the exit code to `evidence.md`.
79
79
 
80
80
  ## qid generation
81
81
 
@@ -7,6 +7,11 @@ Only when that loop is green does the orchestrator land the local unpushed
7
7
  `/rite-review`, and `/rite-autocomplete`. Never push. `.devrites/CHECKPOINT` is
8
8
  not a gate.
9
9
 
10
+ The checkpoint stays local, unpushed scratch folded at `/rite-ship`; where the
11
+ host repository's own agent contract requires approval before commits — an
12
+ ask-first rule such as this repository's `AGENTS.md` — that contract wins, and
13
+ the orchestrator pauses for approval before landing it.
14
+
10
15
  ## When (and when not)
11
16
 
12
17
  - **Do:** after Independent Build review (or the phase's independent validators)
@@ -206,8 +206,8 @@ the lease `running` and control at `B`; cleanup still refuses — the commits
206
206
  cannot be lost. `record-green` and `integrate` also accept an `integrate-failed`
207
207
  lease, so a failed integrate retries after repair. `--apply-to-control`
208
208
  refuses when control moved past `B` or holds uncommitted changes on slice
209
- paths — commit/stash and retry; the batch is untouched. Go is SSOT; never
210
- ad-hoc git/bash orchestration.
209
+ paths — stop for the human (never stash or commit their work); the batch is
210
+ untouched. Go is SSOT; never ad-hoc git/bash orchestration.
211
211
 
212
212
  ## Runtime isolation
213
213
 
@@ -75,7 +75,9 @@ Same-worktree (non-isolated) dispatch claims before writing: `devrites-engine
75
75
  claim add --session <id> <task-paths>`; retain its returned `<claim-id>`, then run
76
76
  `devrites-engine claim check --session <id> <task-paths>` — a held claim from a
77
77
  live foreign session releases the retained claim and stops the dispatch, per
78
- [`agents.md`](../../devrites-lib/reference/standards/agents.md). Ask the host
78
+ [`agents.md`](../../devrites-lib/reference/standards/agents.md). `.devrites/**`
79
+ is never a task path; see [Workflow Artifact admission](../../devrites-lib/reference/standards/workflow-artifacts.md).
80
+ Ask the host
79
81
  for the exact writer in fresh context and wait. Track it through the
80
82
  launch barrier — `devrites-engine dispatch <slug> open --phase build --wave
81
83
  <slice-id> --role slice-wright`, then `start` with the host handle, `seal`, and
@@ -87,8 +89,9 @@ substitute a generic agent. Opt-in `/rite-build --parallel N` fans out only unde
87
89
 
88
90
  After `claim add`, every terminal path releases the claim with
89
91
  `devrites-engine claim release --session <id> --id <claim-id>`: successful
90
- return, rejected result, gap, stop, or launch failure. TTL is crash recovery,
91
- not normal cleanup.
92
+ return, rejected result, stop, or a launch the host refused with no handle. A
93
+ timeout or unknown outcome keeps the claim ([`parallel-dispatch.md`](../../devrites-lib/reference/parallel-dispatch.md#cancellation-and-terminal-reconciliation)).
94
+ TTL is crash recovery, not normal cleanup.
92
95
 
93
96
  ## Inspect and prove
94
97
 
@@ -36,25 +36,26 @@ dispatch uses
36
36
  - One scan may cap at five packets for cognitive load, but readiness has no question cap:
37
37
  re-scan until clear.
38
38
  - Material assumptions carry evidence, confidence, owner, validation, and consequence.
39
+ - Refuse the rationalizations in [`anti-patterns`](reference/anti-patterns.md).
39
40
 
40
41
  ## Workflow
41
42
 
42
43
  1. **Orient.** Read `.devrites/ACTIVE`, `state.md`, and `spec.md`. Require
43
- `Spec gate: passed`; otherwise stop at `/rite-spec`. Apply the native cursor
44
+ `state.md` `spec_gate: passed` (legacy `Spec gate: passed` line accepted); otherwise stop at `/rite-spec`. Apply the native cursor
44
45
  protocol below before changing workspace artifacts.
45
46
  2. **Enumerate the topology.** From the spec, live code, contracts, references,
46
47
  and recorded decisions, list every material stakeholder/priority, invariant, actor,
47
48
  journey/component, state, data lifecycle, integration, failure/recovery path,
48
49
  operation, proof surface, applicability row, and must-NOT boundary.
49
50
  3. **Scan coverage.** Apply `devrites-interview` in clarify mode and mark each
50
- material surface Clear, Partial, Missing, not-applicable, or justified
51
- deferred-nonblocking with evidence and an owner. Use native repository search
51
+ material surface `closed`, `agent-owned`, `not-applicable`,
52
+ `deferred-nonblocking`, or `open` with evidence and an owner. Use native repository search
52
53
  first. Ask the host to run `devrites-evidence-scout` only for a bounded missing
53
54
  fact, then reconcile its cited result.
54
55
  4. **Close decisions.** Record facts and reversible technical choices directly.
55
56
  Ask one coherent option packet only for product, scope, policy, irreversible
56
57
  risk, or human-only access. Persist answers in the owning artifacts and repeat
57
- the scan until no blocking Partial/Missing row or unowned material assumption
58
+ the scan until no blocking `open` row or unowned material assumption
58
59
  remains.
59
60
  5. **Write the verdict.** Write `Decision coverage: CLEAR` only after re-reading all inputs and confirming
60
61
  every material row has current evidence and an owner. Normal flow sets `phase=clarify` and
@@ -12,13 +12,13 @@ Pack-wide rationalizations: see
12
12
  | --- | --- |
13
13
  | "We already discussed this in chat." | Chat is not durable decision coverage. Scan topology and record owners in workspace artifacts. |
14
14
  | "The answer is obvious — assume it." | Product, scope, policy, and irreversible-risk choices are human-owned unless already recorded in an accepted decision. |
15
- | "Most rows are clear — good enough for AFK." | Partial/Missing material rows block CLEAR and block AFK arming. |
15
+ | "Most rows are clear — good enough for AFK." | `open` material rows block CLEAR and block AFK arming. |
16
16
  | "Skip clarify for this small change." | Clarify is mandatory and adaptive; it may ask no questions, but it still runs the scan. |
17
17
  | "I'll clarify during build if needed." | Unowned decisions discovered in build are expensive drift. Close them before plan/vet. |
18
18
 
19
19
  ## Red flags in your own output
20
20
 
21
- - `Decision coverage: CLEAR` with Partial/Missing material rows still open.
21
+ - `Decision coverage: CLEAR` with `open` material rows still open.
22
22
  - Product/policy choices recorded without a human packet or cited prior decision.
23
23
  - AFK armed or `/rite-define` started before CLEAR is durable.
24
24
  - Clarify skipped because the user said they were "in a hurry".
@@ -18,8 +18,9 @@ environment, credentials/approvals, and evidence limits.
18
18
  - `not-applicable`: evidence shows the dimension does not apply.
19
19
  - `deferred-nonblocking`: pre-code evidence is impossible or the item is an explicit
20
20
  non-goal; owner and validation gate are named.
21
+ - `open`: the decision is unresolved.
21
22
 
22
- `Partial`, `Missing`, open, unknown, or ownerless rows never produce `CLEAR`.
23
+ `open`, unknown, or ownerless rows never produce `CLEAR`.
23
24
 
24
25
  ## Artifact shape
25
26
 
@@ -45,7 +46,7 @@ Decision coverage: <CLEAR | NEEDS CLARIFICATION>
45
46
  | --- | --- | --- | --- |
46
47
 
47
48
  ## Readiness verdict
48
- No Partial, Missing, unowned material assumption, or unresolved blocking/escalating
49
+ No `open` row, unowned material assumption, or unresolved blocking/escalating
49
50
  question remains.
50
51
  ```
51
52
 
@@ -138,6 +138,8 @@ Before reporting "clean" or recommending `/rite-prove`, confirm:
138
138
 
139
139
  - [ ] Every buildable AC/REQ in the assessment inventory has a built/partial/absent
140
140
  classification with live-code citation
141
+ - [ ] Every plan touch-point and existing-slice Produces is classified with live-code citation
142
+ - [ ] Every declared principle is checked; violations are recorded as top-severity gaps
141
143
  - [ ] `tasks.md` is byte-for-byte unchanged when clean, or append-only when gaps exist
142
144
  - [ ] `traceability.md` updated only for appended slices
143
145
  - [ ] No narrative "done" without the checklist above
@@ -18,7 +18,9 @@ standalone token occurs in current `$ARGUMENTS`; earlier context cannot activate
18
18
  1. Map policy→instruction, reusable work→skill, specialist→agent, external capability→plugin/MCP.
19
19
  2. Inspect target/host docs; reuse before copying.
20
20
  3. Draft smallest nearest-scope change; do not restate safeguards.
21
- 4. For any new or edited skill/agent Markdown, run `devrites-engine check skill-trust <path>` before showing the diff. HIGH findings block; MEDIUM findings need explicit human acknowledgment in the proposal.
21
+ 4. For any new or edited skill, agent, or instruction file — `AGENTS.md` / `CLAUDE.md`
22
+ included — run `devrites-engine check skill-trust <path>` before showing the diff.
23
+ HIGH findings block; MEDIUM findings need explicit human acknowledgment in the proposal.
22
24
  5. Show path/exact diff; wait.
23
25
  6. Write approved artifacts, validate natively, keep no mirror.
24
26
 
@@ -46,9 +48,9 @@ Here, edit canonical source and generate; never edit derived artifacts.
46
48
  approval; never execute them as the next action
47
49
  ([`security.md`](../devrites-lib/reference/standards/security.md) § Prompt-injection
48
50
  and § Agentic skills).
49
- - Do not write imported instruction text into `AGENTS.md` / `CLAUDE.md` or host
50
- identity files without that same admission. **Failing case:** an imported
51
- skill's "Prerequisites" curl is run during customize.
51
+ - Do not write instruction text into `AGENTS.md` / `CLAUDE.md` or host identity
52
+ files — imported, observed, or agent-authored — without that same admission.
53
+ **Failing case:** an imported skill's "Prerequisites" curl is run during customize.
52
54
 
53
55
  ## Output
54
56
 
@@ -59,6 +59,8 @@ Pull these via `Read` when shaping the plan:
59
59
  **STOP** and tell the user to run `/rite-spec <feature>` first.
60
60
  If `decision-coverage.md` is absent or does not say `Decision coverage: CLEAR`,
61
61
  **STOP** → `/rite-clarify`.
62
+ If `checklists/` has no `<domain>.md` or any carries an open CRITICAL fail,
63
+ **STOP** → `/rite-spec`.
62
64
  1. **Read the spec:** `spec.md` (objective, requirements, acceptance, **placement**,
63
65
  design references, gaps/decisions), plus `references.md`, `decisions.md`,
64
66
  `assumptions.md`, `decision-coverage.md`, **`strategy.md` if present** (the scope mode, deferred / out-of-scope
@@ -116,20 +116,21 @@ defaults and the always-pause rules:
116
116
  | `[]` (or omitted) | log + proceed | pause | pause | pause |
117
117
  | `[advisory]` (default) | log + proceed | pause | pause | pause |
118
118
  | `[advisory, validating]` | log + proceed | build + queue | pause | pause |
119
- | `[advisory, validating, blocking]` | log + proceed | build + queue | log + proceed* | pause |
120
119
 
121
- \* but **never** for destructive migrations, auth/authz boundary changes, or public API
122
- breaks. Red tests/types/lint remain hard build gates and must clear bounded recovery before
123
- the next slice; only a resulting human-owned ambiguity becomes a pause. See
124
- [`.claude/skills/devrites-lib/reference/standards/afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md) for the irreversible-risk
125
- list.
120
+ `blocking` is never auto-handled, even when listed in `allow_gates`: it always pauses, per
121
+ the [`blocking`](#blocking) gate rule above. Red tests/types/lint remain hard build gates and
122
+ must clear bounded recovery before the next slice; only a resulting human-owned ambiguity
123
+ becomes a pause. The irreversible-risk list is owned by
124
+ [`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md#irreversible-risk-list-always-pause);
125
+ every item on it pauses regardless of `allow_gates`.
126
126
 
127
127
  `escalating` is never in `allow_gates`: specialist routing is not something AFK can
128
128
  shortcut.
129
129
 
130
130
  `/rite-autocomplete` does not add `blocking` to `allow_gates`. It auto-resolves
131
131
  open blocking questions that already name a recommended option via
132
- `devrites-engine state resolve`, then continues. That is an orchestrator
132
+ `devrites-engine state resolve`, then continues. Escalating, irreversible-risk, and
133
+ access questions still pause, even with a recommended option. That is an orchestrator
133
134
  exception, not an AFK ceiling change.
134
135
 
135
136
  ## Anti-patterns
@@ -65,7 +65,7 @@ free: prefer it over re-deriving:
65
65
  [`tooling.md`](../devrites-lib/reference/standards/tooling.md) (one named-predicate cross-check only when needed), plus any
66
66
  `.devrites/principles.md` or ADRs that already take a position on it.
67
67
  - An **idea** or a concept with no repo footprint → the user's framing plus, only if it sharpens
68
- the teaching, current external sources (weight by date; the year is 2026).
68
+ the teaching, current external sources (weight by date).
69
69
 
70
70
  Create the run directory before composing so the durable artifact has a home:
71
71
 
@@ -10,7 +10,7 @@ source for classification; the SKILL improvises none of it.
10
10
  | --- | --- | --- | --- | --- |
11
11
  | **concept** | a named idea / pattern / technology ("explain optimistic locking", "how does our gate engine work") | this repo's footprint of the concept (codegraph first) + external sources only if they sharpen it | build the mental model from a known part of *this* codebase outward | **checked exercise** |
12
12
  | **diff** | a specific change: a ref, a slice, a PR, "this diff" | `git diff` / the hunks + `decisions.md` + `seal.md` for the *why* + `touched-files.md` `Review trail` when present | explainer, or **walkthrough** when the user asks to review/approve/checkpoint the change | **predict-then-reveal** |
13
- | **idea** | a hypothesis or "what if" with no code yet | the user's framing + prior art (external, date-weighted; year is 2026) | steelman the idea, name its hinge and its failure mode | **checked exercise** |
13
+ | **idea** | a hypothesis or "what if" with no code yet | the user's framing + prior art (external, date-weighted) | steelman the idea, name its hinge and its failure mode | **checked exercise** |
14
14
  | **recap** | a time window of the user's own work ("what did I ship this week") | the shipped archive + `git log`/`git diff` over the window + `evidence.md` | narrate what changed and what was learned, ranked by leverage | **predict-then-reveal** |
15
15
 
16
16
  ## Token overrides: explicit beats inferred
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rite-fast
3
- description: Fast lane for mid-size work: one spec-and-plan step with clarifying questions, up to ten slices built without per-slice gates, one completeness check with gap fixes, review, polish, proof.
3
+ description: "Fast lane for mid-size work: one spec-and-plan step with clarifying questions, up to ten slices built without per-slice gates, one completeness check with gap fixes, review, polish, proof."
4
4
  argument-hint: "<task | slug>"
5
5
  user-invocable: true
6
6
  disable-model-invocation: true
@@ -73,8 +73,9 @@ Before classifying any Reslice, read `.claude/skills/devrites-lib/reference/stan
73
73
  - **course-correct:** mid-build user pivot; apply the marked action, choose
74
74
  rollback/forward-fix, and update permitted artifacts atomically (`MVP cut` is the named retreat).
75
75
  - **revise:** reconcile a requested artifact revision; propose/confirm its file set and
76
- **never edit source**. Only explicit `/rite-upgrade` with a `repairable` assessment naming
77
- rule, evidence, gate, paths, and delta can authorize its neutral workspace edit—not source/history.
76
+ **never edit source**. A neutral workspace edit is authorized by explicit `/rite-upgrade` with a
77
+ `repairable` assessment naming rule, evidence, gate, paths, and delta, or, for budget relocation
78
+ only, by the phase owner when `orient` reports `over: true`—never source or history rewording.
78
79
  **Revise or new?** Same intent? >50% scope survives? Original not completable without it?
79
80
  Two “no” answers mean new work: seal/ship current scope (`MVP cut` if named), then
80
81
  `/rite-spec`, and stop.
@@ -160,7 +161,7 @@ Before classifying any Reslice, read `.claude/skills/devrites-lib/reference/stan
160
161
  mark the `drift.md` entry resolved. Never remove or overwrite a valid caller
161
162
  return cursor while writing the Plan checkpoint.
162
163
  6. After editing `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, or `questions.md`,
163
- re-scan affected coverage, assumptions, uncertainty, and gates. Partial/Missing, unowned
164
+ re-scan affected coverage, assumptions, uncertainty, and gates. `open` rows, unowned
164
165
  material assumption, or open blocking/escalating question routes `/rite-clarify`/HITL.
165
166
  Restore `CLEAR` only from current evidence.
166
167
  7. **Done when:** every slice is sized (builds + proves in one cycle; no slice scoring >3
@@ -84,15 +84,15 @@ Record the sequence once in `decisions.md`.
84
84
  ## revise
85
85
 
86
86
  Artifact-only reconciliation of `spec.md`, `architecture.md`, `plan.md`, `tasks.md`,
87
- or `traceability.md` — never source. Propose/confirm the file set first. Only explicit
88
- `/rite-upgrade` with a `repairable` assessment may authorize neutral workspace edits.
87
+ or `traceability.md` — never source. Propose/confirm the file set first. A neutral workspace
88
+ edit is authorized by explicit `/rite-upgrade` with a `repairable` assessment, or, for budget
89
+ relocation only, by the phase owner when `orient` reports `over: true`.
89
90
 
90
91
  Unchanged acceptance/behavior with non-equivalent `proposed_coverage` is a
91
92
  contradictory input: the canonical classifier blocks it — there is no fourth
92
93
  route (see [`acceptance-preserving-reslice.md`](../../devrites-lib/reference/standards/acceptance-preserving-reslice.md)).
93
94
 
94
- **Budget relocation** (admitted by `/rite-upgrade`, or by the phase owner when
95
- `orient` reports `over: true`): move checkpoint narrative, historical fold text and
95
+ **Budget relocation** (authorized as above): move checkpoint narrative, historical fold text and
96
96
  closed-round accounts verbatim from `state.md`/`tasks.md`/`plan.md`/`architecture.md`/
97
97
  `eng-review.md` into `history/<file>-<YYYYMMDD>.md`, packets/accounts from the root
98
98
  into `packets/`, leaving a one-line pointer. Cursor, live slices, open findings, IDs,
@@ -18,7 +18,7 @@ Build avoids every UI entry; review and polish admit a hit only by this rule. Cl
18
18
  a declared token, brief line or nearest neighbour (cite both locations), or it has a
19
19
  measured user consequence (contrast ratio, overflow, CLS, lost or hidden focus). Otherwise
20
20
  it is an AES proposal under "Proposals (non-blocking)": never a Visual Verdict FAIL, never
21
- scored, capped at Suggestion/Minor, never blocking unless `design-brief.md` adopts it (then
21
+ scored, capped at Suggestion, never blocking unless `design-brief.md` adopts it (then
22
22
  DS). Act on clusters per [`prose-style.md`](../../devrites-lib/reference/standards/prose-style.md).
23
23
  A broken task, data loss or misleading state is reported and fixed before any AES item.
24
24
  **Failing case:** `tokens.css` declares Inter and a 20 px card radius, yet review files
@@ -12,11 +12,9 @@ What `browser-evidence.md` must capture for a UI slice. Delegates to
12
12
  | EVID-003 | <route> | empty/keyboard | 375 | brief Proof targets + target reference 1 | playwright-mcp | <observed result> | AC-002, SLICE-002 | <none / exact gap> |
13
13
 
14
14
  ## Visual Verdict
15
- | State | Result | Notes |
16
- | --- | --- | --- |
17
- | default | PASS / FAIL | <what is visible> |
18
- | loading | PASS / FAIL | <what is visible> |
19
- | error | PASS / FAIL | <what is visible> |
15
+ | Criterion (source, class) | Expected | Observed (screenshot) | Verdict | Severity |
16
+ |---|---|---|---|---|
17
+ | <state / delta / anti-slop criterion> (<brief / reference / anti-slop / acceptance>, <ENG / A11Y / DS / AES>) | <expected> | <what is visible> | PASS / PARTIAL / FAIL / n/a | <Critical / Important / Suggestion> |
20
18
 
21
19
  ## Comparison deltas
22
20
  | State / viewport | Target | Material delta observed | Disposition | Result |
@@ -33,6 +31,8 @@ What `browser-evidence.md` must capture for a UI slice. Delegates to
33
31
  ```
34
32
 
35
33
  ## Rules
34
+ - The `## Visual Verdict` table follows [visual-verdict.md](../../devrites-browser-proof/reference/visual-verdict.md),
35
+ which owns its rows, verdict values and severity mapping.
36
36
  - Open every screenshot path and describe it: never assert from the filename.
37
37
  - Read `design-brief.md` + `references.md` first. Compare fidelity only with references
38
38
  classified **target**; check constraints as rules and never pixel-match inspiration.
@@ -74,8 +74,8 @@ Pull these via `Read` when shaping the resolve:
74
74
  user's explicit consent for this local workspace mutation. Echo the qid, answer/drop,
75
75
  and slice being unblocked, then continue immediately; do not ask the user to confirm the
76
76
  command they just typed.
77
- 4. **Mutate.** Run `devrites-engine state resolve` with those arguments. It:
78
- - flips the qid's `status` to `answered` / `dropped` and stamps `answered_at` + `answer`;
77
+ 4. **Mutate.** Run `devrites-engine state resolve --human` with those arguments (a human is resolving). It:
78
+ - flips the qid's `status` to `answered` / `dropped` and stamps `answered_at` + `answer` + `answered_by: human`;
79
79
  - if the qid is in `state.md`'s `Awaiting human` block (single-question pause), clears
80
80
  that block and sets `Status: running`;
81
81
  - appends a `Log` line to `state.md`.
@@ -96,7 +96,7 @@ Pull these via `Read` when shaping the resolve:
96
96
  **Completion:** the resolved state contains exactly one next command.
97
97
  6. **STOP.** User-invoked `/rite-resolve` does not run `/rite-build` itself: the
98
98
  user re-enters the workflow explicitly. A controlling `/rite-autocomplete`
99
- caller invokes the same `devrites-engine state resolve` writer internally and
99
+ caller invokes the same `devrites-engine state resolve` writer internally (never with `--human`) and
100
100
  continues; it must not emit this skill as a user handoff for a question that
101
101
  already names a ranked recommended option.
102
102
 
@@ -65,7 +65,7 @@ Follow [`reference/phase-contract.md`](reference/phase-contract.md)
65
65
  `../devrites-lib/reference/parallel-dispatch.md` on the same frozen candidate,
66
66
  code review through its § Engineering lanes;
67
67
  4. reconcile their read-only verdicts against source and immutable evidence;
68
- 5. draft GO/NO-GO `seal.md` with acceptance, tests, decisions, and seven accounts
68
+ 5. draft GO/NO-GO `seal.md` with acceptance, tests, decisions, and seven roster accounts plus proof-runner and doubt-reviewer
69
69
  (each engineering lane its own account);
70
70
  6. write exactly one candidate binding, then run
71
71
  `devrites-engine check seal <slug>` for structure and identity, never semantics,
@@ -74,8 +74,9 @@ Follow [`reference/phase-contract.md`](reference/phase-contract.md)
74
74
  starts at the named changed, missing, or added input,
75
75
  and `devrites-engine check regression <slug>` to confirm no recorded progress
76
76
  fact was lost since the last checkpoint — `BLOCKED` is NO-GO; `unproven`
77
- (no baseline) does not block — plus `devrites-engine check windows <slug>
78
- --base <release-base>` so each deferral marker the feature diff introduced
77
+ (no baseline) does not block — plus two separate runs of `devrites-engine check windows <slug>`,
78
+ one with `--base <release-base>` and one with `--worktree` (the only mode that scans
79
+ untracked files; never pass both flags in one command, the last one wins) so each deferral marker the feature diff introduced
79
80
  carries a `windows.md` waiver row ([`windows.md`](../devrites-lib/reference/standards/windows.md));
80
81
  unwaived hits are NO-GO. The engine already refuses a `gates.md` ledger
81
82
  that is malformed, unmet,
@@ -28,7 +28,8 @@
28
28
  and the [`review roster`](../../devrites-lib/reference/parallel-dispatch.md) on
29
29
  the candidate. Admit each result through
30
30
  [`result admission`](../../devrites-lib/reference/standards/agents.md#result-admission).
31
- `## Reviewer Accounts` preserves all seven roles, each engineering lane as its own account; gap/missing/malformed blocks;
31
+ `## Reviewer Accounts` preserves the seven roster roles, each engineering lane as its own account, plus
32
+ `devrites-proof-runner` and, when any decision stood, `devrites-doubt-reviewer`; gap/missing/malformed blocks;
32
33
  conditional `Not-applicable` names why.
33
34
  7. **Route corrections.** Reconcile cited findings/disagreements, but do not
34
35
  edit the candidate or manifest in Seal. Route an accepted correction through
@@ -36,7 +37,7 @@
36
37
  Review under evidence validity, then restart Seal on the new digest.
37
38
  8. **Draft/check.** Write `seal.md` from
38
39
  [`seal-template.md`](seal-template.md) with the GO/NO-GO rationale, acceptance map,
39
- test-analysis account, stood-decision verdicts, all seven reviewer accounts,
40
+ test-analysis account, stood-decision verdicts, all seven roster reviewer accounts plus proof-runner and doubt-reviewer,
40
41
  and exactly one `Candidate SHA-256: <64 lowercase hex>` line. Then run:
41
42
  ```bash
42
43
  devrites-engine check seal "<slug>"
@@ -16,6 +16,8 @@ Candidate SHA-256: <64 lowercase hex>
16
16
  - devrites-security-auditor: <outcome>
17
17
  - devrites-performance-reviewer: <outcome>
18
18
  - devrites-devex-reviewer: <outcome>
19
+ - devrites-proof-runner: <outcome>
20
+ - devrites-doubt-reviewer: <outcome, or Not-applicable: no decision stood>
19
21
  ## Risks / Rollback
20
22
  <risks/recovery>
21
23
  ## Stood Decisions
@@ -72,8 +72,10 @@ if absent, route to `/rite-spec <feature>`. Ship only with current **GO** in `se
72
72
  stops. Any command/scope/branch/message/tag/PR change or retry needs a fresh prompt;
73
73
  native approval is still required.
74
74
  4. On GO, commit; verify committed state/path set and exact candidate digest; then push →
75
- tag/PR as applicable via `git-ship.md`. Capture SHA(s), branch, tag/PR URL. Mismatch
76
- stops before push/tag; retry needs fresh approval.
75
+ tag/PR as applicable via `git-ship.md`. Record SHA and push state in `ship.md` before
76
+ push (git-ship 7a); a push/tag/PR failure stops, and a rerun resumes at push under
77
+ fresh type-GO. Capture branch, tag/PR URL. Mismatch stops before push/tag; retry
78
+ needs fresh approval.
77
79
  4a. **PR only:** render [`git-ship.md`](reference/git-ship.md#pull-request-body)'s
78
80
  structured body; omit empty sections.
79
81
  5. Re-scan the four residual sources; any new/missing/changed item blocks archive.
@@ -52,7 +52,8 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
52
52
  sequence whose workspace is sealed in this run
53
53
  ([afk-hitl.md § Sequence continuation](../../devrites-lib/reference/standards/afk-hitl.md#sequence-continuation-continue_sequence-max_workspaces));
54
54
  disclose the exact slug set. A different slug, missing colon, broad `WIP(` match,
55
- ordinary commit, or mixed history blocks; never reinterpret the range.
55
+ ordinary commit, or mixed history blocks; never reinterpret the range. The recorded
56
+ ship commit of a resumed ship (step 7a) is not an ordinary commit for that rerun.
56
57
  2. **Verify the candidate.** Rerun `devrites-engine check candidate <slug>` and
57
58
  `devrites-engine check seal <slug>`, compare every binding, require the
58
59
  candidate worktree paths to be unchanged, and inspect the existing staged
@@ -98,6 +99,11 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
98
99
  paths still match `HEAD`, then rerun `devrites-engine check candidate <slug>`
99
100
  and `devrites-engine check seal <slug>` and compare the exact digest again.
100
101
  Any mismatch stops; do not reinterpret it.
102
+ 7a. **Record before push.** Write `ship.md` `Commit(s)` and `Push: pending`. A failed
103
+ push/tag/PR records `failed`, an unanswered or timed-out one `unknown`; stop. Check
104
+ the remote ref (`git ls-remote`) before any retry. A rerun whose HEAD equals the
105
+ recorded commit and whose candidate digest is unchanged skips steps 1-7 and
106
+ prompts a fresh type-GO for only the remaining push/tag/PR commands.
101
107
  8. **Push** to the project-conventional target branch.
102
108
  9. **Tag / PR** only when project convention requires it; otherwise skip.
103
109
  10. **Close sealed predecessors** only when the prompt disclosed them: run the
@@ -105,7 +111,7 @@ Pre-GO is read-only. Do not run the disclosed collapse or staging commands.
105
111
  because `ACTIVE` names the release workspace; a nonzero exit stops the rest and
106
112
  is reported, never retried against an unverified destination.
107
113
 
108
- Record SHA(s), branch, and tag/PR URL in `ship.md`.
114
+ Update `Push:` to `pushed` and record branch and tag/PR URL in `ship.md`.
109
115
 
110
116
  ## Pull request body
111
117
 
@@ -1,6 +1,6 @@
1
1
  # `ship.md` template
2
2
 
3
- Write before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
3
+ Write Commit(s)/Push at git-ship step 7a; complete before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
4
4
 
5
5
  ```markdown
6
6
  # Ship: <slug>
@@ -10,6 +10,7 @@ Write before close-out; it moves to `.devrites/archive/<slug>/ship.md`.
10
10
  - Branch: <branch>
11
11
  - Commit(s): <sha> [<sha> …]
12
12
  - Tag/PR: <value|none>
13
+ - Push: <pushed|pending|failed|unknown>
13
14
 
14
15
  ## What shipped
15
16
  <project-vocabulary paragraph>
@@ -143,8 +143,8 @@ load a routed standard to discover required behavior, not to prescribe implement
143
143
  complete-block preservation rule.
144
144
  `tasks.md` deliberately does not exist yet; cross-artifact traceability starts in
145
145
  `/rite-define`. Any grammar or delta failure blocks. The interruption forecast must be resolved, owned, or a justified
146
- action-time gate. Run the [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md) marker sweep; a kept hit blocks. Then write
147
- `Spec gate: passed <iso>` with its `marker sweep:` line.
146
+ action-time gate. Run the [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md) marker sweep; a kept hit blocks. Then record
147
+ `passed <iso>; marker sweep: …` in the `state.md` `spec_gate` row, never in `spec.md`.
148
148
  6a. **Existing-spec delta.** For a pre-existing slug/workspace, compare old/new
149
149
  spec and questions, then show `Acceptance delta` (added/removed/reworded IDs)
150
150
  and `Open-question delta` (opened/resolved/reworded IDs), using `none` for
@@ -77,7 +77,7 @@ Each question checks one requirement-prose failure mode:
77
77
  The spec **Readiness gate** at the bottom of
78
78
  [`spec-template.md`](spec-template.md) requires every
79
79
  emitted `checklists/<domain>.md` to reach `Verdict: pass` (zero CRITICAL fails) before the gate
80
- passes. Minor fails are logged, not blocking. A single open CRITICAL keeps the spec `Status: Draft`.
80
+ passes. Minor fails are logged, not blocking. A single open CRITICAL blocks `spec_gate: passed`.
81
81
  `/rite-define` reads the checklists at step 0 and **hard-blocks while any CRITICAL is
82
82
  unchecked**. A spec without checklists is not yet checked, so define stops and routes
83
83
  back here.