devrites 5.10.1 → 5.11.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 (296) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +24 -10
  3. package/bin/devrites.mjs +2 -0
  4. package/docs/cli.md +4 -1
  5. package/docs/command-map.md +7 -5
  6. package/docs/engine/commands.md +7 -5
  7. package/docs/orchestration.md +5 -2
  8. package/docs/skills.md +10 -4
  9. package/docs/usage.md +3 -1
  10. package/engine/commands.go +3 -0
  11. package/engine/help.go +190 -0
  12. package/engine/help_test.go +98 -0
  13. package/engine/internal/devritespaths/paths.go +2 -0
  14. package/engine/internal/hostpack/hostpack.go +39 -5
  15. package/engine/internal/hostpack/hostpack_test.go +27 -13
  16. package/engine/internal/install/apply.go +17 -4
  17. package/engine/internal/install/install.go +9 -2
  18. package/engine/internal/install/install_test.go +15 -2
  19. package/engine/internal/install/preflight.go +8 -2
  20. package/engine/internal/install/update.go +1 -1
  21. package/engine/internal/parallel/cli.go +90 -32
  22. package/engine/internal/parallel/cli_test.go +32 -0
  23. package/engine/main.go +15 -8
  24. package/engine/root_routing_test.go +4 -0
  25. package/install.sh +4 -1
  26. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  27. package/pack/.claude/skills/rite-autocomplete/SKILL.md +10 -5
  28. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +12 -7
  29. package/pack/.claude/skills/rite-build/SKILL.md +3 -1
  30. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +4 -3
  31. package/pack/.claude/skills/rite-build/reference/parallel-batch.md +3 -1
  32. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  33. package/pack/generated/README.md +4 -2
  34. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  35. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +10 -5
  36. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +12 -7
  37. package/pack/generated/claude/skills/rite-build/SKILL.md +3 -1
  38. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +4 -3
  39. package/pack/generated/claude/skills/rite-build/reference/parallel-batch.md +3 -1
  40. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  41. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  42. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +10 -5
  43. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +12 -7
  44. package/pack/generated/codex/skills/rite-build/SKILL.md +3 -1
  45. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +4 -3
  46. package/pack/generated/codex/skills/rite-build/reference/parallel-batch.md +3 -1
  47. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  48. package/pack/generated/devin/AGENTS.md +23 -0
  49. package/pack/generated/devin/agents/devrites-code-reviewer.md +145 -0
  50. package/pack/generated/devin/agents/devrites-devex-reviewer.md +126 -0
  51. package/pack/generated/devin/agents/devrites-doubt-reviewer.md +91 -0
  52. package/pack/generated/devin/agents/devrites-evidence-scout.md +77 -0
  53. package/pack/generated/devin/agents/devrites-frontend-reviewer.md +119 -0
  54. package/pack/generated/devin/agents/devrites-performance-reviewer.md +117 -0
  55. package/pack/generated/devin/agents/devrites-plan-drafter.md +102 -0
  56. package/pack/generated/devin/agents/devrites-plan-reviewer.md +144 -0
  57. package/pack/generated/devin/agents/devrites-proof-runner.md +76 -0
  58. package/pack/generated/devin/agents/devrites-retrospector.md +64 -0
  59. package/pack/generated/devin/agents/devrites-security-auditor.md +112 -0
  60. package/pack/generated/devin/agents/devrites-simplifier-reviewer.md +97 -0
  61. package/pack/generated/devin/agents/devrites-slice-wright.md +219 -0
  62. package/pack/generated/devin/agents/devrites-spec-reviewer.md +99 -0
  63. package/pack/generated/devin/agents/devrites-strategy-reviewer.md +102 -0
  64. package/pack/generated/devin/agents/devrites-test-analyst.md +97 -0
  65. package/pack/generated/devin/agents/devrites-upgrade-planner.md +91 -0
  66. package/pack/generated/devin/skills/devrites-api-interface/SKILL.md +64 -0
  67. package/pack/generated/devin/skills/devrites-audit/SKILL.md +51 -0
  68. package/pack/generated/devin/skills/devrites-browser-proof/SKILL.md +77 -0
  69. package/pack/generated/devin/skills/devrites-browser-proof/reference/browser-performance.md +15 -0
  70. package/pack/generated/devin/skills/devrites-browser-proof/reference/visual-verdict.md +34 -0
  71. package/pack/generated/devin/skills/devrites-debug-recovery/SKILL.md +97 -0
  72. package/pack/generated/devin/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
  73. package/pack/generated/devin/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +34 -0
  74. package/pack/generated/devin/skills/devrites-debug-recovery/reference/hypotheses.md +17 -0
  75. package/pack/generated/devin/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
  76. package/pack/generated/devin/skills/devrites-debug-recovery/reference/regression-test.md +30 -0
  77. package/pack/generated/devin/skills/devrites-debug-recovery/reference/trace.md +25 -0
  78. package/pack/generated/devin/skills/devrites-doubt/SKILL.md +80 -0
  79. package/pack/generated/devin/skills/devrites-frontend-craft/SKILL.md +87 -0
  80. package/pack/generated/devin/skills/devrites-frontend-craft/reference/craft.md +63 -0
  81. package/pack/generated/devin/skills/devrites-frontend-craft/reference/design-references.md +116 -0
  82. package/pack/generated/devin/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
  83. package/pack/generated/devin/skills/devrites-frontend-craft/reference/quality-standards.md +294 -0
  84. package/pack/generated/devin/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
  85. package/pack/generated/devin/skills/devrites-frontend-craft/reference/shape.md +56 -0
  86. package/pack/generated/devin/skills/devrites-interview/SKILL.md +103 -0
  87. package/pack/generated/devin/skills/devrites-lib/SKILL.md +57 -0
  88. package/pack/generated/devin/skills/devrites-lib/reference/candidate-integrity.md +42 -0
  89. package/pack/generated/devin/skills/devrites-lib/reference/intent-map.md +64 -0
  90. package/pack/generated/devin/skills/devrites-lib/reference/orchestration-profiles.md +27 -0
  91. package/pack/generated/devin/skills/devrites-lib/reference/parallel-dispatch.md +73 -0
  92. package/pack/generated/devin/skills/devrites-lib/reference/reply-contract.md +88 -0
  93. package/pack/generated/devin/skills/devrites-lib/reference/standards/README.md +60 -0
  94. package/pack/generated/devin/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +30 -0
  95. package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +415 -0
  96. package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +99 -0
  97. package/pack/generated/devin/skills/devrites-lib/reference/standards/anti-patterns.md +48 -0
  98. package/pack/generated/devin/skills/devrites-lib/reference/standards/browser-proof-checklist.md +24 -0
  99. package/pack/generated/devin/skills/devrites-lib/reference/standards/ci-cd.md +50 -0
  100. package/pack/generated/devin/skills/devrites-lib/reference/standards/code-navigation.md +43 -0
  101. package/pack/generated/devin/skills/devrites-lib/reference/standards/code-review.md +108 -0
  102. package/pack/generated/devin/skills/devrites-lib/reference/standards/coding-style.md +48 -0
  103. package/pack/generated/devin/skills/devrites-lib/reference/standards/context-hygiene.md +109 -0
  104. package/pack/generated/devin/skills/devrites-lib/reference/standards/core.md +167 -0
  105. package/pack/generated/devin/skills/devrites-lib/reference/standards/data-integrity.md +118 -0
  106. package/pack/generated/devin/skills/devrites-lib/reference/standards/debug-recovery.md +28 -0
  107. package/pack/generated/devin/skills/devrites-lib/reference/standards/definition-of-done.md +19 -0
  108. package/pack/generated/devin/skills/devrites-lib/reference/standards/deprecation.md +31 -0
  109. package/pack/generated/devin/skills/devrites-lib/reference/standards/developer-experience.md +119 -0
  110. package/pack/generated/devin/skills/devrites-lib/reference/standards/development-workflow.md +29 -0
  111. package/pack/generated/devin/skills/devrites-lib/reference/standards/documentation.md +43 -0
  112. package/pack/generated/devin/skills/devrites-lib/reference/standards/edge-case-trace.md +92 -0
  113. package/pack/generated/devin/skills/devrites-lib/reference/standards/elicitation.md +85 -0
  114. package/pack/generated/devin/skills/devrites-lib/reference/standards/error-handling.md +47 -0
  115. package/pack/generated/devin/skills/devrites-lib/reference/standards/git-workflow.md +49 -0
  116. package/pack/generated/devin/skills/devrites-lib/reference/standards/hooks.md +25 -0
  117. package/pack/generated/devin/skills/devrites-lib/reference/standards/integration-reliability.md +102 -0
  118. package/pack/generated/devin/skills/devrites-lib/reference/standards/loop-operations.md +85 -0
  119. package/pack/generated/devin/skills/devrites-lib/reference/standards/observability.md +88 -0
  120. package/pack/generated/devin/skills/devrites-lib/reference/standards/one-shot-actions.md +97 -0
  121. package/pack/generated/devin/skills/devrites-lib/reference/standards/patterns.md +68 -0
  122. package/pack/generated/devin/skills/devrites-lib/reference/standards/performance.md +51 -0
  123. package/pack/generated/devin/skills/devrites-lib/reference/standards/principles.md +42 -0
  124. package/pack/generated/devin/skills/devrites-lib/reference/standards/prose-style.md +123 -0
  125. package/pack/generated/devin/skills/devrites-lib/reference/standards/release/ship-checklist.md +8 -0
  126. package/pack/generated/devin/skills/devrites-lib/reference/standards/repository-topology.md +80 -0
  127. package/pack/generated/devin/skills/devrites-lib/reference/standards/review-checklist.md +12 -0
  128. package/pack/generated/devin/skills/devrites-lib/reference/standards/security-checklist.md +25 -0
  129. package/pack/generated/devin/skills/devrites-lib/reference/standards/security.md +202 -0
  130. package/pack/generated/devin/skills/devrites-lib/reference/standards/skill-authoring.md +209 -0
  131. package/pack/generated/devin/skills/devrites-lib/reference/standards/spec-grammar.md +197 -0
  132. package/pack/generated/devin/skills/devrites-lib/reference/standards/test-proof-checklist.md +13 -0
  133. package/pack/generated/devin/skills/devrites-lib/reference/standards/testing.md +212 -0
  134. package/pack/generated/devin/skills/devrites-lib/reference/standards/tooling.md +92 -0
  135. package/pack/generated/devin/skills/devrites-lib/reference/standards/workflow-artifacts.md +427 -0
  136. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
  137. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
  138. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
  139. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
  140. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
  141. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
  142. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
  143. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
  144. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
  145. package/pack/generated/devin/skills/devrites-lib/reference/workspace-artifact-schema.md +267 -0
  146. package/pack/generated/devin/skills/devrites-prose-craft/SKILL.md +74 -0
  147. package/pack/generated/devin/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
  148. package/pack/generated/devin/skills/devrites-prose-craft/reference/examples.md +131 -0
  149. package/pack/generated/devin/skills/devrites-prose-craft/reference/structures.md +196 -0
  150. package/pack/generated/devin/skills/devrites-source-driven/SKILL.md +53 -0
  151. package/pack/generated/devin/skills/devrites-ux-shape/SKILL.md +135 -0
  152. package/pack/generated/devin/skills/devrites-ux-shape/reference/brief-template.md +108 -0
  153. package/pack/generated/devin/skills/devrites-ux-shape/reference/visual-direction-probe.md +48 -0
  154. package/pack/generated/devin/skills/rite/SKILL.md +148 -0
  155. package/pack/generated/devin/skills/rite/reference/menu.md +48 -0
  156. package/pack/generated/devin/skills/rite-adopt/SKILL.md +51 -0
  157. package/pack/generated/devin/skills/rite-adopt/reference/adoption.md +19 -0
  158. package/pack/generated/devin/skills/rite-adopt/reference/anti-patterns.md +19 -0
  159. package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +142 -0
  160. package/pack/generated/devin/skills/rite-autocomplete/reference/decision-policy.md +43 -0
  161. package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +151 -0
  162. package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +97 -0
  163. package/pack/generated/devin/skills/rite-build/SKILL.md +102 -0
  164. package/pack/generated/devin/skills/rite-build/reference/afk-discipline.md +148 -0
  165. package/pack/generated/devin/skills/rite-build/reference/anti-patterns.md +27 -0
  166. package/pack/generated/devin/skills/rite-build/reference/checkpoint-protocol.md +120 -0
  167. package/pack/generated/devin/skills/rite-build/reference/checkpoint.md +56 -0
  168. package/pack/generated/devin/skills/rite-build/reference/frontend-trigger.md +39 -0
  169. package/pack/generated/devin/skills/rite-build/reference/one-slice-cycle.md +51 -0
  170. package/pack/generated/devin/skills/rite-build/reference/output.md +33 -0
  171. package/pack/generated/devin/skills/rite-build/reference/parallel-batch.md +214 -0
  172. package/pack/generated/devin/skills/rite-build/reference/phase-contract.md +89 -0
  173. package/pack/generated/devin/skills/rite-build/reference/spec-drift-guard.md +84 -0
  174. package/pack/generated/devin/skills/rite-build/reference/tdd.md +27 -0
  175. package/pack/generated/devin/skills/rite-build/reference/wright-dispatch.md +96 -0
  176. package/pack/generated/devin/skills/rite-clarify/SKILL.md +98 -0
  177. package/pack/generated/devin/skills/rite-clarify/reference/anti-patterns.md +24 -0
  178. package/pack/generated/devin/skills/rite-clarify/reference/decision-coverage.md +55 -0
  179. package/pack/generated/devin/skills/rite-converge/SKILL.md +144 -0
  180. package/pack/generated/devin/skills/rite-converge/reference/anti-patterns.md +35 -0
  181. package/pack/generated/devin/skills/rite-converge/reference/convergence-assessment.md +65 -0
  182. package/pack/generated/devin/skills/rite-customize/SKILL.md +60 -0
  183. package/pack/generated/devin/skills/rite-define/SKILL.md +168 -0
  184. package/pack/generated/devin/skills/rite-define/reference/anti-patterns.md +26 -0
  185. package/pack/generated/devin/skills/rite-define/reference/gates.md +159 -0
  186. package/pack/generated/devin/skills/rite-define/reference/plan-template.md +149 -0
  187. package/pack/generated/devin/skills/rite-doctor/SKILL.md +68 -0
  188. package/pack/generated/devin/skills/rite-dogfood/SKILL.md +55 -0
  189. package/pack/generated/devin/skills/rite-explain/SKILL.md +152 -0
  190. package/pack/generated/devin/skills/rite-explain/reference/intake.md +89 -0
  191. package/pack/generated/devin/skills/rite-frame/SKILL.md +114 -0
  192. package/pack/generated/devin/skills/rite-frame/reference/failure-modes.md +66 -0
  193. package/pack/generated/devin/skills/rite-handoff/SKILL.md +97 -0
  194. package/pack/generated/devin/skills/rite-handoff/reference/handoff-template.md +44 -0
  195. package/pack/generated/devin/skills/rite-learn/SKILL.md +72 -0
  196. package/pack/generated/devin/skills/rite-plan/SKILL.md +185 -0
  197. package/pack/generated/devin/skills/rite-plan/reference/anti-patterns.md +34 -0
  198. package/pack/generated/devin/skills/rite-plan/reference/dependency-graph.md +48 -0
  199. package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +105 -0
  200. package/pack/generated/devin/skills/rite-plan/reference/slicing.md +168 -0
  201. package/pack/generated/devin/skills/rite-plan/reference/task-breakdown.md +42 -0
  202. package/pack/generated/devin/skills/rite-polish/SKILL.md +105 -0
  203. package/pack/generated/devin/skills/rite-polish/reference/adr-promotion.md +11 -0
  204. package/pack/generated/devin/skills/rite-polish/reference/anti-ai-slop.md +187 -0
  205. package/pack/generated/devin/skills/rite-polish/reference/anti-patterns.md +30 -0
  206. package/pack/generated/devin/skills/rite-polish/reference/backend-polish.md +80 -0
  207. package/pack/generated/devin/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
  208. package/pack/generated/devin/skills/rite-polish/reference/code.md +82 -0
  209. package/pack/generated/devin/skills/rite-polish/reference/design-memory.md +117 -0
  210. package/pack/generated/devin/skills/rite-polish/reference/design-system-discovery.md +8 -0
  211. package/pack/generated/devin/skills/rite-polish/reference/harden-checklist.md +109 -0
  212. package/pack/generated/devin/skills/rite-polish/reference/ledger.md +65 -0
  213. package/pack/generated/devin/skills/rite-polish/reference/ui.md +137 -0
  214. package/pack/generated/devin/skills/rite-pov/SKILL.md +57 -0
  215. package/pack/generated/devin/skills/rite-pr-feedback/SKILL.md +54 -0
  216. package/pack/generated/devin/skills/rite-pressure-test/SKILL.md +66 -0
  217. package/pack/generated/devin/skills/rite-prototype/SKILL.md +104 -0
  218. package/pack/generated/devin/skills/rite-prove/SKILL.md +122 -0
  219. package/pack/generated/devin/skills/rite-prove/reference/acceptance-proof.md +88 -0
  220. package/pack/generated/devin/skills/rite-prove/reference/anti-patterns.md +25 -0
  221. package/pack/generated/devin/skills/rite-prove/reference/browser-proof.md +51 -0
  222. package/pack/generated/devin/skills/rite-prove/reference/failure-triage.md +43 -0
  223. package/pack/generated/devin/skills/rite-prove/reference/proof-ladder.md +28 -0
  224. package/pack/generated/devin/skills/rite-prove/reference/test-command-discovery.md +30 -0
  225. package/pack/generated/devin/skills/rite-quick/SKILL.md +81 -0
  226. package/pack/generated/devin/skills/rite-resolve/SKILL.md +98 -0
  227. package/pack/generated/devin/skills/rite-resolve/reference/answer-protocol.md +118 -0
  228. package/pack/generated/devin/skills/rite-review/SKILL.md +171 -0
  229. package/pack/generated/devin/skills/rite-review/reference/anti-patterns.md +32 -0
  230. package/pack/generated/devin/skills/rite-review/reference/cognitive-load.md +90 -0
  231. package/pack/generated/devin/skills/rite-review/reference/feature-scoped-review.md +26 -0
  232. package/pack/generated/devin/skills/rite-review/reference/five-axis-review.md +66 -0
  233. package/pack/generated/devin/skills/rite-review/reference/nielsen-heuristics.md +126 -0
  234. package/pack/generated/devin/skills/rite-review/reference/performance-checklist.md +80 -0
  235. package/pack/generated/devin/skills/rite-review/reference/performance-review.md +14 -0
  236. package/pack/generated/devin/skills/rite-review/reference/security-review.md +42 -0
  237. package/pack/generated/devin/skills/rite-seal/SKILL.md +74 -0
  238. package/pack/generated/devin/skills/rite-seal/reference/anti-patterns.md +29 -0
  239. package/pack/generated/devin/skills/rite-seal/reference/final-evidence.md +41 -0
  240. package/pack/generated/devin/skills/rite-seal/reference/go-no-go.md +29 -0
  241. package/pack/generated/devin/skills/rite-seal/reference/output.md +5 -0
  242. package/pack/generated/devin/skills/rite-seal/reference/phase-contract.md +47 -0
  243. package/pack/generated/devin/skills/rite-seal/reference/risk-and-rollback.md +56 -0
  244. package/pack/generated/devin/skills/rite-seal/reference/seal-template.md +27 -0
  245. package/pack/generated/devin/skills/rite-ship/SKILL.md +87 -0
  246. package/pack/generated/devin/skills/rite-ship/reference/anti-patterns.md +28 -0
  247. package/pack/generated/devin/skills/rite-ship/reference/close-out.md +68 -0
  248. package/pack/generated/devin/skills/rite-ship/reference/git-ship.md +120 -0
  249. package/pack/generated/devin/skills/rite-ship/reference/rollout.md +62 -0
  250. package/pack/generated/devin/skills/rite-ship/reference/ship-template.md +39 -0
  251. package/pack/generated/devin/skills/rite-spec/SKILL.md +149 -0
  252. package/pack/generated/devin/skills/rite-spec/reference/acceptance-criteria.md +31 -0
  253. package/pack/generated/devin/skills/rite-spec/reference/ai-spec-template.md +40 -0
  254. package/pack/generated/devin/skills/rite-spec/reference/anti-patterns.md +27 -0
  255. package/pack/generated/devin/skills/rite-spec/reference/interview-patterns.md +56 -0
  256. package/pack/generated/devin/skills/rite-spec/reference/investigation.md +83 -0
  257. package/pack/generated/devin/skills/rite-spec/reference/question-protocol.md +36 -0
  258. package/pack/generated/devin/skills/rite-spec/reference/references-intake.md +62 -0
  259. package/pack/generated/devin/skills/rite-spec/reference/spec-checklists.md +89 -0
  260. package/pack/generated/devin/skills/rite-spec/reference/spec-template.md +154 -0
  261. package/pack/generated/devin/skills/rite-spec/reference/state-workspace.md +227 -0
  262. package/pack/generated/devin/skills/rite-status/SKILL.md +57 -0
  263. package/pack/generated/devin/skills/rite-temper/SKILL.md +129 -0
  264. package/pack/generated/devin/skills/rite-temper/reference/anti-patterns.md +30 -0
  265. package/pack/generated/devin/skills/rite-temper/reference/review-dimensions.md +66 -0
  266. package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +53 -0
  267. package/pack/generated/devin/skills/rite-temper/reference/significance.md +46 -0
  268. package/pack/generated/devin/skills/rite-temper/reference/strategy-template.md +90 -0
  269. package/pack/generated/devin/skills/rite-upgrade/SKILL.md +121 -0
  270. package/pack/generated/devin/skills/rite-vet/SKILL.md +192 -0
  271. package/pack/generated/devin/skills/rite-vet/reference/anti-patterns.md +43 -0
  272. package/pack/generated/devin/skills/rite-vet/reference/artifacts.md +202 -0
  273. package/pack/generated/devin/skills/rite-vet/reference/cross-model.md +19 -0
  274. package/pack/generated/devin/skills/rite-vet/reference/depth.md +59 -0
  275. package/pack/generated/devin/skills/rite-vet/reference/eng-lenses.md +48 -0
  276. package/pack/generated/devin/skills/rite-vet/reference/review-axes.md +201 -0
  277. package/pack/generated/devin/skills/rite-watch-pr/SKILL.md +84 -0
  278. package/pack/generated/devin/skills/rite-zoom-out/SKILL.md +69 -0
  279. package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  280. package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +10 -5
  281. package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +12 -7
  282. package/pack/generated/omp/skills/rite-build/SKILL.md +3 -1
  283. package/pack/generated/omp/skills/rite-build/reference/afk-discipline.md +4 -3
  284. package/pack/generated/omp/skills/rite-build/reference/parallel-batch.md +3 -1
  285. package/pack/generated/omp/skills/rite-define/reference/plan-template.md +1 -1
  286. package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  287. package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +10 -5
  288. package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +12 -7
  289. package/pack/generated/pi/skills/rite-build/SKILL.md +3 -1
  290. package/pack/generated/pi/skills/rite-build/reference/afk-discipline.md +4 -3
  291. package/pack/generated/pi/skills/rite-build/reference/parallel-batch.md +3 -1
  292. package/pack/generated/pi/skills/rite-define/reference/plan-template.md +1 -1
  293. package/package.json +4 -2
  294. package/scripts/build-host-artifacts.sh +48 -5
  295. package/scripts/devin-generate.sh +222 -0
  296. package/update.sh +2 -1
@@ -0,0 +1,90 @@
1
+ # `strategy.md` template + fold-back rules
2
+
3
+ `/rite-temper` produces two kinds of output. The `strategy.md` artifact is the durable
4
+ **record** of the review; the **fold-back edits** are what the build follows. The
5
+ record without the fold-back is dead prose: the build reads `spec.md`, not `strategy.md`.
6
+
7
+ ## `strategy.md`: the record
8
+ Write to `.devrites/work/<slug>/strategy.md`. If one exists for the slug, **update** it, don't
9
+ clobber.
10
+
11
+ ```markdown
12
+ # Strategy: <slug>
13
+ Tempered: <iso>
14
+
15
+ ## 1. Significance
16
+ full | skipped — low stakes (<trigger>) # if skipped, stop here (see significance.md)
17
+
18
+ ## 2. Scope mode
19
+ Mode: expand | selective | hold-rigor | reduce-to-MVP
20
+ Rationale: <why this mode>
21
+ Hinge: <what evidence/answer would change the call>
22
+
23
+ ## 3. Forward pass (ambition)
24
+ 10-star outcome (the deliberate overshoot): <one or two lines>
25
+ Premises challenged: <load-bearing assumption(s) + verdict>
26
+ Converged sweet spot: <where we landed and why — this, not the overshoot, is what folds in>
27
+
28
+ ## 4. Pre-mortem (inversion)
29
+ | Failure mode (past tense) | Likelihood | Mitigation | Owning slice/criterion |
30
+ |---|---|---|---|
31
+ | It shipped and <…> | high/med/low | <mitigation> | <slice or FR it binds to> |
32
+
33
+ ## 5. YAGNI ledger
34
+ | Candidate scope item | later-refactor cost | Verdict |
35
+ |---|---|---|
36
+ | <item> | trivial / large | build-now / defer (revisit: <trigger>) |
37
+
38
+ ## 6. Cross-cutting coverage
39
+ | Concern | Addressed? |
40
+ |---|---|
41
+ | Security / trust boundary | <how | N/A — why> |
42
+ | Data & migration | <… | N/A> |
43
+ | Observability | <… | N/A> |
44
+ | Modifiability | <… | N/A> |
45
+
46
+ ## 7. Dimension scores (floor-gate)
47
+ | Dimension | Band | Evidence |
48
+ |---|---|---|
49
+ | Problem altitude & ambition | strong/adequate/thin/broken | <spec line / absence> |
50
+ | … (all 9) | … | … |
51
+ Floor verdict: <weakest band> on <dimension> → pass | blocked
52
+
53
+ ## 8. Deferred / Won't-have-this-time
54
+ - <item> — <one-line reason> (revisit when: <trigger>)
55
+
56
+ ## 9. Reviewer loop
57
+ - iter 1: <findings → resolution> · iter 2: … (≤3)
58
+ - Final: floor = <band>; unresolved → <none | blocking qid>
59
+ ```
60
+
61
+ ## Fold-back: the part the build follows
62
+ Apply through the **Spec Drift Guard** (these are spec changes, not free edits). If a plan
63
+ already exists, record in `drift.md` and route via `/rite-plan repair` instead of editing
64
+ `spec.md` blind.
65
+
66
+ - **`spec.md`:** these are the spec template's actual section headings. Edit each named one;
67
+ don't collapse pairs.
68
+ - Add to *Success metrics* **and** *Acceptance criteria* (separate sections) for
69
+ every opt-in **expansion**; remove (via the Guard) from both for every **reduction**. Each
70
+ must stay measurable + technology-agnostic.
71
+ - *Non-goals*: append every deferred item (from the YAGNI ledger + the Deferred register), so
72
+ it is neither silently dropped nor silently re-injected mid-build.
73
+ - *Constraints and invariants*: tighten where the pre-mortem demands; top failure modes +
74
+ mitigations go to *Failure and recovery behavior* rows.
75
+ - *Open questions* table: one row per scope call (options offered → decision → owner).
76
+ - **Re-run the Readiness gate** at the bottom of the spec after edits; it must still pass, and
77
+ **every folded scope delta must trace to a recorded decision** (a `questions.md` qid or a
78
+ `decisions.md` ADR): an untraceable change is the batch-dump failure.
79
+ - **`decisions.md`:** one ADR-style entry per scope call and accepted trade-off:
80
+ `context · decision · why-not-the-alternative · what-would-change-it`.
81
+ - **`assumptions.md`:** every "we'll probably need X" demoted to an explicit
82
+ **assumption-to-verify**, never smuggled into scope as a fact.
83
+
84
+ ## Write discipline
85
+ - **Single canonical writer.** The skill writes `strategy.md` and edits the canonical files; the
86
+ `devrites-strategy-reviewer` agent is **read-only** and only returns findings + bands.
87
+ - **No silent scope.** An expansion that the human didn't opt into, or a reduction that drops an
88
+ acceptance criterion without a recorded decision, is a defect, not a convenience.
89
+ - Add `strategy.md` to the workspace between `spec.md` and `plan.md`; `/rite-define` and
90
+ `/rite-ship` read it.
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: rite-upgrade
3
+ description: Audit and reconcile an older released DevRites workspace. Proves a current-contract defect, then routes its phase owner while preserving completed work and history.
4
+ argument-hint: "[feature-slug]"
5
+ triggers:
6
+ - user
7
+ ---
8
+
9
+ # /rite-upgrade: reconcile a released workspace safely
10
+
11
+ Use when an unfinished workspace from an older release cannot resume. This is an
12
+ audit/orchestrator—not a pack update, cursor conversion, release replay,
13
+ structural migration, or generic cleanup.
14
+
15
+ ## Rules consulted
16
+
17
+ Read [`core.md`](../devrites-lib/reference/standards/core.md), its agent and workspace-schema
18
+ references, and only current phase contracts needed for the observed gap.
19
+
20
+ ## Invariants
21
+
22
+ - Upgrade writes no workspace artifact and never edits source, tests, dependencies,
23
+ or Git. It observes, admits, invokes current owners, and re-audits only.
24
+ - Recognize only released workspace forms: `.devrites/work/<slug>/state.md` with v1/v2
25
+ bullet fields (`- Phase:`, `- Next step:`, optional `- qid:`) or the v3 cursor table.
26
+ Preserve its encoding; only its owning rite may change fields. Never create aliases,
27
+ journals, telemetry, version markers, or an engine migrator.
28
+ - Older provenance, cursor form, or pack version alone is never a defect. A repair requires
29
+ a current rule, exact workspace evidence, affected gate, owning rite, exact paths, and
30
+ the smallest behavior-neutral delta.
31
+ - Existing rites own semantic changes. Upgrade may sequence `/rite-clarify`,
32
+ `/rite-plan repair|revise|course-correct`, `/rite-converge`, `/rite-vet`, `/rite-prove`, `/rite-polish`,
33
+ `/rite-review`, and `/rite-seal`; it never reimplements them or starts Build or Ship.
34
+ `/rite-doctor` owns install/config diagnosis.
35
+ - An admitted candidate route may name only the exact current gate artifacts its owner
36
+ must refresh: `touched-files.md`, `evidence.md`, optional `browser-evidence.md`,
37
+ `polish-report.md`, `review.md`, `seal.md`, and the owner's `state.md` fields as
38
+ applicable. Source, completed-slice identities, answers, decisions, and unrelated
39
+ history remain protected. Each owner preserves unrelated content and normal gates.
40
+ - Archived/`done` workspaces are no-ops. Unknown or unverifiable inputs stop without
41
+ writes. There is no legacy fallback: never synthesize or guess scope, bytes, proof,
42
+ freshness, or a historical pass.
43
+ - The explicit invocation authorizes only admitted, behavior-neutral workspace repairs.
44
+ Product/policy choices, acceptance changes, irreversible risk, and human-only actions
45
+ remain HITL.
46
+
47
+ ## Workflow
48
+
49
+ 0. **Orient read-only.** Apply `/rite-doctor`. Resolve the explicit or active slug.
50
+ Archive-only is `current`; otherwise require contained regular `state.md` and read its
51
+ cursor. A damaged/mismatched install stops at Doctor; missing live work routes
52
+ `/rite-spec`; `done` is `current`. An unknown cursor is `unsupported`.
53
+ 1. **Freeze preservation evidence.** Record `git status --short`, cursor form/fields,
54
+ `devrites-engine orient <slug>` (cursor, `task_graph`, `artifact_budgets`,
55
+ `bulk_files`), and
56
+ hashes of completed-slice fields, candidate gate artifacts, existing answers/decisions,
57
+ and protected history. Inventory every path that could change; absence is evidence,
58
+ never permission to synthesize history. For a post-Build workspace, also retain the
59
+ exact result of `devrites-engine check candidate <slug>`; at or after Seal retain the
60
+ exact result of `devrites-engine check seal <slug>`.
61
+ 2. **Assess from fresh context.** Dispatch exact `devrites-upgrade-planner` with the named
62
+ installed contracts, workspace paths, cursor form, current phase, and frozen baseline.
63
+ Require one read-only typed assessment. It writes and asks nothing.
64
+ 3. **Admit the assessment fail closed.** Accept `current` only when every applicable axis has
65
+ cited evidence and no finding. Accept `repairable` only when every finding names the
66
+ current rule, exact workspace evidence, affected gate, owning rite, exact writable paths,
67
+ minimal delta, and protected invariants. Missing fields become `gap`.
68
+ Unsupported shapes remain untouched. Reject version-only, speculative, alias-creating,
69
+ source-changing, history-changing, or acceptance-changing advice.
70
+ 4. **Route; do not duplicate.** For `repairable`, invoke only the admitted current owners,
71
+ one at a time:
72
+ - decision coverage or a material assumption → `/rite-clarify`;
73
+ - stale/inconsistent planning or traceability with settled intent → `/rite-plan repair`;
74
+ - over-budget `state.md` or planning artifacts carrying checkpoint narrative, or
75
+ packets/traces in the workspace root → `/rite-plan revise` (verbatim relocation to
76
+ `history/` / `packets/`, current view only; IDs, meaning, answers and decisions
77
+ unchanged; nothing deleted);
78
+ - unbuilt slices beyond the [feature ceiling](../rite-plan/reference/slicing.md#feature-ceiling-split-an-epic-never-override-the-budget)
79
+ → `/rite-plan course-correct` (`MVP cut` plus the named continuation sequence;
80
+ built slices and their evidence stay);
81
+ - live code and recorded intent disagreement → `/rite-converge`;
82
+ - any changed planning input or readiness defect → `/rite-vet`;
83
+ - a missing/malformed strict manifest, missing/malformed/mismatched evidence binding,
84
+ a browser-binding defect when that file exists, or current candidate-check failure
85
+ → `/rite-prove`;
86
+ - candidate-affecting capability-ledger, `DESIGN.md`, or ADR rollups still deferred by
87
+ an old Ship-era workspace → `/rite-polish`;
88
+ - a missing, stale, or mismatched review binding → `/rite-review`;
89
+ - a missing, stale, or mismatched seal binding or failed Seal gate → `/rite-seal`.
90
+
91
+ Sequence only applicable owners; candidate owners stay in the Prove → Polish → Review
92
+ → Seal order above. Each owner keeps normal gates/write limits. Stop on HITL/blocked.
93
+ Never infer `/rite-customize --import-legacy`; that mode requires the exact token in the
94
+ user's current invocation.
95
+ 5. **Re-audit and prove preservation.** Re-dispatch the planner once against the changed
96
+ candidate. `gap`, `unsupported`, or a remaining finding stops. Compare the frozen hashes
97
+ and Git status; only admitted paths may differ. Cursor changes must match the owning
98
+ rite while preserving form. Any unadmitted, protected, or source change is a gap and
99
+ stops; Upgrade never restores it itself.
100
+ For a post-Build workspace, run `devrites-engine check candidate <slug>` and require
101
+ the assessed bindings to match it. At or after Seal, also run
102
+ `devrites-engine check seal <slug>`. Run readiness where applicable:
103
+ ```bash
104
+ devrites-engine check readiness <slug>; echo "readiness rc=$?"
105
+ ```
106
+ Any nonzero result or mismatch remains a `gap` and stops.
107
+ 6. **STOP.** Do not advance to Build or Ship. A repeated `/rite-upgrade` is a no-op only
108
+ when the fresh assessment independently returns `current`; no marker may manufacture
109
+ that result.
110
+
111
+ ## Output
112
+
113
+ ```text
114
+ Done: workspace <slug> compatibility <current | reconciled>.
115
+ Changed: <admitted active-workspace paths | none>
116
+ Evidence: assessment=current; candidate rc=<n|n/a>; seal rc=<n|n/a>; readiness rc=<n|n/a>; protected history/source unchanged
117
+ Open: <none | exact unsupported shape, evidence gap, or human gate>
118
+ Next: <state.md next action | one owning rite>
119
+ Record: <owning rite's state.md — written by the owner, not Upgrade>
120
+ ↻ Hygiene: /clear before the next lifecycle step
121
+ ```
@@ -0,0 +1,192 @@
1
+ ---
2
+ name: rite-vet
3
+ description: Review a defined engineering plan before code. Use for plan vetting or lock-in; not for implementation review or final readiness sealing.
4
+ argument-hint: "[slug] [--cross-model] [--full]"
5
+ ---
6
+
7
+ # /rite-vet: review the plan before build
8
+
9
+ Vet every plan's scope, architecture, quality, proof, performance, failures and writer
10
+ safety. Fold cited technical findings; design Build tests. Temper owns product;
11
+ Vet owns implementation; current `$ARGUMENTS` (`--full`) feeds the depth triggers in
12
+ `reference/depth.md`; profiles never remove the exact plan-reviewer gate
13
+ ([orchestration-profiles.md](../devrites-lib/reference/orchestration-profiles.md)).
14
+
15
+ ## Rules
16
+
17
+ Read the active standard from: [`principles.md`](../devrites-lib/reference/standards/principles.md), [`patterns.md`](../devrites-lib/reference/standards/patterns.md), [`coding-style.md`](../devrites-lib/reference/standards/coding-style.md),
18
+ [`testing.md`](../devrites-lib/reference/standards/testing.md), [`spec-grammar.md`](../devrites-lib/reference/standards/spec-grammar.md), [`performance.md`](../devrites-lib/reference/standards/performance.md), [`error-handling.md`](../devrites-lib/reference/standards/error-handling.md),
19
+ [`development-workflow.md`](../devrites-lib/reference/standards/development-workflow.md), [`afk-hitl.md`](../devrites-lib/reference/standards/afk-hitl.md), [`one-shot-actions.md`](../devrites-lib/reference/standards/one-shot-actions.md),
20
+ [`developer-experience.md`](../devrites-lib/reference/standards/developer-experience.md), [`elicitation.md`](../devrites-lib/reference/standards/elicitation.md), and [`definition-of-done.md`](../devrites-lib/reference/standards/definition-of-done.md). Load
21
+ repository topology, data integrity, and integration reliability only when
22
+ triggered. Before classifying any Reslice, read `.devin/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md`.
23
+ When a
24
+ plan declares a root-authored executable workflow file, read
25
+ [`workflow-artifacts.md`](../devrites-lib/reference/standards/workflow-artifacts.md).
26
+
27
+ <!-- BEGIN RESLICE ROUTE-TO-ACTION -->
28
+ - `FOLD` → fold technical topology; invalidate Vet/readiness; affected Vet before Build.
29
+ - `GUARD_AND_REPAIR` → no planning writes; Spec Drift Guard → Clarify → Plan repair → affected Vet.
30
+ - `BLOCKED_INPUT` → no planning writes; exact diagnostic; recover input; reclassify.
31
+ <!-- END RESLICE ROUTE-TO-ACTION -->
32
+
33
+ ## Invariants
34
+
35
+ - Review implementation, not ambition. Challenge creep, complexity, proof, and
36
+ risk without changing accepted product scope.
37
+ - Root owns decisions/writes/readiness; reviewers judge without route policy.
38
+ Cite findings/confidence; suppress
39
+ unverified or confidence ≤4 findings under `review-axes.md`.
40
+ Lens arrows in `eng-lenses.md` are heuristics; band findings only under the
41
+ four `review-axes.md` names.
42
+ - Auth, migration, public API, and data-model changes use maximum caution and the
43
+ irreversible-risk stop. Project principles never become trade-offs.
44
+ - **Governance-protected paths** (`.devrites/**`, pack skill/agent trees,
45
+ `NOTICE.md` generator regions, CI/hook config named in repo docs) require explicit
46
+ human approval before plan slices may edit them. A slice touching a protected path
47
+ without approval → Vet **NEEDS CLARIFICATION**.
48
+ - Use the lowest axis band; never average or round thin to ready. Search before
49
+ asking and resolve reversible technical choices. Ask only human-owned choices.
50
+ - Preserve a valid technical return cursor. Agent-owned `NEEDS REPLAN` returns
51
+ internally to its caller, not to the human; on a direct invocation there is
52
+ no caller, so Vet becomes it — save a return cursor
53
+ (`return_phase`/`return_next_action`) naming this Vet pass as the caller and
54
+ invoke `/rite-plan` repair inline under the same fingerprint caps. An
55
+ agent-owned verdict with budget remaining is never a user-facing command.
56
+ - **Recovery recheck is bounded and batched.** A valid cursor plus open
57
+ fingerprints enters Recovery recheck; it does not start another Full Vet or
58
+ repeat unaffected axes/reviewers. One dispatch covers every open fingerprint
59
+ of the fold — each checked individually — with a mandatory correction-created
60
+ regression audit.
61
+ <!-- workflow-artifact-adapter: {"module":"devrites-lib/reference/standards/workflow-artifacts.md","entry":"plan declares root-authored executable workflow file","action":"emit exact admission; stale/missing authority uses PLAN_VET_REPAIR","return":"Vet READY cursor or exact technical replan"} -->
62
+ ## Workflow
63
+
64
+ 0. **Orient.** Read core. Resolve active slug, require state, and read plan,
65
+ tasks, spec, decision coverage, optional strategy/design brief, decisions,
66
+ assumptions, and state. Require approved Plan and `Decision coverage: CLEAR`;
67
+ otherwise stop for Define or Clarify. Use code intelligence for placement,
68
+ blast radius, and reuse.
69
+ 1. **Select depth.** Apply `reference/depth.md` exactly; never skip. Every initial
70
+ pass records an engineering verdict and test-plan coverage. A valid Recovery
71
+ recheck retains prior depth and enters 1b.
72
+ 1a. **Independent initial pass.** Freeze candidate and dispatch the exact fresh
73
+ read-only plan reviewer — plus developer-experience reviewer for developer
74
+ surfaces and the current strategy reviewer after significant Temper — in
75
+ parallel under `../devrites-lib/reference/parallel-dispatch.md`; they are
76
+ independent read-only passes on one frozen candidate. Missing
77
+ required account blocks.
78
+ 1b. **Recovery recheck.** Require valid return cursor, accepted prior finding,
79
+ exact fingerprint/reproduction, repaired candidate identity, changed
80
+ paths/criteria, affected drift/evidence, and the recorded delta self-check.
81
+ Freeze that packet and dispatch each exact owning reviewer once,
82
+ fresh/read-only, limited to it — all its open fingerprints in that dispatch.
83
+ Do not rerun broad inventory or unaffected reviewers. Close the prior
84
+ fingerprint only with discriminating evidence plus an explicit
85
+ correction-created regression verdict on the touched invariants (acyclic
86
+ deps, traceability, contract proof, sizing) and every region depending on a
87
+ changed clause — enumerate dependents via the dep graph and traceability
88
+ refs, not only patched sites. Otherwise record one no-progress outcome. A
89
+ different Critical/Important invariant needs exact evidence and a new
90
+ fingerprint; a Suggestion, Nit, or FYI cannot keep recovery open. Reviewer
91
+ `Late:` rows on unchanged clauses follow the canonical
92
+ [late-finding rule](../devrites-lib/reference/standards/afk-hitl.md#retry-cap-no-progress-loops-and-self-resolve):
93
+ Critical with a failure path → new fingerprint; otherwise `eng-review.md`
94
+ `## Deferred findings` (mechanism rows become one proof row at step 6). A packet
95
+ marked `convergence_pressure` accepts an explicit, bounded declared
96
+ residual/limitation folded into the contract text as closure for a finding
97
+ marked as a refinement of an already-pinned clause; the recheck may re-raise
98
+ it only by naming a concrete failure path the declaration omits. A
99
+ `new_failure_mode` finding is never residual-eligible. A fold whose
100
+ findings are all Suggestion-or-lower rechecks mechanically at the
101
+ materialization gate — anchors applied, mirrors consistent, invariants
102
+ pass — without a dispatched reviewer; sub-Important findings already
103
+ cannot keep recovery open. Reconcile
104
+ shared artifact/readiness gates, then enter step 8 or the next repair.
105
+ Do not fall through to steps 2–7. Retain evidenced unchanged coverage; changed
106
+ global contract/uncertain impact requires full applicable review. Reopen historical
107
+ findings only for affected invariants/dependencies.
108
+ 2. **Challenge scope.** Apply review-axes §0 and search accepted decisions.
109
+ Harden to the smallest contract-complete plan, using marked topology action.
110
+ Then verify bidirectional ID-and-meaning traceability across spec/plan/
111
+ tasks/test-plan/traceability, acceptance, terms, principles, anti-slop,
112
+ and conventions; every slice and test-plan row maps to a live requirement
113
+ and vice versa. Critical gaps and
114
+ unexcepted principle breaches block; record the challenge result in `eng-review.md`
115
+ §2 (Scope challenge) after recheck.
116
+ 3. **Preflight Build entry.** Under `reference/artifacts.md`, verify exact
117
+ command/cwd/tool/version/prerequisite; output filters must preserve upstream
118
+ failure. Verify dependencies from authoritative source plus nearest manifest.
119
+ Run parser-sensitive syntax only in isolated fixtures. Remeasure mutable facts;
120
+ live evidence wins, conflict marks stale, and unmeasurable conflict is a gap.
121
+ Record complete SHA-256 provenance. Every behavioral mapping names a positive
122
+ discriminating assertion and decisive signal, never only exit zero.
123
+
124
+ For each consumptive action, bind every `reference/artifacts.md` Consumptive
125
+ action gates column; every fingerprint identifies one actionable seam; aliasing multiple
126
+ emit sites is a gap. Preflight observes but need not make future behavior pass.
127
+ 4. **Audit readiness.** Goal-backward map every requirement, criterion, NFR,
128
+ interaction, edge/prohibition, and decision row to one slice and executable
129
+ proof. Verify UX/spec/architecture alignment, contracts, dependency order,
130
+ slice independence/wiring, prerequisites, failure/observability/rollback, and
131
+ ownership. The plan's `Shared contract proof` names one reused boundary
132
+ artifact plus two consuming tests for every changed API/event/schema/provider-
133
+ consumer seam, or an explicit no-impact statement. Missing, one-sided,
134
+ duplicated-contract, vague, or non-consuming proof fails closed.
135
+
136
+ Technical gaps are `NEEDS REPLAN` and Plan repair — each finding marks
137
+ itself `new_failure_mode` or names the already-pinned clause/fingerprint
138
+ it refines, making alias-detection and `convergence_pressure` eligibility
139
+ mechanical — and carries `kind: contract | mechanism`
140
+ (`review-axes.md` § Finding kind). Only `contract` findings open a Plan
141
+ repair; a `mechanism` finding is closed by one `test-plan.md` proof row
142
+ at step 6 and leaves readiness intact when nothing else is open.
143
+ Product/risk gaps are
144
+ `NEEDS CLARIFICATION` and Clarify. Neither becomes a Build qid.
145
+ 5. **Review axes.** Apply `review-axes.md` through `eng-lenses.md`. Fold verified
146
+ behavior-preserving technical findings; walk only human-owned decisions.
147
+ Profile gate ceiling and Reslice marked action remain authoritative.
148
+ 6. **Write outputs.** Produce every artifact in `reference/artifacts.md`. After
149
+ editing intent/decision/assumption/question owners, re-scan affected coverage,
150
+ assumptions, uncertainty, and gates. Keep state non-READY. Every scenario and
151
+ criterion needs positive, discriminating proof; every slice must be one-pass
152
+ implementable; developer plans need a predicted scorecard. Durable commands
153
+ are portable repository commands, not host wrappers.
154
+ 7. **Narrow recheck after edits.** Dispatch the exact plan reviewer once per
155
+ fold — one dispatch covering every open fingerprint, preserving
156
+ per correction/fingerprint accounting (each checked individually with its
157
+ accepted findings, changed paths/criteria, new identity, and recorded delta
158
+ self-check); it must return an explicit correction-created regression
159
+ verdict over touched invariants plus every dependent of each changed clause
160
+ (dep-graph and traceability lookup), not only fingerprint closure. Within one correction, no broad
161
+ third loop. If it changes plan, fold again. A closed input plus a distinct Critical/Important invariant returns
162
+ that new fingerprint as progress. Then close matrix and rerun ID/meaning audit.
163
+ 8. **Build readback and readiness.** Add a cited five-line readback to
164
+ `eng-review.md` (artifacts.md §7 rows 1–5): outcome/ACs; IN/OUT/must-NOT; UI direction and architecture/
165
+ critical flow; slice order/first slice; decisive proof/action-time gates. No implementer should need to invent product, architecture, or proof.
166
+ Contradiction, ownerlessness, or material ambiguity blocks via Clarify or Plan.
167
+
168
+ Write exactly one `Implementation readiness: READY`, `NEEDS CLARIFICATION`,
169
+ or `NEEDS REPLAN`. Root sets READY after every account, checklist,
170
+ preflight, and sweep is green. Write phase/next step and emit one
171
+ `Readiness inputs SHA-256` with
172
+ `devrites-engine check readiness --emit-binding <slug>`; normal readiness check
173
+ must pass. Technical failure records reproduction, not qid. Human gap awaits
174
+ Clarify. Optional cross-model follows `reference/cross-model.md`.
175
+
176
+ With READY, no pending remediation, and a valid technical return cursor,
177
+ restore and consume the return cursor instead of defaulting to Build. Preserve
178
+ it through admitted remediation. Only a real stop reaches the human.
179
+ 9. **Stop at the Vet boundary.** Show Build readback, scope verdict, lowest axis,
180
+ closed gaps, preflight, action checkpoints, and critical failures. Recommend
181
+ Build only when READY.
182
+
183
+ > Do not replace interactive review with artifacts, change acceptance through
184
+ > hardening, score without source evidence, or ignore unexplained complexity.
185
+
186
+ ## Phase exit
187
+
188
+ **Complete when:** `eng-review.md` records exactly one readiness verdict, readiness
189
+ binding SHA-256 passes, and every required reviewer account is admitted.
190
+
191
+ **Failing case:** READY written while a required reviewer returned `Outcome: gap` →
192
+ not complete; restore NEEDS REPLAN or dispatch missing reviewer.
@@ -0,0 +1,43 @@
1
+ # /rite-vet: anti-patterns
2
+
3
+ Read [universal anti-patterns](../../devrites-lib/reference/standards/anti-patterns.md).
4
+
5
+ Authority: `.devin/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md`.
6
+
7
+ <!-- BEGIN RESLICE ROUTE-TO-ACTION -->
8
+ - `FOLD` → fold technical topology; invalidate Vet/readiness; affected Vet before Build.
9
+ - `GUARD_AND_REPAIR` → no planning writes; Spec Drift Guard → Clarify → Plan repair → affected Vet.
10
+ - `BLOCKED_INPUT` → no planning writes; exact diagnostic; recover input; reclassify.
11
+ <!-- END RESLICE ROUTE-TO-ACTION -->
12
+
13
+ ## Phase rationalizations
14
+
15
+ | Excuse | Rebuttal |
16
+ |---|---|
17
+ | "I'll write all the findings into `eng-review.md` and let the user read it." | Fold verified behavior-preserving findings together and recheck affected closure. Ask human-owned choices with recommendations and await answers. Recording alone resolves nothing; never silently change acceptance or mark unresolved choices READY. |
18
+ | "The plan doesn't handle X: flag it." (without checking) | Quote the line first. If you can't quote where the plan handles X, you also can't be sure it doesn't: force confidence ≤4 and suppress. The "field/case doesn't exist" finding is the most common false positive; the verification gate exists to kill it. |
19
+ | "It's an obvious fix. I'll just edit the plan." | Vet hardens verified plans; topology uses the marked action. |
20
+ | "This dimension is thin but the others are strong: net it's fine." | The gate is the **floor**, not the average. A plan `broken` on test-coverage does not pass because it's `strong` on architecture. |
21
+ | "I can see it's adequate. I'll note the band, the evidence is obvious." | Cite quoted evidence **before** the band; never score first and rationalize later. |
22
+ | "8+ files but it all needs to change: proceed." | Apply `review-axes.md` §0: justify complexity against the smallest contract-complete alternative; fold technical reductions through the marked action. File count does not justify design or require a pause. Ask only for changed scope, behavior, or risk policy. |
23
+ | "There's no test for this, but the user can add one later." | Coverage is designed **now**, before the code, so the build writes tests alongside it. A deferred test is a test that misses the boundary cases writing-it-now would expose. Regressions are non-negotiable. Critical, no question. |
24
+ | "Performance looks fine." | "Looks fine" is not a measurement. A perf finding is "measure X against budget Y" or it's nothing: don't recommend speculative tuning, and don't wave past an N+1 you can quote. |
25
+ | "Cross-model agrees, so apply it." | Consensus is a signal, not proof or approval. Verify the finding against source, then use the same technical-hardening or human-owned decision route; model agreement never authorizes a scope, acceptance, or policy change. |
26
+
27
+ ## Reslice classifier rationalizations
28
+
29
+ **RSLICE-VET-001** — Slice/topology growth alone does not stop; fewer slices do not prove scope reduction; remediation does not grow product.
30
+
31
+ ## Red flags
32
+ - `eng-review.md` / `test-plan.md` written but `plan.md` / `tasks.md` **not** hardened: the build
33
+ follows the plan, so the review changed nothing.
34
+ - A finding raised with confidence ≥7 but **no quoted source line**, that defeats the verification gate.
35
+ - Acceptance/product-behavior growth auto-applied in AFK, or an orthogonal human-owned gate that did not pause.
36
+ - A failure-mode table with rows but no verdict column filled: a "no test + no handling + silent" row not marked Critical.
37
+ - Repeating an exhausted causal failure under the shared no-progress rule in
38
+ [`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md), or stopping a
39
+ distinct cause solely because the total review round exceeds three.
40
+ - The reviewer / cross-model being handed the author's reasoning as independent
41
+ evidence (defeats the fresh-context point).
42
+ - The skill writing code, implementing a slice, or running the build. That's `/rite-build`. Vet reviews and hardens the plan; it never implements.
43
+ - Re-litigating the **spec's** scope/ambition, that was `/rite-temper`. Vet challenges *implementation* scope only.
@@ -0,0 +1,202 @@
1
+ # `eng-review.md` + `test-plan.md` templates + fold-back rules
2
+
3
+ `eng-review.md` records review; `test-plan.md` drives Build. Fold accepted findings
4
+ into `plan.md`/`tasks.md`; prose alone never changes Build.
5
+
6
+ Authority: `.devin/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md`.
7
+
8
+ <!-- BEGIN RESLICE ROUTE-TO-ACTION -->
9
+ - `FOLD` → fold technical topology; invalidate Vet/readiness; affected Vet before Build.
10
+ - `GUARD_AND_REPAIR` → no planning writes; Spec Drift Guard → Clarify → Plan repair → affected Vet.
11
+ - `BLOCKED_INPUT` → no planning writes; exact diagnostic; recover input; reclassify.
12
+ <!-- END RESLICE ROUTE-TO-ACTION -->
13
+
14
+ ## `eng-review.md`: the record
15
+
16
+ Write/update `.devrites/work/<slug>/eng-review.md`; never clobber.
17
+
18
+ ```markdown
19
+ # Eng review: <slug>
20
+ Vetted: <iso> Cross-model: ran (codex) | off
21
+ Implementation readiness: <READY | NEEDS CLARIFICATION | NEEDS REPLAN>
22
+ (`NEEDS REPLAN` is the eng-review field value; `NEEDS_REPLAN` with an underscore
23
+ is the autocomplete/reply-contract routing token — do not conflate.)
24
+ Readiness inputs SHA-256: <64 lowercase hex>
25
+
26
+ ## 1. Depth
27
+ light | full (<trigger that escalated it>) # every plan is vetted — light or full, never skipped (see depth.md)
28
+
29
+ ## 2. Scope challenge
30
+ - Existing reuse: <findings adopted by the plan>
31
+ - Minimum diff: <accepted | trimmed n; list in NOT-in-scope>
32
+ - Complexity: ok | smell (<n files, m new services) → asked → <reduce|proceed, why>
33
+ - Built-in / completeness / distribution: <flags, with source citations>
34
+
35
+ ## 2a. Build-entry preflight
36
+ | Gate | Command + cwd | Tool/version | Prerequisite owner | Full provenance inputs | Fixture/smoke | Verdict |
37
+ |---|---|---|---|---|---|---|
38
+ | <test/browser/package> | <command · cwd> | <version> | <owner + item> | <tool/manifest/lockfile/config SHA-256> | <what ran> | pass/fail/blocked |
39
+
40
+ ## 2b. Implementation readiness
41
+ | Surface | Requirement/decision | Boundary/wiring | Slice | Proof | Verdict |
42
+ |---|---|---|---|---|---|
43
+ | <journey/data/interface/ops> | <REQ/AC + coverage row> | <contract + key link> | <SLICE-###> | <test-plan row> | ready/gap |
44
+
45
+ Inventory/currentness: <pass/gaps> · slice order/independence: <pass/gaps> ·
46
+ UX/spec/architecture: <pass/n-a/gaps> · operations/rollout/rollback: <pass/n-a/gaps>
47
+
48
+ Shared contract proof: <pass | gap: missing/one-sided/duplicated-contract/vague/non-consuming>
49
+ One-shot evidence completeness: <n/a | pass: action + retained artifact + bounds/sanitization + injective boundary map + per-seam/collision/cleanup fixtures | gap: exact missing proof>
50
+
51
+ ## 3. Axis findings (floor-gated)
52
+ | Axis | Floor band | Findings (sev · confidence) |
53
+ |---|---|---|
54
+ | Architecture | strong/adequate/thin/broken | Critical (9) … |
55
+ | Plan code-quality | … | … |
56
+ | Test-coverage design | … | see test-plan.md |
57
+ | Performance | … | … |
58
+ Suppressed (confidence ≤4, unverified): <count — one line each>
59
+
60
+ ## 4. Failure modes
61
+ | New codepath/boundary | Realistic failure | Partial/unknown effect | Recovery owner/path | Proof? | Silent? | Verdict |
62
+ |---|---|---|---|---|---|---|
63
+ | <path> | timeout / duplicate / race / stale | <state/effect> | <owner/action> | y/n | y/n | ok / **CRITICAL gap** |
64
+
65
+ ## 5. Dependency safety
66
+ <declared order is safe | exact dependency/order correction>
67
+
68
+ ## 6. Native reviewer accounts
69
+ - `devrites-plan-reviewer`: <findings + resolution | evidence-based No-findings>
70
+ - `devrites-strategy-reviewer`: <current Temper verdict | Not-applicable: low-stakes skip>
71
+ - `devrites-devex-reviewer`: <findings + resolution | No-findings | Not-applicable: no developer surface>
72
+ - Recheck: <not-needed | one narrow recheck and result>
73
+ - Cross-model (if --cross-model): <overlap / unique findings — informational until approved>
74
+ - Final: floor = <band>; unresolved → <none | blocking qid>
75
+
76
+ ## 7. Completion summary
77
+ - Outcome: <one sentence; REQ/AC refs>
78
+ - Boundaries: <IN/OUT/must-NOT refs>
79
+ - Design/flow: <UI/n-a; chosen seams/why; happy/error refs>
80
+ - Delivery: <slice order + first>
81
+ - Proof/gates: <test-plan rows; justified action-time gates>
82
+ - Review: scope <accepted/reduced>; architecture <n>; quality <n>; coverage <x/y>,
83
+ gaps <n>, Critical regressions <n>; failure modes <n>, Critical gaps <n>.
84
+ - Entry/records: preflight <pass/fail/blocked>; checkpoints <none/list>;
85
+ NOT-in-scope + existing written; plan <hardened | n Guard deltas>.
86
+ ```
87
+
88
+ ## `test-plan.md`: the build-readable coverage target
89
+
90
+ Write/update `.devrites/work/<slug>/test-plan.md`. `/rite-build`'s slice-wright
91
+ writes tests from it; `/rite-prove` walks it against `evidence.md`. Specify
92
+ *what/where* to test, not implementation.
93
+
94
+ ```markdown
95
+ # Test plan: <slug>
96
+ From /rite-vet on <iso>. Runner + conventions: <detected framework + command>.
97
+
98
+ ## Build-entry preflight
99
+ | Gate | Command | Cwd | Expected | Prerequisites | Provenance to recapture |
100
+ |---|---|---|---|---|---|
101
+ | <test/browser/package> | <exact command> | <path> | <exit/output> | <service/browser/credential owner> | <tool version + full SHA-256s> |
102
+
103
+ Link any disposable parser fixture. Preflight values are planning evidence, not post-build proof;
104
+ Prove recaptures the observed command, candidate identity, and result.
105
+
106
+ Commands in this durable artifact are portable repository commands: no RTK or local shell
107
+ aliases, user-specific absolute paths, or temporary proof trees. Evidence records
108
+ the command actually executed.
109
+
110
+ ## Consumptive action gates
111
+ | Action | Why one-shot/consumptive | Retained artifact | Bounds + sanitization | Boundary map + collision proof | Terminal-path fixtures | Cleanup survival | Retry authority |
112
+ |---|---|---|---|---|---|---|---|
113
+ | <exact approved action or n/a> | <one attempt/quota/state/evidence deletion> | <durable operator-controlled path/schema> | <size/cardinality + known/unknown/malformed handling> | <every emit seam -> stable boundary ID; per-seam injection + alias mutant rejected> | <success/known/unknown/hostile> | <assertion> | <none/fresh human authorization> |
114
+
115
+ Every behavioral row names a positive, discriminating assertion and the decisive output it
116
+ produces. A command or expected exit zero alone is not a behavioral assertion; static gates
117
+ prove only their named static criterion.
118
+
119
+ ## Coverage diagram
120
+ <the ASCII code-paths + user-flows diagram from review-axes.md, with COVERAGE / GAPS / REGRESSIONS line>
121
+
122
+ ## Per-gap test requirements
123
+ | ID | Path / flow | Test file (match conventions) | Asserts (input → expected) | Kind | Slice | Priority |
124
+ |---|---|---|---|---|---|---|
125
+ | T1 | <path> | <path/to.test> | <empty list → 200 + []> | unit / E2E / eval | <slice> | P1 / **Regression-Critical** |
126
+
127
+ ## Interaction inventory (UI slices — every element + flow gets an asserting test)
128
+ Enumerate every interactive element and user flow the feature exposes; one row each, none
129
+ skipped. Level per [`testing.md`](../../devrites-lib/reference/standards/testing.md) "Completeness": elements/fields → unit/component, critical
130
+ journeys → one E2E (never one-per-field). `/rite-build` must cover every row; `/rite-prove`
131
+ fails any row with no passing result — an unverified element is a NO-GO, like an unproven criterion.
132
+ ```markdown
133
+ | Element / flow | Kind (field/checkbox/select/radio/toggle/button/link/flow) | Level | Test file | Asserts (action → expected) |
134
+ |---|---|---|---|---|
135
+ | email field | field | unit | <form.test> | invalid → error; valid → accepted |
136
+ | login | flow ★★★ | E2E | <login.e2e> | submit → dashboard |
137
+ ```
138
+
139
+ Omit the whole section only for a slice with **no** interactive surface (pure backend/logic).
140
+
141
+ ## Acceptance → test map
142
+
143
+ - <spec acceptance criterion> → <T1, T3> # every criterion maps to ≥1 test
144
+
145
+ For every row in `plan.md`'s `Shared contract proof`, the per-gap requirements name both
146
+ provider- and consumer-side asserting tests and state how each consumes the same canonical
147
+ artifact. Reference the plan row; do not reproduce its contract table here.
148
+
149
+ ## Parallelization table (in `eng-review.md` §5 when there's an opportunity)
150
+
151
+ ```markdown
152
+ | Step / workstream | Modules touched (dir-level) | Depends on |
153
+ |---|---|---|
154
+ | API endpoints | controllers/, serializers/ | — |
155
+ | Worker | jobs/, lib/queue/ | API endpoints |
156
+
157
+ Lanes: A: API → Worker (sequential, shared lib/) · B: migration (independent)
158
+ Order: launch A + B in parallel worktrees → merge → C
159
+ Conflicts: Lanes A and B both touch models/ — sequential or coordinate.
160
+ ```
161
+
162
+ ## Fold-back: the part the build follows
163
+
164
+ Vet hardens the plan. Use the marked action before fold-back.
165
+
166
+ - **Write directly into `plan.md` / `tasks.md`** (single canonical writer: you, not the reviewer):
167
+ - `plan.md` §Scope boundaries ← "NOT in scope" items.
168
+ - `plan.md` §Architecture decisions ← reuse-over-rebuild calls + named failure scenarios.
169
+ - `plan.md` §Applicability and system ownership ← corrected topology/data/integration
170
+ routing and each triggered standard's feature-specific output.
171
+ - `plan.md` §Dependency graph / §Implementation order ← any dependency or ordering fix
172
+ (e.g. refactor-before-feature split).
173
+ - `plan.md` §Complexity & deviations gate ← any deviation the §0 challenge surfaced + its justification.
174
+ - `tasks.md` slices ← added test requirements (point at `test-plan.md`), added error-handling /
175
+ failure-mode coverage, tightened slice scope, a split of a refactor+behavior slice into two.
176
+ Adjust a slice's `Gate:` upward when vet reveals higher stakes (e.g. an unflagged migration).
177
+ - Re-run the `plan.md` Readiness gate after edits; it must still pass.
178
+ - **Reslice:** marked action only; no local predicate.
179
+ - **`decisions.md`:** one ADR per material call: `context · decision · why-not-the-alternative ·
180
+ what-would-change-it`.
181
+ - **`assumptions.md`:** every "we'll probably need X" demoted to an explicit assumption-to-verify,
182
+ never smuggled into scope as a fact.
183
+
184
+ ## Write discipline
185
+
186
+ - **Single canonical writer.** The skill writes review/test-plan and edits plan/tasks;
187
+ `devrites-plan-reviewer` is **read-only** and returns findings + bands.
188
+ - **No silent scope.** Growing acceptance without a decision, or dropping a criterion
189
+ without the Guard, is a defect.
190
+ - Put `eng-review.md` + `test-plan.md` between `tasks.md` and `state.md`. Build/Prove
191
+ read test-plan as coverage; Review/Seal may consult eng-review for scope/failures.
192
+ - Finish `test-plan.md`, fold-back, and rechecks first. Changes to `brief.md`, `spec.md`,
193
+ `decisions.md`, `assumptions.md`, or `questions.md` require revalidating the
194
+ affected decision-coverage rows, assumption audit, residual uncertainty, and closed gates.
195
+ Partial/Missing, an unowned material assumption, or an open blocking/escalating question routes
196
+ `/rite-clarify`/HITL. Re-read affected rows with current evidence; repeat the exact
197
+ plan-reviewer and applicable strategy/DevEx after edits. Root writes READY only after
198
+ the checklist. Normal readiness rejects missing/stale bindings; empty tables,
199
+ placeholders, non-passing preflight rows, or an
200
+ acceptance criterion with no meaningful test mapping remain native review blockers.
201
+ After the final recheck, emit the binding with `devrites-engine check readiness
202
+ --emit-binding <slug>` and replace its one exact line. Never refresh it without Vet.