devrites 7.1.1 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +9 -4
  3. package/docs/dsh.md +46 -0
  4. package/engine/internal/devritespaths/paths.go +2 -0
  5. package/engine/internal/hostpack/hostpack.go +29 -5
  6. package/engine/internal/install/apply.go +14 -2
  7. package/engine/internal/install/install.go +7 -3
  8. package/engine/internal/install/merge.go +1 -0
  9. package/engine/internal/install/preflight.go +9 -2
  10. package/engine/internal/install/update.go +1 -1
  11. package/engine/internal/lib/dispatch_packet.go +1 -1
  12. package/pack/.claude/agents/devrites-upgrade-planner.md +12 -4
  13. package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +21 -4
  14. package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  15. package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  16. package/pack/.claude/skills/devrites-lib/reference/reply-contract.md +11 -11
  17. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  18. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +11 -1
  19. package/pack/.claude/skills/devrites-lib/reference/standards/core.md +41 -40
  20. package/pack/.claude/skills/rite-autocomplete/SKILL.md +12 -14
  21. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +34 -38
  22. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  23. package/pack/.claude/skills/rite-define/SKILL.md +28 -27
  24. package/pack/.claude/skills/rite-plan/SKILL.md +7 -2
  25. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +5 -2
  26. package/pack/.claude/skills/rite-resolve/SKILL.md +17 -10
  27. package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +18 -6
  28. package/pack/.claude/skills/rite-review/SKILL.md +4 -4
  29. package/pack/.claude/skills/rite-review/reference/security-review.md +4 -2
  30. package/pack/.claude/skills/rite-seal/SKILL.md +28 -33
  31. package/pack/.claude/skills/rite-ship/SKILL.md +14 -7
  32. package/pack/.claude/skills/rite-temper/SKILL.md +18 -18
  33. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +6 -7
  34. package/pack/.claude/skills/rite-upgrade/SKILL.md +7 -2
  35. package/pack/.claude/skills/rite-vet/SKILL.md +33 -34
  36. package/pack/generated/README.md +3 -1
  37. package/pack/generated/claude/agents/devrites-upgrade-planner.md +12 -4
  38. package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +21 -4
  39. package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  40. package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  41. package/pack/generated/claude/skills/devrites-lib/reference/reply-contract.md +11 -11
  42. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  43. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +11 -1
  44. package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +41 -40
  45. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +12 -14
  46. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +34 -38
  47. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  48. package/pack/generated/claude/skills/rite-define/SKILL.md +28 -27
  49. package/pack/generated/claude/skills/rite-plan/SKILL.md +7 -2
  50. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +5 -2
  51. package/pack/generated/claude/skills/rite-resolve/SKILL.md +17 -10
  52. package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +18 -6
  53. package/pack/generated/claude/skills/rite-review/SKILL.md +4 -4
  54. package/pack/generated/claude/skills/rite-review/reference/security-review.md +4 -2
  55. package/pack/generated/claude/skills/rite-seal/SKILL.md +28 -33
  56. package/pack/generated/claude/skills/rite-ship/SKILL.md +14 -7
  57. package/pack/generated/claude/skills/rite-temper/SKILL.md +18 -18
  58. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +6 -7
  59. package/pack/generated/claude/skills/rite-upgrade/SKILL.md +7 -2
  60. package/pack/generated/claude/skills/rite-vet/SKILL.md +33 -34
  61. package/pack/generated/codex/agents/devrites-upgrade-planner.toml +12 -4
  62. package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +21 -4
  63. package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  64. package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  65. package/pack/generated/codex/skills/devrites-lib/reference/reply-contract.md +11 -11
  66. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  67. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +11 -1
  68. package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +41 -40
  69. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +12 -14
  70. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +34 -38
  71. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  72. package/pack/generated/codex/skills/rite-define/SKILL.md +28 -27
  73. package/pack/generated/codex/skills/rite-plan/SKILL.md +7 -2
  74. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +5 -2
  75. package/pack/generated/codex/skills/rite-resolve/SKILL.md +17 -10
  76. package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +18 -6
  77. package/pack/generated/codex/skills/rite-review/SKILL.md +4 -4
  78. package/pack/generated/codex/skills/rite-review/reference/security-review.md +4 -2
  79. package/pack/generated/codex/skills/rite-seal/SKILL.md +28 -33
  80. package/pack/generated/codex/skills/rite-ship/SKILL.md +14 -7
  81. package/pack/generated/codex/skills/rite-temper/SKILL.md +18 -18
  82. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +6 -7
  83. package/pack/generated/codex/skills/rite-upgrade/SKILL.md +7 -2
  84. package/pack/generated/codex/skills/rite-vet/SKILL.md +33 -34
  85. package/pack/generated/devin/agents/devrites-upgrade-planner.md +12 -4
  86. package/pack/generated/devin/skills/devrites-debug-recovery/SKILL.md +21 -4
  87. package/pack/generated/devin/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  88. package/pack/generated/devin/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  89. package/pack/generated/devin/skills/devrites-lib/reference/reply-contract.md +11 -11
  90. package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  91. package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +11 -1
  92. package/pack/generated/devin/skills/devrites-lib/reference/standards/core.md +41 -40
  93. package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +12 -14
  94. package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +34 -38
  95. package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  96. package/pack/generated/devin/skills/rite-define/SKILL.md +28 -27
  97. package/pack/generated/devin/skills/rite-plan/SKILL.md +7 -2
  98. package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +5 -2
  99. package/pack/generated/devin/skills/rite-resolve/SKILL.md +17 -10
  100. package/pack/generated/devin/skills/rite-resolve/reference/answer-protocol.md +18 -6
  101. package/pack/generated/devin/skills/rite-review/SKILL.md +4 -4
  102. package/pack/generated/devin/skills/rite-review/reference/security-review.md +4 -2
  103. package/pack/generated/devin/skills/rite-seal/SKILL.md +28 -33
  104. package/pack/generated/devin/skills/rite-ship/SKILL.md +14 -7
  105. package/pack/generated/devin/skills/rite-temper/SKILL.md +18 -18
  106. package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +6 -7
  107. package/pack/generated/devin/skills/rite-upgrade/SKILL.md +7 -2
  108. package/pack/generated/devin/skills/rite-vet/SKILL.md +33 -34
  109. package/pack/generated/dsh/AGENTS.md +20 -0
  110. package/pack/generated/dsh/agents/devrites-code-reviewer.md +180 -0
  111. package/pack/generated/dsh/agents/devrites-devex-reviewer.md +137 -0
  112. package/pack/generated/dsh/agents/devrites-doubt-reviewer.md +100 -0
  113. package/pack/generated/dsh/agents/devrites-evidence-scout.md +93 -0
  114. package/pack/generated/dsh/agents/devrites-frontend-reviewer.md +139 -0
  115. package/pack/generated/dsh/agents/devrites-performance-reviewer.md +142 -0
  116. package/pack/generated/dsh/agents/devrites-plan-drafter.md +113 -0
  117. package/pack/generated/dsh/agents/devrites-plan-reviewer.md +167 -0
  118. package/pack/generated/dsh/agents/devrites-proof-runner.md +101 -0
  119. package/pack/generated/dsh/agents/devrites-retrospector.md +82 -0
  120. package/pack/generated/dsh/agents/devrites-security-auditor.md +146 -0
  121. package/pack/generated/dsh/agents/devrites-simplifier-reviewer.md +113 -0
  122. package/pack/generated/dsh/agents/devrites-slice-wright.md +240 -0
  123. package/pack/generated/dsh/agents/devrites-spec-reviewer.md +105 -0
  124. package/pack/generated/dsh/agents/devrites-strategy-reviewer.md +109 -0
  125. package/pack/generated/dsh/agents/devrites-test-analyst.md +110 -0
  126. package/pack/generated/dsh/agents/devrites-upgrade-planner.md +107 -0
  127. package/pack/generated/dsh/agents/fast-builder.md +92 -0
  128. package/pack/generated/dsh/agents/fast-checker.md +61 -0
  129. package/pack/generated/dsh/agents/fast-critic.md +71 -0
  130. package/pack/generated/dsh/agents/fast-planner.md +95 -0
  131. package/pack/generated/dsh/agents/overhaul-backend-engineer.md +70 -0
  132. package/pack/generated/dsh/agents/overhaul-boundary.md +64 -0
  133. package/pack/generated/dsh/agents/overhaul-craft.md +85 -0
  134. package/pack/generated/dsh/agents/overhaul-frontend-engineer.md +73 -0
  135. package/pack/generated/dsh/agents/overhaul-implementer.md +72 -0
  136. package/pack/generated/dsh/agents/overhaul-recon.md +77 -0
  137. package/pack/generated/dsh/agents/overhaul-specialist.md +67 -0
  138. package/pack/generated/dsh/agents/overhaul-verifier.md +73 -0
  139. package/pack/generated/dsh/runtime/cordis.patch.yml +1450 -0
  140. package/pack/generated/dsh/runtime/specialist.mjs +62 -0
  141. package/pack/generated/dsh/skills/devrites-api-interface/SKILL.md +65 -0
  142. package/pack/generated/dsh/skills/devrites-audit/SKILL.md +60 -0
  143. package/pack/generated/dsh/skills/devrites-browser-proof/SKILL.md +109 -0
  144. package/pack/generated/dsh/skills/devrites-browser-proof/reference/browser-performance.md +19 -0
  145. package/pack/generated/dsh/skills/devrites-browser-proof/reference/visual-verdict.md +38 -0
  146. package/pack/generated/dsh/skills/devrites-debug-recovery/SKILL.md +119 -0
  147. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
  148. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +41 -0
  149. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/hypotheses.md +23 -0
  150. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
  151. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/regression-test.md +33 -0
  152. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/trace.md +25 -0
  153. package/pack/generated/dsh/skills/devrites-doubt/SKILL.md +83 -0
  154. package/pack/generated/dsh/skills/devrites-frontend-craft/SKILL.md +89 -0
  155. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/craft.md +63 -0
  156. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/design-references.md +120 -0
  157. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
  158. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/quality-standards.md +286 -0
  159. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
  160. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/shape.md +61 -0
  161. package/pack/generated/dsh/skills/devrites-interview/SKILL.md +107 -0
  162. package/pack/generated/dsh/skills/devrites-lib/SKILL.md +98 -0
  163. package/pack/generated/dsh/skills/devrites-lib/reference/candidate-integrity.md +59 -0
  164. package/pack/generated/dsh/skills/devrites-lib/reference/intent-map.md +86 -0
  165. package/pack/generated/dsh/skills/devrites-lib/reference/orchestration-profiles.md +48 -0
  166. package/pack/generated/dsh/skills/devrites-lib/reference/parallel-dispatch.md +184 -0
  167. package/pack/generated/dsh/skills/devrites-lib/reference/reply-contract.md +123 -0
  168. package/pack/generated/dsh/skills/devrites-lib/reference/standards/README.md +70 -0
  169. package/pack/generated/dsh/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +32 -0
  170. package/pack/generated/dsh/skills/devrites-lib/reference/standards/afk-hitl.md +467 -0
  171. package/pack/generated/dsh/skills/devrites-lib/reference/standards/agents.md +231 -0
  172. package/pack/generated/dsh/skills/devrites-lib/reference/standards/anti-patterns.md +50 -0
  173. package/pack/generated/dsh/skills/devrites-lib/reference/standards/architecture-health.md +64 -0
  174. package/pack/generated/dsh/skills/devrites-lib/reference/standards/assumption-checkpoints.md +42 -0
  175. package/pack/generated/dsh/skills/devrites-lib/reference/standards/audit-coverage.md +107 -0
  176. package/pack/generated/dsh/skills/devrites-lib/reference/standards/browser-proof-checklist.md +37 -0
  177. package/pack/generated/dsh/skills/devrites-lib/reference/standards/ci-cd.md +62 -0
  178. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-index.md +111 -0
  179. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-navigation.md +69 -0
  180. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-review.md +178 -0
  181. package/pack/generated/dsh/skills/devrites-lib/reference/standards/coding-style.md +53 -0
  182. package/pack/generated/dsh/skills/devrites-lib/reference/standards/context-hygiene.md +136 -0
  183. package/pack/generated/dsh/skills/devrites-lib/reference/standards/core.md +202 -0
  184. package/pack/generated/dsh/skills/devrites-lib/reference/standards/data-integrity.md +144 -0
  185. package/pack/generated/dsh/skills/devrites-lib/reference/standards/debug-recovery.md +42 -0
  186. package/pack/generated/dsh/skills/devrites-lib/reference/standards/definition-of-done.md +25 -0
  187. package/pack/generated/dsh/skills/devrites-lib/reference/standards/deprecation.md +49 -0
  188. package/pack/generated/dsh/skills/devrites-lib/reference/standards/developer-experience.md +128 -0
  189. package/pack/generated/dsh/skills/devrites-lib/reference/standards/development-workflow.md +31 -0
  190. package/pack/generated/dsh/skills/devrites-lib/reference/standards/documentation.md +55 -0
  191. package/pack/generated/dsh/skills/devrites-lib/reference/standards/duplicate-code.md +129 -0
  192. package/pack/generated/dsh/skills/devrites-lib/reference/standards/edge-case-trace.md +94 -0
  193. package/pack/generated/dsh/skills/devrites-lib/reference/standards/elicitation.md +114 -0
  194. package/pack/generated/dsh/skills/devrites-lib/reference/standards/error-handling.md +49 -0
  195. package/pack/generated/dsh/skills/devrites-lib/reference/standards/gates.md +159 -0
  196. package/pack/generated/dsh/skills/devrites-lib/reference/standards/git-workflow.md +51 -0
  197. package/pack/generated/dsh/skills/devrites-lib/reference/standards/glossary.md +40 -0
  198. package/pack/generated/dsh/skills/devrites-lib/reference/standards/hooks.md +41 -0
  199. package/pack/generated/dsh/skills/devrites-lib/reference/standards/integration-reliability.md +121 -0
  200. package/pack/generated/dsh/skills/devrites-lib/reference/standards/loop-operations.md +123 -0
  201. package/pack/generated/dsh/skills/devrites-lib/reference/standards/observability.md +90 -0
  202. package/pack/generated/dsh/skills/devrites-lib/reference/standards/one-shot-actions.md +105 -0
  203. package/pack/generated/dsh/skills/devrites-lib/reference/standards/patterns.md +70 -0
  204. package/pack/generated/dsh/skills/devrites-lib/reference/standards/performance.md +88 -0
  205. package/pack/generated/dsh/skills/devrites-lib/reference/standards/principles.md +56 -0
  206. package/pack/generated/dsh/skills/devrites-lib/reference/standards/prose-style.md +127 -0
  207. package/pack/generated/dsh/skills/devrites-lib/reference/standards/release/ship-checklist.md +12 -0
  208. package/pack/generated/dsh/skills/devrites-lib/reference/standards/repository-topology.md +82 -0
  209. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/README.md +28 -0
  210. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ci-workflows.md +50 -0
  211. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/default.md +42 -0
  212. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/go.md +47 -0
  213. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/python.md +46 -0
  214. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/react.md +55 -0
  215. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/shell.md +40 -0
  216. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/stack-profile.md +155 -0
  217. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ts-js.md +74 -0
  218. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review-checklist.md +14 -0
  219. package/pack/generated/dsh/skills/devrites-lib/reference/standards/security-checklist.md +30 -0
  220. package/pack/generated/dsh/skills/devrites-lib/reference/standards/security.md +283 -0
  221. package/pack/generated/dsh/skills/devrites-lib/reference/standards/skill-authoring.md +269 -0
  222. package/pack/generated/dsh/skills/devrites-lib/reference/standards/spec-grammar.md +214 -0
  223. package/pack/generated/dsh/skills/devrites-lib/reference/standards/test-proof-checklist.md +18 -0
  224. package/pack/generated/dsh/skills/devrites-lib/reference/standards/testing.md +295 -0
  225. package/pack/generated/dsh/skills/devrites-lib/reference/standards/tooling.md +125 -0
  226. package/pack/generated/dsh/skills/devrites-lib/reference/standards/verification-methods.md +143 -0
  227. package/pack/generated/dsh/skills/devrites-lib/reference/standards/windows.md +60 -0
  228. package/pack/generated/dsh/skills/devrites-lib/reference/standards/workflow-artifacts.md +435 -0
  229. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
  230. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
  231. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
  232. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
  233. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
  234. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
  235. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
  236. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
  237. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
  238. package/pack/generated/dsh/skills/devrites-lib/reference/workspace-artifact-schema.md +312 -0
  239. package/pack/generated/dsh/skills/devrites-prose-craft/SKILL.md +81 -0
  240. package/pack/generated/dsh/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
  241. package/pack/generated/dsh/skills/devrites-prose-craft/reference/examples.md +136 -0
  242. package/pack/generated/dsh/skills/devrites-prose-craft/reference/structures.md +196 -0
  243. package/pack/generated/dsh/skills/devrites-source-driven/SKILL.md +54 -0
  244. package/pack/generated/dsh/skills/devrites-ux-shape/SKILL.md +135 -0
  245. package/pack/generated/dsh/skills/devrites-ux-shape/reference/brief-template.md +108 -0
  246. package/pack/generated/dsh/skills/devrites-ux-shape/reference/visual-direction-probe.md +50 -0
  247. package/pack/generated/dsh/skills/overhaul/SKILL.md +221 -0
  248. package/pack/generated/dsh/skills/overhaul/references/audit-domains.md +390 -0
  249. package/pack/generated/dsh/skills/overhaul/references/lifecycle.md +314 -0
  250. package/pack/generated/dsh/skills/overhaul/references/orchestration.md +291 -0
  251. package/pack/generated/dsh/skills/overhaul/references/records.md +203 -0
  252. package/pack/generated/dsh/skills/overhaul/references/repair-and-measurement.md +310 -0
  253. package/pack/generated/dsh/skills/overhaul/references/review-and-report.md +139 -0
  254. package/pack/generated/dsh/skills/overhaul/references/scope-and-safety.md +233 -0
  255. package/pack/generated/dsh/skills/overhaul/references/scoring.md +261 -0
  256. package/pack/generated/dsh/skills/overhaul/references/stack-profiles.md +316 -0
  257. package/pack/generated/dsh/skills/rite/SKILL.md +157 -0
  258. package/pack/generated/dsh/skills/rite/reference/menu.md +49 -0
  259. package/pack/generated/dsh/skills/rite-adopt/SKILL.md +64 -0
  260. package/pack/generated/dsh/skills/rite-adopt/reference/adoption.md +25 -0
  261. package/pack/generated/dsh/skills/rite-adopt/reference/anti-patterns.md +19 -0
  262. package/pack/generated/dsh/skills/rite-autocomplete/SKILL.md +167 -0
  263. package/pack/generated/dsh/skills/rite-autocomplete/reference/decision-policy.md +44 -0
  264. package/pack/generated/dsh/skills/rite-autocomplete/reference/lookahead.md +50 -0
  265. package/pack/generated/dsh/skills/rite-autocomplete/reference/loop.md +164 -0
  266. package/pack/generated/dsh/skills/rite-autocomplete/reference/stop-conditions.md +118 -0
  267. package/pack/generated/dsh/skills/rite-build/SKILL.md +126 -0
  268. package/pack/generated/dsh/skills/rite-build/reference/afk-discipline.md +153 -0
  269. package/pack/generated/dsh/skills/rite-build/reference/anti-patterns.md +27 -0
  270. package/pack/generated/dsh/skills/rite-build/reference/checkpoint-protocol.md +115 -0
  271. package/pack/generated/dsh/skills/rite-build/reference/checkpoint.md +79 -0
  272. package/pack/generated/dsh/skills/rite-build/reference/frontend-trigger.md +39 -0
  273. package/pack/generated/dsh/skills/rite-build/reference/one-slice-cycle.md +57 -0
  274. package/pack/generated/dsh/skills/rite-build/reference/output.md +29 -0
  275. package/pack/generated/dsh/skills/rite-build/reference/parallel-batch.md +260 -0
  276. package/pack/generated/dsh/skills/rite-build/reference/phase-contract.md +130 -0
  277. package/pack/generated/dsh/skills/rite-build/reference/spec-drift-guard.md +91 -0
  278. package/pack/generated/dsh/skills/rite-build/reference/tdd.md +27 -0
  279. package/pack/generated/dsh/skills/rite-build/reference/wright-dispatch.md +198 -0
  280. package/pack/generated/dsh/skills/rite-clarify/SKILL.md +104 -0
  281. package/pack/generated/dsh/skills/rite-clarify/reference/anti-patterns.md +24 -0
  282. package/pack/generated/dsh/skills/rite-clarify/reference/decision-coverage.md +56 -0
  283. package/pack/generated/dsh/skills/rite-converge/SKILL.md +167 -0
  284. package/pack/generated/dsh/skills/rite-converge/reference/anti-patterns.md +35 -0
  285. package/pack/generated/dsh/skills/rite-converge/reference/convergence-assessment.md +70 -0
  286. package/pack/generated/dsh/skills/rite-customize/SKILL.md +64 -0
  287. package/pack/generated/dsh/skills/rite-define/SKILL.md +203 -0
  288. package/pack/generated/dsh/skills/rite-define/reference/anti-patterns.md +26 -0
  289. package/pack/generated/dsh/skills/rite-define/reference/gates.md +160 -0
  290. package/pack/generated/dsh/skills/rite-define/reference/plan-template.md +153 -0
  291. package/pack/generated/dsh/skills/rite-doctor/SKILL.md +107 -0
  292. package/pack/generated/dsh/skills/rite-dogfood/SKILL.md +57 -0
  293. package/pack/generated/dsh/skills/rite-explain/SKILL.md +154 -0
  294. package/pack/generated/dsh/skills/rite-explain/reference/intake.md +89 -0
  295. package/pack/generated/dsh/skills/rite-fast/SKILL.md +185 -0
  296. package/pack/generated/dsh/skills/rite-fast/reference/artifacts.md +107 -0
  297. package/pack/generated/dsh/skills/rite-fast/reference/check-and-triage.md +51 -0
  298. package/pack/generated/dsh/skills/rite-frame/SKILL.md +119 -0
  299. package/pack/generated/dsh/skills/rite-frame/reference/failure-modes.md +66 -0
  300. package/pack/generated/dsh/skills/rite-handoff/SKILL.md +117 -0
  301. package/pack/generated/dsh/skills/rite-handoff/reference/handoff-template.md +56 -0
  302. package/pack/generated/dsh/skills/rite-harness/SKILL.md +76 -0
  303. package/pack/generated/dsh/skills/rite-harness/reference/feature-map.md +60 -0
  304. package/pack/generated/dsh/skills/rite-learn/SKILL.md +107 -0
  305. package/pack/generated/dsh/skills/rite-plan/SKILL.md +215 -0
  306. package/pack/generated/dsh/skills/rite-plan/reference/anti-patterns.md +34 -0
  307. package/pack/generated/dsh/skills/rite-plan/reference/dependency-graph.md +48 -0
  308. package/pack/generated/dsh/skills/rite-plan/reference/replan-and-repair.md +114 -0
  309. package/pack/generated/dsh/skills/rite-plan/reference/slicing.md +187 -0
  310. package/pack/generated/dsh/skills/rite-plan/reference/task-breakdown.md +50 -0
  311. package/pack/generated/dsh/skills/rite-polish/SKILL.md +128 -0
  312. package/pack/generated/dsh/skills/rite-polish/reference/adr-promotion.md +11 -0
  313. package/pack/generated/dsh/skills/rite-polish/reference/anti-ai-slop.md +210 -0
  314. package/pack/generated/dsh/skills/rite-polish/reference/anti-patterns.md +30 -0
  315. package/pack/generated/dsh/skills/rite-polish/reference/backend-polish.md +80 -0
  316. package/pack/generated/dsh/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
  317. package/pack/generated/dsh/skills/rite-polish/reference/code.md +87 -0
  318. package/pack/generated/dsh/skills/rite-polish/reference/design-memory.md +117 -0
  319. package/pack/generated/dsh/skills/rite-polish/reference/design-system-discovery.md +8 -0
  320. package/pack/generated/dsh/skills/rite-polish/reference/harden-checklist.md +110 -0
  321. package/pack/generated/dsh/skills/rite-polish/reference/ledger.md +67 -0
  322. package/pack/generated/dsh/skills/rite-polish/reference/ui.md +146 -0
  323. package/pack/generated/dsh/skills/rite-pov/SKILL.md +71 -0
  324. package/pack/generated/dsh/skills/rite-pr-feedback/SKILL.md +61 -0
  325. package/pack/generated/dsh/skills/rite-pressure-test/SKILL.md +76 -0
  326. package/pack/generated/dsh/skills/rite-prototype/SKILL.md +106 -0
  327. package/pack/generated/dsh/skills/rite-prove/SKILL.md +151 -0
  328. package/pack/generated/dsh/skills/rite-prove/reference/acceptance-proof.md +88 -0
  329. package/pack/generated/dsh/skills/rite-prove/reference/anti-patterns.md +25 -0
  330. package/pack/generated/dsh/skills/rite-prove/reference/browser-proof.md +51 -0
  331. package/pack/generated/dsh/skills/rite-prove/reference/failure-triage.md +53 -0
  332. package/pack/generated/dsh/skills/rite-prove/reference/proof-ladder.md +39 -0
  333. package/pack/generated/dsh/skills/rite-prove/reference/test-command-discovery.md +36 -0
  334. package/pack/generated/dsh/skills/rite-quick/SKILL.md +97 -0
  335. package/pack/generated/dsh/skills/rite-resolve/SKILL.md +113 -0
  336. package/pack/generated/dsh/skills/rite-resolve/reference/answer-protocol.md +129 -0
  337. package/pack/generated/dsh/skills/rite-review/SKILL.md +190 -0
  338. package/pack/generated/dsh/skills/rite-review/reference/anti-patterns.md +32 -0
  339. package/pack/generated/dsh/skills/rite-review/reference/cognitive-load.md +90 -0
  340. package/pack/generated/dsh/skills/rite-review/reference/feature-scoped-review.md +26 -0
  341. package/pack/generated/dsh/skills/rite-review/reference/five-axis-review.md +66 -0
  342. package/pack/generated/dsh/skills/rite-review/reference/nielsen-heuristics.md +126 -0
  343. package/pack/generated/dsh/skills/rite-review/reference/performance-checklist.md +99 -0
  344. package/pack/generated/dsh/skills/rite-review/reference/performance-review.md +14 -0
  345. package/pack/generated/dsh/skills/rite-review/reference/security-review.md +44 -0
  346. package/pack/generated/dsh/skills/rite-seal/SKILL.md +99 -0
  347. package/pack/generated/dsh/skills/rite-seal/reference/anti-patterns.md +29 -0
  348. package/pack/generated/dsh/skills/rite-seal/reference/final-evidence.md +41 -0
  349. package/pack/generated/dsh/skills/rite-seal/reference/go-no-go.md +32 -0
  350. package/pack/generated/dsh/skills/rite-seal/reference/output.md +5 -0
  351. package/pack/generated/dsh/skills/rite-seal/reference/phase-contract.md +56 -0
  352. package/pack/generated/dsh/skills/rite-seal/reference/risk-and-rollback.md +56 -0
  353. package/pack/generated/dsh/skills/rite-seal/reference/seal-template.md +32 -0
  354. package/pack/generated/dsh/skills/rite-ship/SKILL.md +101 -0
  355. package/pack/generated/dsh/skills/rite-ship/reference/anti-patterns.md +28 -0
  356. package/pack/generated/dsh/skills/rite-ship/reference/close-out.md +69 -0
  357. package/pack/generated/dsh/skills/rite-ship/reference/git-ship.md +128 -0
  358. package/pack/generated/dsh/skills/rite-ship/reference/rollout.md +62 -0
  359. package/pack/generated/dsh/skills/rite-ship/reference/ship-template.md +40 -0
  360. package/pack/generated/dsh/skills/rite-spec/SKILL.md +169 -0
  361. package/pack/generated/dsh/skills/rite-spec/reference/acceptance-criteria.md +31 -0
  362. package/pack/generated/dsh/skills/rite-spec/reference/ai-spec-template.md +40 -0
  363. package/pack/generated/dsh/skills/rite-spec/reference/anti-patterns.md +27 -0
  364. package/pack/generated/dsh/skills/rite-spec/reference/interview-patterns.md +56 -0
  365. package/pack/generated/dsh/skills/rite-spec/reference/investigation.md +83 -0
  366. package/pack/generated/dsh/skills/rite-spec/reference/question-protocol.md +36 -0
  367. package/pack/generated/dsh/skills/rite-spec/reference/references-intake.md +62 -0
  368. package/pack/generated/dsh/skills/rite-spec/reference/spec-checklists.md +89 -0
  369. package/pack/generated/dsh/skills/rite-spec/reference/spec-template.md +160 -0
  370. package/pack/generated/dsh/skills/rite-spec/reference/state-workspace.md +240 -0
  371. package/pack/generated/dsh/skills/rite-status/SKILL.md +74 -0
  372. package/pack/generated/dsh/skills/rite-temper/SKILL.md +137 -0
  373. package/pack/generated/dsh/skills/rite-temper/reference/anti-patterns.md +30 -0
  374. package/pack/generated/dsh/skills/rite-temper/reference/review-dimensions.md +66 -0
  375. package/pack/generated/dsh/skills/rite-temper/reference/scope-modes.md +52 -0
  376. package/pack/generated/dsh/skills/rite-temper/reference/significance.md +55 -0
  377. package/pack/generated/dsh/skills/rite-temper/reference/strategy-template.md +101 -0
  378. package/pack/generated/dsh/skills/rite-upgrade/SKILL.md +142 -0
  379. package/pack/generated/dsh/skills/rite-vet/SKILL.md +242 -0
  380. package/pack/generated/dsh/skills/rite-vet/reference/anti-patterns.md +43 -0
  381. package/pack/generated/dsh/skills/rite-vet/reference/artifacts.md +248 -0
  382. package/pack/generated/dsh/skills/rite-vet/reference/cross-model.md +19 -0
  383. package/pack/generated/dsh/skills/rite-vet/reference/depth.md +59 -0
  384. package/pack/generated/dsh/skills/rite-vet/reference/eng-lenses.md +48 -0
  385. package/pack/generated/dsh/skills/rite-vet/reference/review-axes.md +210 -0
  386. package/pack/generated/dsh/skills/rite-watch-pr/SKILL.md +87 -0
  387. package/pack/generated/dsh/skills/rite-zoom-out/SKILL.md +76 -0
  388. package/pack/generated/omp/agents/devrites-upgrade-planner.md +12 -4
  389. package/pack/generated/omp/skills/devrites-debug-recovery/SKILL.md +21 -4
  390. package/pack/generated/omp/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  391. package/pack/generated/omp/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  392. package/pack/generated/omp/skills/devrites-lib/reference/reply-contract.md +11 -11
  393. package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  394. package/pack/generated/omp/skills/devrites-lib/reference/standards/agents.md +11 -1
  395. package/pack/generated/omp/skills/devrites-lib/reference/standards/core.md +41 -40
  396. package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +12 -14
  397. package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +34 -38
  398. package/pack/generated/omp/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  399. package/pack/generated/omp/skills/rite-define/SKILL.md +28 -27
  400. package/pack/generated/omp/skills/rite-plan/SKILL.md +7 -2
  401. package/pack/generated/omp/skills/rite-plan/reference/replan-and-repair.md +5 -2
  402. package/pack/generated/omp/skills/rite-resolve/SKILL.md +17 -10
  403. package/pack/generated/omp/skills/rite-resolve/reference/answer-protocol.md +18 -6
  404. package/pack/generated/omp/skills/rite-review/SKILL.md +4 -4
  405. package/pack/generated/omp/skills/rite-review/reference/security-review.md +4 -2
  406. package/pack/generated/omp/skills/rite-seal/SKILL.md +28 -33
  407. package/pack/generated/omp/skills/rite-ship/SKILL.md +14 -7
  408. package/pack/generated/omp/skills/rite-temper/SKILL.md +18 -18
  409. package/pack/generated/omp/skills/rite-temper/reference/scope-modes.md +6 -7
  410. package/pack/generated/omp/skills/rite-upgrade/SKILL.md +7 -2
  411. package/pack/generated/omp/skills/rite-vet/SKILL.md +33 -34
  412. package/pack/generated/pi/agents/devrites-upgrade-planner.md +12 -4
  413. package/pack/generated/pi/skills/devrites-debug-recovery/SKILL.md +21 -4
  414. package/pack/generated/pi/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +10 -3
  415. package/pack/generated/pi/skills/devrites-debug-recovery/reference/regression-test.md +7 -4
  416. package/pack/generated/pi/skills/devrites-lib/reference/reply-contract.md +11 -11
  417. package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +52 -56
  418. package/pack/generated/pi/skills/devrites-lib/reference/standards/agents.md +11 -1
  419. package/pack/generated/pi/skills/devrites-lib/reference/standards/core.md +41 -40
  420. package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +12 -14
  421. package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +34 -38
  422. package/pack/generated/pi/skills/rite-autocomplete/reference/stop-conditions.md +38 -39
  423. package/pack/generated/pi/skills/rite-define/SKILL.md +28 -27
  424. package/pack/generated/pi/skills/rite-plan/SKILL.md +7 -2
  425. package/pack/generated/pi/skills/rite-plan/reference/replan-and-repair.md +5 -2
  426. package/pack/generated/pi/skills/rite-resolve/SKILL.md +17 -10
  427. package/pack/generated/pi/skills/rite-resolve/reference/answer-protocol.md +18 -6
  428. package/pack/generated/pi/skills/rite-review/SKILL.md +4 -4
  429. package/pack/generated/pi/skills/rite-review/reference/security-review.md +4 -2
  430. package/pack/generated/pi/skills/rite-seal/SKILL.md +28 -33
  431. package/pack/generated/pi/skills/rite-ship/SKILL.md +14 -7
  432. package/pack/generated/pi/skills/rite-temper/SKILL.md +18 -18
  433. package/pack/generated/pi/skills/rite-temper/reference/scope-modes.md +6 -7
  434. package/pack/generated/pi/skills/rite-upgrade/SKILL.md +7 -2
  435. package/pack/generated/pi/skills/rite-vet/SKILL.md +33 -34
  436. package/package.json +3 -1
  437. package/scripts/build-host-artifacts.sh +6 -2
  438. package/scripts/dsh-generate.py +135 -0
  439. package/scripts/dsh-specialist.mjs +62 -0
  440. package/scripts/install-lib.sh +3 -1
@@ -0,0 +1,198 @@
1
+ # Slice-wright dispatch
2
+
3
+ > Root-only: not inlined in --role bundles.
4
+
5
+ `/rite-build` gives one bounded task to exact `devrites-slice-wright`.
6
+ Root owns scope/artifacts/inspection; never writes source/tests.
7
+ Wright alone writes; no agents.
8
+
9
+ ## Host gate
10
+
11
+ Apply [source-writing boundary](../../devrites-lib/reference/standards/agents.md#source-writing-boundary):
12
+ Claude grants only the exact wright `acceptEdits`; Codex uses its workspace root,
13
+ the exact `:workspace` wright, and read-only specialists. Never bypass/substitute
14
+ the wright or recreate an engine bridge.
15
+
16
+ ## Standalone correction
17
+
18
+ `/rite-quick`, `/rite-dogfood`, `/rite-harness`, and `/rite-pr-feedback` fixes have no `tasks.md`
19
+ slice, so skip Prepare's `check slice`, `context --slice`, and the build `dispatch`
20
+ wave. Give the wright an inline contract: goal, acceptance check, exact
21
+ project-relative paths, and proof command. With an active workspace, `claim add`
22
+ those paths first. On return, compare its file list and `git diff --name-only`
23
+ with the paths; reject any extra path.
24
+
25
+ ## Isolated writer-worktree pilot
26
+
27
+ Use native isolation only when the current host exposes an explicit named-writer
28
+ worktree plus result reconciliation; separate agent threads or inherited sandboxes do
29
+ not qualify. Codex CLI custom subagents therefore use `same-worktree` unless a future
30
+ supported interface passes this capability gate—never create a manual worktree from the
31
+ read-only root to imitate it. Also require `git rev-parse
32
+ --show-superproject-working-tree` to be empty; resolved git/common dirs; committed,
33
+ clean candidate/index; all inputs at `HEAD`; no other writer; and green cheap isolated
34
+ baseline proof. Otherwise use serial same-worktree dispatch—never stash, commit, or
35
+ discard user work to qualify. Ask host for an explicit current-`HEAD` base when
36
+ supported. Regardless of host defaults, the wright's first command must prove actual `git rev-parse HEAD` equals supplied
37
+ `worktree_base`. Mismatch returns a gap with no write before project reads or baseline proof.
38
+
39
+ The isolated wright returns one local unpushed `transfer_commit` (contract
40
+ `WIP(<slug>):` subject, no slice id), its `worktree_base`, and exact files.
41
+ That commit is worker-branch transport, not the control-branch checkpoint. Root proves descendant base, exact `git diff --name-only`
42
+ `` `<base>..<transfer>` ``, no `.devrites/**`/submodule/symlink/unrelated delta, unchanged
43
+ source base, and no user-work overwrite. Use only host-native explicit reconciliation;
44
+ never ad hoc copy, cherry-pick, or merge from read-only root. Land on control
45
+ only per [`checkpoint.md`](checkpoint.md).
46
+
47
+ Conflict, extra/missing commit, moved base, or cleanup failure is `gap`/STOP:
48
+ preserve the worktree and commit. Without explicit reconciliation, use same-worktree serial.
49
+ Parallel isolated-writer worktrees remain forbidden until this serial pilot measures
50
+ transfer, conflict, proof, and review outcomes on both hosts; opt-in `/rite-build --parallel N`
51
+ (2≤N≤10) path-disjoint fan-out is the only sanctioned parallel mode. Same-worktree multi-writer / root-emulated
52
+ worktrees stay forbidden.
53
+
54
+ ## Prepare
55
+
56
+ 1. Run `devrites-engine check slice <slug> <SLICE-ID>` first — it fails a
57
+ malformed contract (missing goal, empty/invalid Writer allowlist,
58
+ unresolvable `Satisfies` AC ids, empty proof field) before a wright
59
+ context is spent; a failure is a gap, not a dispatch. A slice with a
60
+ `pre-dispatch <SLICE-ID>` preflight row next runs
61
+ `devrites-engine check preconditions <slug> --slice <SLICE-ID>` before
62
+ `dispatch open`; non-zero is the same gap. Then derive the
63
+ smallest exact project-relative source/test path list; reject
64
+ directories/globs, traversal, symlink escapes, duplicates, and `.devrites/**`.
65
+ A target composed only of vetted executable workflow artifacts routes to the
66
+ controlling root under
67
+ [`workflow-artifacts.md`](../../devrites-lib/reference/standards/workflow-artifacts.md);
68
+ its rejection here is not a blocker. Vet already closed the slice's write
69
+ set; re-check only consumers of files earlier slices changed since the
70
+ readiness binding, and fold a gap through `/rite-plan` before dispatch.
71
+ 2. Goal, verbatim acceptance, exclusions, context, `test-plan.md` proof
72
+ commands, and applicable standards reach the wright through the slice bundle
73
+ its contract names; only a native-worktree pilot contract adds the exact
74
+ `WIP(<slug>):` subject (no slice id). Build the wright's read-set with
75
+ `devrites-engine context --skills-root .dsh/skills <slug> --phase build --role slice-wright --slice <SLICE-ID> --trigger <set>`
76
+ and hand it the bundle path (over-budget artifacts arrive as anchor indexes;
77
+ read owning sections live). Evaluate each trigger condition and pass those
78
+ that fire (TDD slice → `tdd`, AFK run → `afk`, UI work → `frontend`, …).
79
+ The command prints `unselected=[...]`; an omitted applicable trigger is a gap.
80
+ For each triggered
81
+ topology/data/integration standard, add as anchored `--focus` rows only the feature-specific owner/invariant,
82
+ failure or partial-state case, recovery rule, and required proof from the vetted plan.
83
+ Do not paste the whole standard or silently omit an applicable risk.
84
+ Quote, as a `--focus` row, every active `decisions.md` carry-forward constraint whose `Files:`
85
+ overlap the task paths (or that names no files).
86
+ A new path requires a new bounded contract; the wright cannot widen the task.
87
+ The contract lists the slice's `Tests/proof` as writer-safe checks (syntax/type/lint,
88
+ unit and self-check suites, a narrow smoke of the changed path); `--checks` adds
89
+ gate IDs. Never forbid them: a blind wright's failures surface a review
90
+ round later. Artifact-producing, consumptive, or full canonical feature
91
+ gates stay root-owned, never in `--checks`; when `gates.md` has a `RUN: writer`
92
+ gate, the checks include `devrites-engine gates precheck <slug> --worktree <path> --slice <SLICE-ID>`
93
+ (those gates, minus ones only other unbuilt slices own, plus `check windows`;
94
+ never evidence, root still runs every gate).
95
+ 3. Run `devrites-engine check diff-scope <slug> --snapshot` before dispatch so
96
+ unrelated work remains distinguishable (it fingerprints every dirty path). For an isolated pilot, also record committed base SHA and exact
97
+ baseline status before asking the host for isolation. **Failing case:** paths that
98
+ were dirty at that baseline are listed as slice-owned after dispatch.
99
+
100
+ ## Run
101
+
102
+ Same-worktree (non-isolated) dispatch claims before writing: the `dispatch open`
103
+ below adds `--claim-session <id>`, one `--claim <path>` per task path, and
104
+ `--claim-ttl <minutes>` sized to the write; it runs the
105
+ `claim check --session <id> <task-paths>` test, and a live foreign holder fails the
106
+ open with no wave and no claim and stops the dispatch, per
107
+ [`agents.md`](../../devrites-lib/reference/standards/agents.md). `.devrites/**`
108
+ is never a task path; see [Workflow Artifact admission](../../devrites-lib/reference/standards/workflow-artifacts.md).
109
+ Render the contract with `devrites-engine packet <slug> --wave <wave> --phase build
110
+ --role slice-wright --slice <SLICE-ID> [--checks <G-ID,...>] [--focus <file>]` (it
111
+ writes the linted same-worktree `packets/<wave>.contract.md`; a native-worktree pilot
112
+ writes its own contract with `Isolation`, `worktree_base`, and subject) and hand the wright that text verbatim. Reviewers read
113
+ that file, so `--focus` rows state each defect to fix with its anchor, never a reviewer's verdict,
114
+ count, or pass status ("code review is no-findings" voids the next review). Ask the host
115
+ for the exact writer in fresh context; a repair round on the same slice whose
116
+ returned wright the host can still continue goes to that wright on its existing
117
+ handle instead, so it does not re-read the slice from scratch. Wait, and track it
118
+ through the launch barrier — `devrites-engine dispatch <slug> open --phase build --wave
119
+ <slice-id> --role slice-wright --slice <SLICE-ID> --contract <file>` (it refuses a
120
+ contract that forbids writer-safe checks or names none), then `start` with the host handle
121
+ (the last start seals the wave) and `return` on completion (auto-records dispatch/return metrics). Every 5 wright
122
+ rounds on one slice, `open` blocks for a reslice review. First re-admit each
123
+ finding still driving rounds under the Proportionality rule of
124
+ [agents.md § Result admission](../../devrites-lib/reference/standards/agents.md#result-admission): one without a broken anchor or a reachable trigger becomes a
125
+ Suggestion and drives no further round. Then propose an
126
+ acceptance-preserving split (`root_no_change_analysis` → `FOLD` per
127
+ [acceptance-preserving-reslice](../../devrites-lib/reference/standards/acceptance-preserving-reslice.md);
128
+ open findings move to the new slice owning their paths), or record
129
+ `## <DRIFT-ID> — <SLICE-ID> reslice review` with why no smaller split exists and
130
+ a spec trace of the slice's obligations (hardening no AC/INV/PROH requires moves to
131
+ a sibling slice dependents do not need, still gated before Seal), and
132
+ reopen with `--reslice-review <DRIFT-ID>`. Use
133
+ at most one writer across all linked worktrees for this workspace. Never run two
134
+ writers in one worktree, run isolated and same-worktree writers concurrently, or
135
+ substitute a generic agent. Opt-in `/rite-build --parallel N` fans out only under
136
+ [`parallel-batch.md`](parallel-batch.md).
137
+
138
+ The `return` that completes the wave releases its claim; `dispatch abandon --release`
139
+ releases it on any other host-confirmed terminal path (a stop, a launch refused with no
140
+ handle, or a timed-out child later confirmed terminal). A `claim add` claim releases
141
+ with `devrites-engine claim release --session <id> --id <claim-id>` on every terminal path:
142
+ successful return, rejected result, stop, or a launch the host refused with no handle. A
143
+ timeout or unknown outcome keeps the claim ([`parallel-dispatch.md`](../../devrites-lib/reference/parallel-dispatch.md#cancellation-and-terminal-reconciliation)).
144
+ TTL is crash recovery, not normal cleanup.
145
+ An `unattributed root edit` exit 3 (root-edit tripwire) routes the path through a wright wave naming it in
146
+ `--claim`, or, given evidence (owner work, gate output, a standalone wright, Polish ADR/`DESIGN.md`),
147
+ `dispatch <slug> attribute --reason <evidence> --path <path>`.
148
+
149
+ ## Inspect and prove
150
+
151
+ 1. Compare the returned file list and `git diff --name-only` with task paths.
152
+ `devrites-engine check diff-scope <slug> --allow <task-paths> --baseline` is the
153
+ mechanical subset gate (a step-3 path whose bytes are unchanged is not a
154
+ violation; a changed one still is) — run it before any reviewer dispatch; a violation
155
+ restores through the bounded wright without spending review, but only for a
156
+ path the wright's `files_changed` or diff trace attributes to it. An
157
+ unattributed extra path that was clean at the step-3 baseline is preserved
158
+ (never restored), recorded as drift, and stops for the human. **Failing case:**
159
+ a user edits `README.md` during a same-tree dispatch and the wright reverts it.
160
+ Reject a result that omits any required key — the bookkeeping arrays count
161
+ whether empty or filled — or adds a path. Root never widens scope or edits
162
+ source.
163
+ 2. Run `devrites-engine check windows <slug>` on the wright's diff (`--worktree`
164
+ in the same tree, plus `--since-dispatch <wave>` naming a repair round's wave;
165
+ `--base <B> --cwd <worktree>` for a parallel transfer commit). Each unwaived hit is repaired through the bounded wright or gets a
166
+ reasoned `windows.md` row before review; never waive to reach green. Then
167
+ inspect the test diff for deletion, skipping, focus markers, or loosened
168
+ assertions. Dedicated test analysis treats weakening as Critical.
169
+ Confirm a test for a data/integration/topology risk can actually exhibit that risk;
170
+ mocks that erase it and one-root proof offered for another root are unproven.
171
+ 3. Apply [independent Build review](phase-contract.md#independent-build-review)
172
+ and, in the same window, run only repository proof already approved by
173
+ `test-plan.md` against the same frozen candidate; neither waits for the
174
+ other. Human choices return; technical failures follow
175
+ [the canonical retry contract](../../devrites-lib/reference/standards/afk-hitl.md#retry-cap-no-progress-loops-and-self-resolve).
176
+ Derive accounting from recorded reproductions, corrections, and decisive rechecks.
177
+ 4. After proof, inspect `git diff --name-only` again in case a proof tool changed
178
+ source; a change rejects that candidate and voids the concurrent review. A
179
+ repair wright voids both; rerun both on the new candidate.
180
+ **Do not land on control until review and proof are both green.** Isolated
181
+ `transfer_commit` stays on the worker branch; same-worktree diffs stay
182
+ uncommitted. Serial: [`checkpoint.md`](checkpoint.md), then host may remove the
183
+ worktree. Parallel: `record-green`, then `parallel integrate
184
+ --slice <id> --apply-to-control`; `parallel cleanup` removes worktrees.
185
+ 5. Reconcile returned reuse, conventions, principles, sources, assumptions,
186
+ decisions, dead ends, follow-ups, gates, and touched files. Persist the
187
+ relevant facts in canonical artifacts, not the wholesale report. A plan-gap
188
+ escalation without the checked-assumption list (verified|falsified) is
189
+ malformed; root sweeps the unchecked remainder per
190
+ [`spec-drift-guard.md`](spec-drift-guard.md) before repair.
191
+ 6. **Learning edge.** A correction accepted with a confirmed cause (a review,
192
+ gate, or proof rejection plus its fix) becomes a carry-forward constraint so
193
+ later slices start where this one ended: append one line under
194
+ `decisions.md` `## Carry-forward constraints` —
195
+ `- <rule> — from <SLICE-ID> (<evidence ref>); Files: <paths>`. Record the
196
+ derived rule, not the output, at the scope its evidence supports: "this
197
+ button is blue" never becomes "buttons are blue". Never edit `tasks.md` mid-build (it is a
198
+ readiness input). **Failing case:** slice 3 repeats a defect slice 2 fixed.
@@ -0,0 +1,104 @@
1
+ ---
2
+ name: rite-clarify
3
+ description: Audit a completed spec for missing decisions before strategy or architecture. Use after /rite-spec when coverage is incomplete or stale; not for spec writing.
4
+ argument-hint: "[feature-slug]"
5
+ user-invocable: true
6
+ ---
7
+
8
+ <!-- loads: {"always":["devrites-lib/reference/standards/core.md","devrites-lib/reference/standards/code-navigation.md","devrites-lib/reference/standards/code-index.md","devrites-lib/reference/standards/afk-hitl.md","rite-clarify/reference/decision-coverage.md","rite-clarify/reference/anti-patterns.md"],"triggers":{"agents":["devrites-lib/reference/standards/agents.md"]},"workspace":["brief.md","spec.md","state.md","decisions.md","assumptions.md","questions.md","decision-coverage.md"],"workspaceByRole":{"evidence-scout":["brief.md","spec.md","state.md","questions.md"]},"rootOnly":["devrites-lib/reference/standards/code-index.md","devrites-lib/reference/standards/afk-hitl.md"]} -->
9
+ > Read-set manifest: `devrites-engine context --skills-root .dsh/skills <slug> --phase clarify` bundles every file named below into one deduplicated read. Trigger names map to the conditional rules in the sections that follow.
10
+
11
+
12
+ # /rite-clarify: resolve product decisions
13
+
14
+ Run this required pass between spec and strategy. If the spec covers every material
15
+ decision, ask no questions. Otherwise stay until each material decision has an
16
+ owner. This phase settles behavior and constraints; `/rite-define` settles
17
+ implementation.
18
+
19
+ Reuse [`devrites-interview`](../devrites-interview/SKILL.md) in `/clarify mode`. Write
20
+ `decision-coverage.md` as scan evidence, not an interview transcript.
21
+
22
+ ## Rules consulted
23
+
24
+ Read [`core.md`](../devrites-lib/reference/standards/core.md), its [`afk-hitl.md`](../devrites-lib/reference/standards/afk-hitl.md), and
25
+ [`reference/decision-coverage.md`](reference/decision-coverage.md). Fresh evidence
26
+ dispatch uses
27
+ [`agents.md`](../devrites-lib/reference/standards/agents.md).
28
+
29
+ ## Rules
30
+
31
+ - Search code/docs/contracts first. Facts and reversible implementation/test choices
32
+ are agent-owned; ask only about product, scope, policy, irreversible risk, or human-only access.
33
+ - Enumerate the full topology before details so no sibling surface is omitted.
34
+ - Ask one coherent human-owned decision packet at a time. One packet may close several rows
35
+ only when owner and trade-off match; never ask permission for routine repair/retry.
36
+ - One scan may cap at five packets for cognitive load, but readiness has no question cap:
37
+ re-scan until clear.
38
+ - Material assumptions carry evidence, confidence, owner, validation, and consequence.
39
+ - Refuse the rationalizations in [`anti-patterns`](reference/anti-patterns.md).
40
+
41
+ ## Workflow
42
+
43
+ 1. **Orient.** Read `.devrites/ACTIVE`, `state.md`, and `spec.md`. Require
44
+ `state.md` `spec_gate: passed` (legacy `Spec gate: passed` line accepted); otherwise stop at `/rite-spec`. Apply the native cursor
45
+ protocol below before changing workspace artifacts.
46
+ 2. **Enumerate the topology.** From the spec, live code, contracts, references,
47
+ and recorded decisions, list every material stakeholder/priority, invariant, actor,
48
+ journey/component, state, data lifecycle, integration, failure/recovery path,
49
+ operation, proof surface, applicability row, and must-NOT boundary.
50
+ 3. **Scan coverage.** Apply `devrites-interview` in clarify mode and mark each
51
+ material surface `closed`, `agent-owned`, `not-applicable`,
52
+ `deferred-nonblocking`, or `open` with evidence and an owner. Use native repository search
53
+ first. Ask the host to run `devrites-evidence-scout` only for a bounded missing
54
+ fact, then reconcile its cited result.
55
+ 4. **Close decisions.** Record facts and reversible technical choices directly.
56
+ Ask one coherent option packet only for product, scope, policy, irreversible
57
+ risk, or human-only access. Persist answers in the owning artifacts and repeat
58
+ the scan until no blocking `open` row or unowned material assumption
59
+ remains.
60
+ 5. **Write the verdict.** Write `Decision coverage: CLEAR` only after re-reading all inputs and confirming
61
+ every material row has current evidence and an owner. Normal flow sets `phase=clarify` and
62
+ `next_action=/rite-temper`. A low-stakes spec — the significance trigger temper itself
63
+ skips (rite-temper step 1) — sets `next_action=/rite-define` instead. A contract-neutral later-phase return uses
64
+ the native restore below; changed behavior or acceptance routes to
65
+ `/rite-plan repair` instead. Stop without starting the next phase.
66
+
67
+ ## Native clarify cursor protocol
68
+
69
+ The controlling root edits only cursor rows in `state.md`; it must preserve unrelated Markdown and the file's existing table/bullet presentation.
70
+
71
+ - **Normal entry from Spec:** set `phase=clarify`, `status=running`, and
72
+ `next_action=/rite-clarify <slug>`; omit both return fields.
73
+ - **Already in Clarify:** no-op. Do not overwrite an existing valid return
74
+ cursor.
75
+ - **Later-phase entry:** only `temper`, `define`, `plan`, `vet`, `build`,
76
+ `converge`, `prove`, `polish`, `review`, `seal`, or `ship` may return. First
77
+ copy the current `phase` and non-empty `next_action` to `return_phase` and
78
+ `return_next_action`; then set `phase=clarify`, `status=running`, and
79
+ `next_action=/rite-clarify <slug>`. Missing/unknown cursor values fail closed
80
+ before any write.
81
+ - **Contract-neutral restore:** after a fresh `Decision coverage: CLEAR`, require
82
+ `phase=clarify`, both return fields, a recognized later `return_phase`, and a
83
+ non-empty `return_next_action`. Restore those values to `phase` and
84
+ `next_action`, set `status=running`, and remove both return fields in the same
85
+ rewrite. Re-read the cursor and confirm the return rows are absent.
86
+ - **Contract changed:** do not restore the saved cursor. Record drift and route
87
+ through `/rite-plan repair`, which owns the changed plan and next action.
88
+
89
+ Never normalize or rewrite the rest of `state.md` while applying this protocol.
90
+
91
+ ## Output
92
+
93
+ ```text
94
+ Done: decision coverage closed for <slug>; <n> topology surfaces scanned.
95
+ Changed: decision-coverage.md, spec.md, decisions.md, assumptions.md, questions.md
96
+ Evidence: Decision coverage: CLEAR; human packets <n>; agent-owned facts <n>
97
+ Open: none blocking; deferred-nonblocking <n>
98
+ Next: /rite-temper (or /rite-define for a low-stakes spec temper skips)
99
+ Record: .devrites/work/<slug>/decision-coverage.md
100
+ ↻ Hygiene: /clear — decision coverage is persisted in decision-coverage.md
101
+ ```
102
+
103
+ If not clear, name the exact rows and next genuine decision packet. An objective spec defect
104
+ or factual search task never routes through `/rite-resolve`.
@@ -0,0 +1,24 @@
1
+ # /rite-clarify anti-patterns
2
+
3
+ Load this when tempted to skip clarify, assume product choices, or write
4
+ `Decision coverage: CLEAR` before every material row has an owner.
5
+
6
+ Pack-wide rationalizations: see
7
+ [standards/anti-patterns.md](../../devrites-lib/reference/standards/anti-patterns.md).
8
+
9
+ ## Phase-specific rationalizations
10
+
11
+ | Excuse | Rebuttal |
12
+ | --- | --- |
13
+ | "We already discussed this in chat." | Chat is not durable decision coverage. Scan topology and record owners in workspace artifacts. |
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." | `open` material rows block CLEAR and block AFK arming. |
16
+ | "Skip clarify for this small change." | Clarify is mandatory and adaptive; it may ask no questions, but it still runs the scan. |
17
+ | "I'll clarify during build if needed." | Unowned decisions discovered in build are expensive drift. Close them before plan/vet. |
18
+
19
+ ## Red flags in your own output
20
+
21
+ - `Decision coverage: CLEAR` with `open` material rows still open.
22
+ - Product/policy choices recorded without a human packet or cited prior decision.
23
+ - AFK armed or `/rite-define` started before CLEAR is durable.
24
+ - Clarify skipped because the user said they were "in a hurry".
@@ -0,0 +1,56 @@
1
+ # Decision coverage contract
2
+
3
+ `decision-coverage.md` proves a topology-first scan ran; reference canonical IDs instead of
4
+ duplicating their prose.
5
+
6
+ ## Coverage taxonomy
7
+
8
+ For each material surface scan: outcome/scope/must-NOT; behavior, permissions, and all states;
9
+ domain/data lifecycle/invariants/order/concurrency; interfaces/integrations and failure
10
+ contracts; security/privacy/compliance/accessibility/performance/reliability/compatibility;
11
+ configuration/observability/support/rollout/rollback; and executable acceptance proof,
12
+ environment, credentials/approvals, and evidence limits.
13
+
14
+ ## Status vocabulary
15
+
16
+ - `closed`: the canonical artifact records the decision.
17
+ - `agent-owned`: a reversible technical choice is explicitly delegated to define/vet.
18
+ - `not-applicable`: evidence shows the dimension does not apply.
19
+ - `deferred-nonblocking`: pre-code evidence is impossible or the item is an explicit
20
+ non-goal; owner and validation gate are named.
21
+ - `open`: the decision is unresolved.
22
+
23
+ `open`, unknown, or ownerless rows never produce `CLEAR`.
24
+
25
+ ## Artifact shape
26
+
27
+ ```markdown
28
+ # Decision coverage
29
+
30
+ Decision coverage: <CLEAR | NEEDS CLARIFICATION>
31
+
32
+ ## Topology
33
+ | Surface | Kind | Related IDs | Evidence |
34
+ | --- | --- | --- | --- |
35
+
36
+ ## Coverage matrix
37
+ | Surface | Dimension | Status | Canonical reference | Owner / validation gate | Consequence if wrong |
38
+ | --- | --- | --- | --- | --- | --- |
39
+
40
+ ## Assumption audit
41
+ | Assumption | Evidence | Confidence | Owner | Validation | Consequence if wrong |
42
+ | --- | --- | --- | --- | --- | --- |
43
+
44
+ ## Residual uncertainty
45
+ | Item | Why nonblocking | Owner | Validation gate |
46
+ | --- | --- | --- | --- |
47
+
48
+ ## Readiness verdict
49
+ No `open` row, unowned material assumption, or unresolved blocking/escalating
50
+ question remains.
51
+ ```
52
+
53
+ Combine rows only when one decision and owner genuinely close them. Re-read the current
54
+ `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, and `questions.md` before writing
55
+ `CLEAR`; the matrix itself is the freshness check. Any open blocking, validating, or
56
+ escalating question prevents `CLEAR`.
@@ -0,0 +1,167 @@
1
+ ---
2
+ name: rite-converge
3
+ description: Converge intent and live code. Use when resuming a half-built feature, after `/rite-adopt` drift, or live code may have diverged from the plan. Not for initial planning.
4
+ argument-hint: "[feature-slug]"
5
+ user-invocable: true
6
+ ---
7
+
8
+ <!-- loads: {"always":["devrites-lib/reference/standards/core.md","devrites-lib/reference/standards/code-navigation.md","devrites-lib/reference/standards/code-index.md","devrites-lib/reference/standards/spec-grammar.md","devrites-lib/reference/standards/agents.md","devrites-lib/reference/standards/tooling.md","devrites-lib/reference/standards/testing.md","rite-converge/reference/convergence-assessment.md","rite-converge/reference/anti-patterns.md","rite-build/reference/spec-drift-guard.md"],"triggers":{"applicability":["devrites-lib/reference/standards/repository-topology.md","devrites-lib/reference/standards/data-integrity.md","devrites-lib/reference/standards/integration-reliability.md"],"principles":["devrites-lib/reference/standards/principles.md"],"workflow-artifacts":["devrites-lib/reference/workspace-artifact-schema.md"]},"workspace":["brief.md","spec.md","state.md","decisions.md","assumptions.md","questions.md","decision-coverage.md","architecture.md","plan.md","tasks.md","traceability.md","eng-review.md","test-plan.md","gates.md","evidence.md"],"workspaceByRole":{"evidence-scout":["spec.md","plan.md","tasks.md","state.md","evidence.md"]},"rootOnly":["devrites-lib/reference/standards/code-index.md","devrites-lib/reference/standards/tooling.md"]} -->
9
+ > Read-set manifest: `devrites-engine context --skills-root .dsh/skills <slug> --phase converge` bundles every file named below into one deduplicated read. Trigger names map to the conditional rules in the sections that follow.
10
+
11
+
12
+ # /rite-converge: compare live code with intent
13
+
14
+ Read `spec.md`, `plan.md`, and `tasks.md` as the **sole source of intent** (with
15
+ `.devrites/principles.md` as governing constraints), assess what the **live codebase**
16
+ implements, and **append every unmet piece as a new traceable `SLICE-###`** at the
17
+ bottom of `tasks.md` so `/rite-build` can finish it. Use this for a resumed half-built
18
+ feature, an adopted codebase that drifted from its derived spec, or a build that stalled
19
+ mid-slice. **Read the active
20
+ workspace first**; if there's no `spec.md`/`plan.md`/`tasks.md`, tell the user which
21
+ prerequisite skill to run.
22
+
23
+ > **This is not a diff tool.** `/rite-converge` compares current code with intent. It
24
+ > does not use git history or compare branches. For a change-scoped
25
+ > review use `/rite-review`; to prove a finished feature use `/rite-prove`.
26
+
27
+ ## Rules consulted (read on demand from `.dsh/skills/devrites-lib/reference/standards/`)
28
+
29
+ Pull on demand:
30
+
31
+ - [`principles.md`](../devrites-lib/reference/standards/principles.md): the project invariants (`.devrites/principles.md`); code that violates a
32
+ MUST principle is the highest-severity gap and produces a remediation slice.
33
+ - [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md): buildable acceptance criteria vs `## Success metrics` (outcome KPIs the
34
+ code can't make true and this pass never enqueues); structured `### Requirement:` /
35
+ `#### Scenario:` blocks, each scenario one behavior to check as built / partial / absent.
36
+ - [`code-navigation.md`](../devrites-lib/reference/standards/code-navigation.md): find each unit's code with codebase-memory `search_graph`
37
+ and `get_code_snippet`, check cited paths with `check_index_coverage`, then fall back to LSP/file search. Read live code, not artifact claims.
38
+ - [`testing.md`](../devrites-lib/reference/standards/testing.md): a criterion with code but no covering test is *partial*, not done.
39
+ - [`repository-topology.md`](../devrites-lib/reference/standards/repository-topology.md), [`data-integrity.md`](../devrites-lib/reference/standards/data-integrity.md), [`integration-reliability.md`](../devrites-lib/reference/standards/integration-reliability.md): only for
40
+ triggered applicability rows; missing failure/recovery behavior is partial or absent.
41
+
42
+ ## Operating rules
43
+
44
+ - **APPEND-ONLY, never rewrite.** The only write to `tasks.md` is **appending** new
45
+ `SLICE-###` entries. Never rewrite, renumber, reorder, or delete an existing slice
46
+ (including slices a prior convergence appended). Never edit `spec.md` or `plan.md`. Never
47
+ touch application code: completing the appended slices is `/rite-build`'s job, not this
48
+ skill's.
49
+ - **Clean means byte-for-byte unchanged.** When the code already satisfies everything, leave
50
+ `tasks.md` untouched (no empty convergence header) and report a clean result. Recommend
51
+ `/rite-prove`.
52
+ - **Use artifacts as intent.** The spec, plan, tasks, and principles are the
53
+ contract. If assessing reveals the *spec* is wrong (the code is right and the requirement is
54
+ stale), that's **Spec Drift**: stop and route it through the Spec Drift Guard
55
+ ([`spec-drift-guard.md`](../rite-build/reference/spec-drift-guard.md)) + a recorded decision; never paper over a spec
56
+ bug by appending a task that changes correct code to match a wrong requirement.
57
+ - **Partial is not done.** Code that exists but is untested, half-wired, or covers only the
58
+ happy path is an unmet gap: enqueue the remainder, don't round it up.
59
+ - **Principles are non-negotiable.** A live violation of a declared invariant with no recorded
60
+ exception is the top-severity gap, walked first. Absent/empty principles file → none declared
61
+ → skip the check gracefully, never block for its absence.
62
+ - **Unadmitted bytes from a lost wright.** When a stalled slice's wright never returned an
63
+ admitted result, act only after its terminal state is proven
64
+ ([`parallel-dispatch.md`](../devrites-lib/reference/parallel-dispatch.md) § Cancellation);
65
+ unproven stays a gap. Then inspect task-path bytes changed since the recorded pre-dispatch
66
+ `git diff --name-only` baseline (none recorded → every changed task path counts). They are
67
+ never cited `built`, never discarded (user work): classify the slice `partial (unadmitted
68
+ bytes)` and name those paths in the appended slice. A change outside task paths stops for the human.
69
+ - **Scout observes; root classifies and writes.** Use
70
+ [`agents.md`](../devrites-lib/reference/standards/agents.md). The evidence scout returns
71
+ live-code citations only; the controlling chat owns built/partial/absent calls and append-only
72
+ workspace changes.
73
+
74
+ ## Workflow
75
+
76
+ 0. **Read `.dsh/skills/devrites-lib/reference/standards/core.md`** first (the always-on
77
+ operating rules), then resolve the active slug, require its `state.md`, and
78
+ read the cursor directly.
79
+ 1. **Confirm the gate.** Require `spec.md` + `plan.md` + `tasks.md` in the active workspace. If
80
+ any is missing, **STOP** and name the prerequisite (`/rite-spec` for a missing spec,
81
+ `/rite-define` for a missing plan/tasks, `/rite-adopt` to onboard existing code). Do not
82
+ produce partial output.
83
+ Require `decision-coverage.md` with `Decision coverage: CLEAR`; otherwise STOP →
84
+ `/rite-clarify`.
85
+ 2. **Load intent:** [`reference/convergence-assessment.md`](reference/convergence-assessment.md).
86
+ From `spec.md`: buildable `AC-###` / `### Requirement:` scenarios (skip `## Success metrics`);
87
+ from `plan.md`: architecture decisions + named touch-points (files/components the plan says
88
+ get built); from `tasks.md`: existing slices + their `Satisfies:`; from
89
+ `.devrites/principles.md`: the invariants.
90
+ **Completion:** every buildable criterion, touch-point, slice output, and principle is in the assessment inventory.
91
+ 3. **Reconcile the map, then read the code.** Compare `spec.md`, `tasks.md`,
92
+ `test-plan.md`, and `traceability.md` directly: every buildable AC/REQ maps to an
93
+ existing slice, every slice maps back to real acceptance, every slice's recorded
94
+ proof still agrees with its `test-plan.md` row, and the mapped prose preserves the
95
+ requirement's meaning. Record orphaned, invented, duplicate, or contradictory
96
+ mappings as gaps. Then read the live code
97
+ (codebase-memory per [`code-navigation.md`](../devrites-lib/reference/standards/code-navigation.md)); artifact mappings never prove implementation.
98
+ 4. **Assess each unit as built / partial / absent** against the live code (the rubric is in
99
+ [`reference/convergence-assessment.md`](reference/convergence-assessment.md)): every
100
+ acceptance criterion / scenario, every plan touch-point, and every existing slice's stated
101
+ Produces. A principle violated in the current code is its own top-severity gap.
102
+ Dispatch up to three independent inventory partitions to `devrites-evidence-scout` on the
103
+ same live-code snapshot — build each scout's read-set once with
104
+ `devrites-engine context --skills-root .dsh/skills <slug> --phase converge --role evidence-scout --out
105
+ ctx/converge-evidence-scout.p<n>.bundle.md` and hand it the bundle path; run the wave
106
+ through `devrites-engine dispatch <slug> open|start|seal|return` with one lane label
107
+ per partition (`--role evidence-scout.p1 --role evidence-scout.p2 ...`, per
108
+ [`parallel-dispatch.md`](../devrites-lib/reference/parallel-dispatch.md)), which
109
+ auto-records dispatch/return metrics. Await their
110
+ dossiers, then reconcile the cited facts in the root
111
+ context. **Completion:** every inventory unit is classified once with live-code evidence.
112
+ 5. **Enqueue the remainder as new slices.** For each *partial* or *absent* unit, append a
113
+ `## SLICE-###` (continue the numbering after the highest existing id), each with a `Satisfies:` line tracing to the AC/REQ it closes and a
114
+ `Convergence: <iso>` marker line. Dependency-order them after the existing slices; a
115
+ principle-remediation slice sorts first. **If every unit is built → append nothing.**
116
+ **Completion:** every partial/absent unit has one traceable appended slice, or the file is byte-for-byte unchanged.
117
+ 6. **Write append-only + bookkeeping.** Append the slice batch to `tasks.md` (nothing else in
118
+ that file changes); update `traceability.md` directly with rows for only the appended slices,
119
+ preserving every existing row. Appending a slice changes the plan input, so invalidate the prior vet:
120
+ update `state.md` to `Phase: plan`, `Next step: /rite-vet`, and set an existing
121
+ `eng-review.md` field to `Implementation readiness: NEEDS REPLAN`. When nothing was unmet,
122
+ leave the plan/vet verdict untouched and set `Next step: /rite-prove`. Append
123
+ `decisions.md` for any material call. When slices were appended, run
124
+ `devrites-engine check task-graph <slug>` before invoking Vet; failure stays in
125
+ Converge for correction and never spends a Vet reviewer context.
126
+ 7. **STOP.** Report units assessed, built / partial / absent / unrequested counts, slices appended, and any
127
+ principle violation found. A direct invocation that appended slices becomes
128
+ the caller for the mandated next step: save a return cursor
129
+ (`return_phase`/`return_next_action`) naming this Converge pass as the
130
+ caller, invoke `/rite-vet` inline, and consume its results — an agent-owned
131
+ `NEEDS REPLAN` routes to `/rite-plan` repair internally under the
132
+ fingerprint caps; its return lands here, never on the user. Stop only at
133
+ Vet's boundary (READY readback; next step `/rite-build` for the appended
134
+ slices). Nothing appended → recommend `/rite-prove`.
135
+
136
+ ## Completion evidence (fail-closed)
137
+
138
+ Before reporting "clean" or recommending `/rite-prove`, confirm:
139
+
140
+ - [ ] Every buildable AC/REQ in the assessment inventory has a built/partial/absent
141
+ classification with live-code citation
142
+ - [ ] Every plan touch-point and existing-slice Produces is classified with live-code citation
143
+ - [ ] Every declared principle is checked; violations are recorded as top-severity gaps
144
+ - [ ] `tasks.md` is byte-for-byte unchanged when clean, or append-only when gaps exist
145
+ - [ ] `traceability.md` updated only for appended slices
146
+ - [ ] No narrative "done" without the checklist above
147
+
148
+ **Failing case:** all units marked built but one AC lacks a test or runtime citation →
149
+ report partial, append slice, route `/rite-vet`.
150
+
151
+ ## Appended slice format
152
+
153
+ Use the complete
154
+ [`canonical slice grammar`](../devrites-lib/reference/workspace-artifact-schema.md#canonical-slice-grammar)
155
+ with one added `Convergence:` field after `Satisfies:`:
156
+
157
+ ```markdown
158
+ <!-- Convergence 2026-07-07: slices below appended by /rite-converge — live code assessed against intent. -->
159
+ ## SLICE-014 <name of the unmet capability>
160
+ Satisfies: AC-007 # the criterion / scenario this closes
161
+ Convergence: 2026-07-07 # marks this as a convergence-appended slice, not an original
162
+ <all remaining canonical slice fields>
163
+ ```
164
+
165
+ > **Mid-flight discipline.** Do not rewrite an existing slice, edit source, mark a
166
+ > happy-path-only implementation as built, or add work for a spec you suspect is wrong.
167
+ > See [`reference/anti-patterns.md`](reference/anti-patterns.md).
@@ -0,0 +1,35 @@
1
+ # /rite-converge anti-patterns
2
+
3
+ Load the moment you reach for one of these excuses.
4
+
5
+ ## Common rationalizations
6
+
7
+ - *"I'll just fix this existing slice instead of appending a new one."*. No. The append-only
8
+ rule is what makes convergence **re-runnable** and its output **auditable**: a reader diffs
9
+ `tasks.md` and sees exactly what this pass added. Rewriting an existing slice destroys that
10
+ and can silently drop coverage. Append; never edit an existing `SLICE-###`.
11
+ - *"The gap is tiny. I'll just patch the code while I'm here."*. No. Convergence **assesses
12
+ and enqueues**; `/rite-build` implements. The moment you edit application code you've skipped
13
+ the build's slice discipline, tests, and reviewer. Enqueue it, however small.
14
+ - *"It's basically built. I'll call it done."*. Happy-path-only, untested, or half-wired is
15
+ **partial**, not built (`convergence-assessment.md`). Rounding partial up to built is how a
16
+ feature ships with the edge cases that were the whole reason for the scenario.
17
+ - *"The code does X, the spec says Y. I'll enqueue a slice to make the code match the spec."*:
18
+ Only if you're sure the **spec** is right. If the code is right and the requirement is stale,
19
+ that's **Spec Drift**: route it through the guard, don't launder a spec bug into a code task.
20
+ - *"The spec has no `AC-###` ids, so there's nothing to converge."*. Assess plan touch-points
21
+ and existing-slice Produces directly against the code; a coverage id is convenient, not
22
+ required. (And flag the untagged spec so `/rite-spec` can add ids.)
23
+ - *"I'll rewrite the whole tasks.md to be clean while I'm at it." That is a **reslice**, and
24
+ it belongs to `/rite-plan`, not here. Convergence only ever *appends*.
25
+
26
+ ## Red flags in your own output
27
+
28
+ - An edit to `tasks.md` that touches a line **above** the appended batch → you rewrote history.
29
+ Revert; append only.
30
+ - Any change to `spec.md`, `plan.md`, or a source file in this pass → out of scope.
31
+ - An appended slice with no `Satisfies:` line → it traces to nothing; either tie it to a
32
+ criterion/touch-point or it isn't convergence work.
33
+ - A "clean" report that still left a `## Convergence` header or marker in `tasks.md` → clean
34
+ must be **byte-for-byte unchanged**.
35
+ - Reusing or renumbering an existing `SLICE-###` id → ids are append-only and stable.