devrites 5.5.0 → 5.7.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 (309) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +8 -6
  3. package/engine/internal/devritespaths/paths.go +3 -0
  4. package/engine/internal/hostpack/hostpack.go +45 -6
  5. package/engine/internal/hostpack/hostpack_test.go +29 -13
  6. package/engine/internal/install/apply.go +14 -5
  7. package/engine/internal/install/install.go +8 -2
  8. package/engine/internal/install/install_test.go +12 -5
  9. package/engine/internal/install/merge.go +5 -0
  10. package/engine/internal/install/preflight.go +20 -2
  11. package/engine/internal/install/uninstall.go +5 -0
  12. package/engine/internal/install/update.go +1 -1
  13. package/install.sh +107 -38
  14. package/pack/.claude/skills/rite-define/SKILL.md +1 -1
  15. package/pack/.claude/skills/rite-handoff/SKILL.md +1 -1
  16. package/pack/.claude/skills/rite-plan/SKILL.md +1 -1
  17. package/pack/.claude/skills/rite-pressure-test/SKILL.md +1 -1
  18. package/pack/.claude/skills/rite-quick/SKILL.md +1 -1
  19. package/pack/.claude/skills/rite-status/SKILL.md +1 -1
  20. package/pack/.claude/skills/rite-zoom-out/SKILL.md +1 -1
  21. package/pack/generated/README.md +5 -1
  22. package/pack/generated/claude/skills/rite-define/SKILL.md +1 -1
  23. package/pack/generated/claude/skills/rite-handoff/SKILL.md +1 -1
  24. package/pack/generated/claude/skills/rite-plan/SKILL.md +1 -1
  25. package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +1 -1
  26. package/pack/generated/claude/skills/rite-quick/SKILL.md +1 -1
  27. package/pack/generated/claude/skills/rite-status/SKILL.md +1 -1
  28. package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +1 -1
  29. package/pack/generated/codex/skills/rite-define/SKILL.md +1 -1
  30. package/pack/generated/codex/skills/rite-handoff/SKILL.md +1 -1
  31. package/pack/generated/codex/skills/rite-plan/SKILL.md +1 -1
  32. package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +1 -1
  33. package/pack/generated/codex/skills/rite-quick/SKILL.md +1 -1
  34. package/pack/generated/codex/skills/rite-status/SKILL.md +1 -1
  35. package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +1 -1
  36. package/pack/generated/omp/skills/rite-define/SKILL.md +1 -1
  37. package/pack/generated/omp/skills/rite-handoff/SKILL.md +1 -1
  38. package/pack/generated/omp/skills/rite-plan/SKILL.md +1 -1
  39. package/pack/generated/omp/skills/rite-pressure-test/SKILL.md +1 -1
  40. package/pack/generated/omp/skills/rite-quick/SKILL.md +1 -1
  41. package/pack/generated/omp/skills/rite-status/SKILL.md +1 -1
  42. package/pack/generated/omp/skills/rite-zoom-out/SKILL.md +1 -1
  43. package/pack/generated/pi/AGENTS.md +22 -0
  44. package/pack/generated/pi/agents/devrites-code-reviewer.md +142 -0
  45. package/pack/generated/pi/agents/devrites-devex-reviewer.md +124 -0
  46. package/pack/generated/pi/agents/devrites-doubt-reviewer.md +88 -0
  47. package/pack/generated/pi/agents/devrites-evidence-scout.md +72 -0
  48. package/pack/generated/pi/agents/devrites-frontend-reviewer.md +116 -0
  49. package/pack/generated/pi/agents/devrites-performance-reviewer.md +115 -0
  50. package/pack/generated/pi/agents/devrites-plan-drafter.md +99 -0
  51. package/pack/generated/pi/agents/devrites-plan-reviewer.md +142 -0
  52. package/pack/generated/pi/agents/devrites-proof-runner.md +74 -0
  53. package/pack/generated/pi/agents/devrites-retrospector.md +61 -0
  54. package/pack/generated/pi/agents/devrites-security-auditor.md +109 -0
  55. package/pack/generated/pi/agents/devrites-simplifier-reviewer.md +94 -0
  56. package/pack/generated/pi/agents/devrites-slice-wright.md +204 -0
  57. package/pack/generated/pi/agents/devrites-spec-reviewer.md +96 -0
  58. package/pack/generated/pi/agents/devrites-strategy-reviewer.md +100 -0
  59. package/pack/generated/pi/agents/devrites-test-analyst.md +94 -0
  60. package/pack/generated/pi/agents/devrites-upgrade-planner.md +89 -0
  61. package/pack/generated/pi/prompts/rite-adopt.md +5 -0
  62. package/pack/generated/pi/prompts/rite-autocomplete.md +5 -0
  63. package/pack/generated/pi/prompts/rite-build.md +5 -0
  64. package/pack/generated/pi/prompts/rite-clarify.md +5 -0
  65. package/pack/generated/pi/prompts/rite-converge.md +5 -0
  66. package/pack/generated/pi/prompts/rite-customize.md +5 -0
  67. package/pack/generated/pi/prompts/rite-define.md +5 -0
  68. package/pack/generated/pi/prompts/rite-doctor.md +5 -0
  69. package/pack/generated/pi/prompts/rite-dogfood.md +5 -0
  70. package/pack/generated/pi/prompts/rite-explain.md +5 -0
  71. package/pack/generated/pi/prompts/rite-frame.md +5 -0
  72. package/pack/generated/pi/prompts/rite-handoff.md +5 -0
  73. package/pack/generated/pi/prompts/rite-learn.md +5 -0
  74. package/pack/generated/pi/prompts/rite-plan.md +5 -0
  75. package/pack/generated/pi/prompts/rite-polish.md +5 -0
  76. package/pack/generated/pi/prompts/rite-pov.md +5 -0
  77. package/pack/generated/pi/prompts/rite-pr-feedback.md +5 -0
  78. package/pack/generated/pi/prompts/rite-pressure-test.md +5 -0
  79. package/pack/generated/pi/prompts/rite-prototype.md +5 -0
  80. package/pack/generated/pi/prompts/rite-prove.md +5 -0
  81. package/pack/generated/pi/prompts/rite-quick.md +5 -0
  82. package/pack/generated/pi/prompts/rite-resolve.md +5 -0
  83. package/pack/generated/pi/prompts/rite-review.md +5 -0
  84. package/pack/generated/pi/prompts/rite-seal.md +5 -0
  85. package/pack/generated/pi/prompts/rite-ship.md +5 -0
  86. package/pack/generated/pi/prompts/rite-spec.md +5 -0
  87. package/pack/generated/pi/prompts/rite-status.md +5 -0
  88. package/pack/generated/pi/prompts/rite-temper.md +5 -0
  89. package/pack/generated/pi/prompts/rite-upgrade.md +5 -0
  90. package/pack/generated/pi/prompts/rite-vet.md +5 -0
  91. package/pack/generated/pi/prompts/rite-watch-pr.md +5 -0
  92. package/pack/generated/pi/prompts/rite-zoom-out.md +5 -0
  93. package/pack/generated/pi/prompts/rite.md +5 -0
  94. package/pack/generated/pi/skills/devrites-api-interface/SKILL.md +63 -0
  95. package/pack/generated/pi/skills/devrites-audit/SKILL.md +50 -0
  96. package/pack/generated/pi/skills/devrites-browser-proof/SKILL.md +76 -0
  97. package/pack/generated/pi/skills/devrites-browser-proof/reference/browser-performance.md +15 -0
  98. package/pack/generated/pi/skills/devrites-browser-proof/reference/visual-verdict.md +34 -0
  99. package/pack/generated/pi/skills/devrites-debug-recovery/SKILL.md +96 -0
  100. package/pack/generated/pi/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
  101. package/pack/generated/pi/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +34 -0
  102. package/pack/generated/pi/skills/devrites-debug-recovery/reference/hypotheses.md +17 -0
  103. package/pack/generated/pi/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
  104. package/pack/generated/pi/skills/devrites-debug-recovery/reference/regression-test.md +30 -0
  105. package/pack/generated/pi/skills/devrites-debug-recovery/reference/trace.md +25 -0
  106. package/pack/generated/pi/skills/devrites-doubt/SKILL.md +79 -0
  107. package/pack/generated/pi/skills/devrites-frontend-craft/SKILL.md +86 -0
  108. package/pack/generated/pi/skills/devrites-frontend-craft/reference/craft.md +63 -0
  109. package/pack/generated/pi/skills/devrites-frontend-craft/reference/design-references.md +116 -0
  110. package/pack/generated/pi/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
  111. package/pack/generated/pi/skills/devrites-frontend-craft/reference/quality-standards.md +294 -0
  112. package/pack/generated/pi/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
  113. package/pack/generated/pi/skills/devrites-frontend-craft/reference/shape.md +56 -0
  114. package/pack/generated/pi/skills/devrites-interview/SKILL.md +102 -0
  115. package/pack/generated/pi/skills/devrites-lib/SKILL.md +58 -0
  116. package/pack/generated/pi/skills/devrites-lib/reference/candidate-integrity.md +42 -0
  117. package/pack/generated/pi/skills/devrites-lib/reference/intent-map.md +64 -0
  118. package/pack/generated/pi/skills/devrites-lib/reference/orchestration-profiles.md +27 -0
  119. package/pack/generated/pi/skills/devrites-lib/reference/parallel-dispatch.md +73 -0
  120. package/pack/generated/pi/skills/devrites-lib/reference/reply-contract.md +88 -0
  121. package/pack/generated/pi/skills/devrites-lib/reference/standards/README.md +60 -0
  122. package/pack/generated/pi/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +30 -0
  123. package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +398 -0
  124. package/pack/generated/pi/skills/devrites-lib/reference/standards/agents.md +99 -0
  125. package/pack/generated/pi/skills/devrites-lib/reference/standards/anti-patterns.md +48 -0
  126. package/pack/generated/pi/skills/devrites-lib/reference/standards/browser-proof-checklist.md +24 -0
  127. package/pack/generated/pi/skills/devrites-lib/reference/standards/ci-cd.md +50 -0
  128. package/pack/generated/pi/skills/devrites-lib/reference/standards/code-navigation.md +43 -0
  129. package/pack/generated/pi/skills/devrites-lib/reference/standards/code-review.md +108 -0
  130. package/pack/generated/pi/skills/devrites-lib/reference/standards/coding-style.md +48 -0
  131. package/pack/generated/pi/skills/devrites-lib/reference/standards/context-hygiene.md +109 -0
  132. package/pack/generated/pi/skills/devrites-lib/reference/standards/core.md +167 -0
  133. package/pack/generated/pi/skills/devrites-lib/reference/standards/data-integrity.md +118 -0
  134. package/pack/generated/pi/skills/devrites-lib/reference/standards/debug-recovery.md +28 -0
  135. package/pack/generated/pi/skills/devrites-lib/reference/standards/definition-of-done.md +19 -0
  136. package/pack/generated/pi/skills/devrites-lib/reference/standards/deprecation.md +31 -0
  137. package/pack/generated/pi/skills/devrites-lib/reference/standards/developer-experience.md +119 -0
  138. package/pack/generated/pi/skills/devrites-lib/reference/standards/development-workflow.md +29 -0
  139. package/pack/generated/pi/skills/devrites-lib/reference/standards/documentation.md +43 -0
  140. package/pack/generated/pi/skills/devrites-lib/reference/standards/edge-case-trace.md +92 -0
  141. package/pack/generated/pi/skills/devrites-lib/reference/standards/elicitation.md +85 -0
  142. package/pack/generated/pi/skills/devrites-lib/reference/standards/error-handling.md +47 -0
  143. package/pack/generated/pi/skills/devrites-lib/reference/standards/git-workflow.md +49 -0
  144. package/pack/generated/pi/skills/devrites-lib/reference/standards/hooks.md +25 -0
  145. package/pack/generated/pi/skills/devrites-lib/reference/standards/integration-reliability.md +102 -0
  146. package/pack/generated/pi/skills/devrites-lib/reference/standards/loop-operations.md +85 -0
  147. package/pack/generated/pi/skills/devrites-lib/reference/standards/observability.md +88 -0
  148. package/pack/generated/pi/skills/devrites-lib/reference/standards/one-shot-actions.md +97 -0
  149. package/pack/generated/pi/skills/devrites-lib/reference/standards/patterns.md +68 -0
  150. package/pack/generated/pi/skills/devrites-lib/reference/standards/performance.md +51 -0
  151. package/pack/generated/pi/skills/devrites-lib/reference/standards/principles.md +42 -0
  152. package/pack/generated/pi/skills/devrites-lib/reference/standards/prose-style.md +123 -0
  153. package/pack/generated/pi/skills/devrites-lib/reference/standards/release/ship-checklist.md +8 -0
  154. package/pack/generated/pi/skills/devrites-lib/reference/standards/repository-topology.md +80 -0
  155. package/pack/generated/pi/skills/devrites-lib/reference/standards/review-checklist.md +12 -0
  156. package/pack/generated/pi/skills/devrites-lib/reference/standards/security-checklist.md +25 -0
  157. package/pack/generated/pi/skills/devrites-lib/reference/standards/security.md +202 -0
  158. package/pack/generated/pi/skills/devrites-lib/reference/standards/skill-authoring.md +209 -0
  159. package/pack/generated/pi/skills/devrites-lib/reference/standards/spec-grammar.md +197 -0
  160. package/pack/generated/pi/skills/devrites-lib/reference/standards/test-proof-checklist.md +13 -0
  161. package/pack/generated/pi/skills/devrites-lib/reference/standards/testing.md +212 -0
  162. package/pack/generated/pi/skills/devrites-lib/reference/standards/tooling.md +92 -0
  163. package/pack/generated/pi/skills/devrites-lib/reference/standards/workflow-artifacts.md +427 -0
  164. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
  165. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
  166. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
  167. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
  168. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
  169. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
  170. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
  171. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
  172. package/pack/generated/pi/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
  173. package/pack/generated/pi/skills/devrites-lib/reference/workspace-artifact-schema.md +267 -0
  174. package/pack/generated/pi/skills/devrites-prose-craft/SKILL.md +73 -0
  175. package/pack/generated/pi/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
  176. package/pack/generated/pi/skills/devrites-prose-craft/reference/examples.md +131 -0
  177. package/pack/generated/pi/skills/devrites-prose-craft/reference/structures.md +196 -0
  178. package/pack/generated/pi/skills/devrites-source-driven/SKILL.md +52 -0
  179. package/pack/generated/pi/skills/devrites-ux-shape/SKILL.md +134 -0
  180. package/pack/generated/pi/skills/devrites-ux-shape/reference/brief-template.md +108 -0
  181. package/pack/generated/pi/skills/devrites-ux-shape/reference/visual-direction-probe.md +48 -0
  182. package/pack/generated/pi/skills/rite/SKILL.md +148 -0
  183. package/pack/generated/pi/skills/rite/reference/menu.md +48 -0
  184. package/pack/generated/pi/skills/rite-adopt/SKILL.md +52 -0
  185. package/pack/generated/pi/skills/rite-adopt/reference/adoption.md +19 -0
  186. package/pack/generated/pi/skills/rite-adopt/reference/anti-patterns.md +19 -0
  187. package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +132 -0
  188. package/pack/generated/pi/skills/rite-autocomplete/reference/decision-policy.md +41 -0
  189. package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +148 -0
  190. package/pack/generated/pi/skills/rite-autocomplete/reference/stop-conditions.md +92 -0
  191. package/pack/generated/pi/skills/rite-build/SKILL.md +96 -0
  192. package/pack/generated/pi/skills/rite-build/reference/afk-discipline.md +145 -0
  193. package/pack/generated/pi/skills/rite-build/reference/anti-patterns.md +23 -0
  194. package/pack/generated/pi/skills/rite-build/reference/checkpoint-protocol.md +120 -0
  195. package/pack/generated/pi/skills/rite-build/reference/checkpoint.md +44 -0
  196. package/pack/generated/pi/skills/rite-build/reference/frontend-trigger.md +39 -0
  197. package/pack/generated/pi/skills/rite-build/reference/one-slice-cycle.md +50 -0
  198. package/pack/generated/pi/skills/rite-build/reference/output.md +33 -0
  199. package/pack/generated/pi/skills/rite-build/reference/parallel-batch.md +205 -0
  200. package/pack/generated/pi/skills/rite-build/reference/phase-contract.md +87 -0
  201. package/pack/generated/pi/skills/rite-build/reference/spec-drift-guard.md +84 -0
  202. package/pack/generated/pi/skills/rite-build/reference/tdd.md +27 -0
  203. package/pack/generated/pi/skills/rite-build/reference/wright-dispatch.md +89 -0
  204. package/pack/generated/pi/skills/rite-clarify/SKILL.md +99 -0
  205. package/pack/generated/pi/skills/rite-clarify/reference/anti-patterns.md +24 -0
  206. package/pack/generated/pi/skills/rite-clarify/reference/decision-coverage.md +55 -0
  207. package/pack/generated/pi/skills/rite-converge/SKILL.md +145 -0
  208. package/pack/generated/pi/skills/rite-converge/reference/anti-patterns.md +35 -0
  209. package/pack/generated/pi/skills/rite-converge/reference/convergence-assessment.md +65 -0
  210. package/pack/generated/pi/skills/rite-customize/SKILL.md +60 -0
  211. package/pack/generated/pi/skills/rite-define/SKILL.md +169 -0
  212. package/pack/generated/pi/skills/rite-define/reference/anti-patterns.md +26 -0
  213. package/pack/generated/pi/skills/rite-define/reference/gates.md +154 -0
  214. package/pack/generated/pi/skills/rite-define/reference/plan-template.md +149 -0
  215. package/pack/generated/pi/skills/rite-doctor/SKILL.md +69 -0
  216. package/pack/generated/pi/skills/rite-dogfood/SKILL.md +55 -0
  217. package/pack/generated/pi/skills/rite-explain/SKILL.md +152 -0
  218. package/pack/generated/pi/skills/rite-explain/reference/intake.md +89 -0
  219. package/pack/generated/pi/skills/rite-frame/SKILL.md +115 -0
  220. package/pack/generated/pi/skills/rite-frame/reference/failure-modes.md +66 -0
  221. package/pack/generated/pi/skills/rite-handoff/SKILL.md +97 -0
  222. package/pack/generated/pi/skills/rite-handoff/reference/handoff-template.md +44 -0
  223. package/pack/generated/pi/skills/rite-learn/SKILL.md +72 -0
  224. package/pack/generated/pi/skills/rite-plan/SKILL.md +186 -0
  225. package/pack/generated/pi/skills/rite-plan/reference/anti-patterns.md +34 -0
  226. package/pack/generated/pi/skills/rite-plan/reference/dependency-graph.md +48 -0
  227. package/pack/generated/pi/skills/rite-plan/reference/replan-and-repair.md +105 -0
  228. package/pack/generated/pi/skills/rite-plan/reference/slicing.md +167 -0
  229. package/pack/generated/pi/skills/rite-plan/reference/task-breakdown.md +42 -0
  230. package/pack/generated/pi/skills/rite-polish/SKILL.md +104 -0
  231. package/pack/generated/pi/skills/rite-polish/reference/adr-promotion.md +11 -0
  232. package/pack/generated/pi/skills/rite-polish/reference/anti-ai-slop.md +187 -0
  233. package/pack/generated/pi/skills/rite-polish/reference/anti-patterns.md +30 -0
  234. package/pack/generated/pi/skills/rite-polish/reference/backend-polish.md +80 -0
  235. package/pack/generated/pi/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
  236. package/pack/generated/pi/skills/rite-polish/reference/code.md +82 -0
  237. package/pack/generated/pi/skills/rite-polish/reference/design-memory.md +117 -0
  238. package/pack/generated/pi/skills/rite-polish/reference/design-system-discovery.md +8 -0
  239. package/pack/generated/pi/skills/rite-polish/reference/harden-checklist.md +109 -0
  240. package/pack/generated/pi/skills/rite-polish/reference/ledger.md +65 -0
  241. package/pack/generated/pi/skills/rite-polish/reference/ui.md +137 -0
  242. package/pack/generated/pi/skills/rite-pov/SKILL.md +58 -0
  243. package/pack/generated/pi/skills/rite-pr-feedback/SKILL.md +54 -0
  244. package/pack/generated/pi/skills/rite-pressure-test/SKILL.md +67 -0
  245. package/pack/generated/pi/skills/rite-prototype/SKILL.md +104 -0
  246. package/pack/generated/pi/skills/rite-prove/SKILL.md +120 -0
  247. package/pack/generated/pi/skills/rite-prove/reference/acceptance-proof.md +88 -0
  248. package/pack/generated/pi/skills/rite-prove/reference/anti-patterns.md +25 -0
  249. package/pack/generated/pi/skills/rite-prove/reference/browser-proof.md +51 -0
  250. package/pack/generated/pi/skills/rite-prove/reference/failure-triage.md +43 -0
  251. package/pack/generated/pi/skills/rite-prove/reference/proof-ladder.md +28 -0
  252. package/pack/generated/pi/skills/rite-prove/reference/test-command-discovery.md +30 -0
  253. package/pack/generated/pi/skills/rite-quick/SKILL.md +82 -0
  254. package/pack/generated/pi/skills/rite-resolve/SKILL.md +95 -0
  255. package/pack/generated/pi/skills/rite-resolve/reference/answer-protocol.md +118 -0
  256. package/pack/generated/pi/skills/rite-review/SKILL.md +170 -0
  257. package/pack/generated/pi/skills/rite-review/reference/anti-patterns.md +32 -0
  258. package/pack/generated/pi/skills/rite-review/reference/cognitive-load.md +90 -0
  259. package/pack/generated/pi/skills/rite-review/reference/feature-scoped-review.md +26 -0
  260. package/pack/generated/pi/skills/rite-review/reference/five-axis-review.md +66 -0
  261. package/pack/generated/pi/skills/rite-review/reference/nielsen-heuristics.md +126 -0
  262. package/pack/generated/pi/skills/rite-review/reference/performance-checklist.md +80 -0
  263. package/pack/generated/pi/skills/rite-review/reference/performance-review.md +14 -0
  264. package/pack/generated/pi/skills/rite-review/reference/security-review.md +42 -0
  265. package/pack/generated/pi/skills/rite-seal/SKILL.md +75 -0
  266. package/pack/generated/pi/skills/rite-seal/reference/anti-patterns.md +29 -0
  267. package/pack/generated/pi/skills/rite-seal/reference/final-evidence.md +41 -0
  268. package/pack/generated/pi/skills/rite-seal/reference/go-no-go.md +29 -0
  269. package/pack/generated/pi/skills/rite-seal/reference/output.md +5 -0
  270. package/pack/generated/pi/skills/rite-seal/reference/phase-contract.md +47 -0
  271. package/pack/generated/pi/skills/rite-seal/reference/risk-and-rollback.md +56 -0
  272. package/pack/generated/pi/skills/rite-seal/reference/seal-template.md +27 -0
  273. package/pack/generated/pi/skills/rite-ship/SKILL.md +88 -0
  274. package/pack/generated/pi/skills/rite-ship/reference/anti-patterns.md +28 -0
  275. package/pack/generated/pi/skills/rite-ship/reference/close-out.md +68 -0
  276. package/pack/generated/pi/skills/rite-ship/reference/git-ship.md +120 -0
  277. package/pack/generated/pi/skills/rite-ship/reference/rollout.md +62 -0
  278. package/pack/generated/pi/skills/rite-ship/reference/ship-template.md +39 -0
  279. package/pack/generated/pi/skills/rite-spec/SKILL.md +150 -0
  280. package/pack/generated/pi/skills/rite-spec/reference/acceptance-criteria.md +31 -0
  281. package/pack/generated/pi/skills/rite-spec/reference/ai-spec-template.md +40 -0
  282. package/pack/generated/pi/skills/rite-spec/reference/anti-patterns.md +27 -0
  283. package/pack/generated/pi/skills/rite-spec/reference/interview-patterns.md +56 -0
  284. package/pack/generated/pi/skills/rite-spec/reference/investigation.md +83 -0
  285. package/pack/generated/pi/skills/rite-spec/reference/question-protocol.md +36 -0
  286. package/pack/generated/pi/skills/rite-spec/reference/references-intake.md +62 -0
  287. package/pack/generated/pi/skills/rite-spec/reference/spec-checklists.md +89 -0
  288. package/pack/generated/pi/skills/rite-spec/reference/spec-template.md +154 -0
  289. package/pack/generated/pi/skills/rite-spec/reference/state-workspace.md +227 -0
  290. package/pack/generated/pi/skills/rite-status/SKILL.md +57 -0
  291. package/pack/generated/pi/skills/rite-temper/SKILL.md +130 -0
  292. package/pack/generated/pi/skills/rite-temper/reference/anti-patterns.md +30 -0
  293. package/pack/generated/pi/skills/rite-temper/reference/review-dimensions.md +66 -0
  294. package/pack/generated/pi/skills/rite-temper/reference/scope-modes.md +53 -0
  295. package/pack/generated/pi/skills/rite-temper/reference/significance.md +46 -0
  296. package/pack/generated/pi/skills/rite-temper/reference/strategy-template.md +90 -0
  297. package/pack/generated/pi/skills/rite-upgrade/SKILL.md +121 -0
  298. package/pack/generated/pi/skills/rite-vet/SKILL.md +193 -0
  299. package/pack/generated/pi/skills/rite-vet/reference/anti-patterns.md +43 -0
  300. package/pack/generated/pi/skills/rite-vet/reference/artifacts.md +202 -0
  301. package/pack/generated/pi/skills/rite-vet/reference/cross-model.md +19 -0
  302. package/pack/generated/pi/skills/rite-vet/reference/depth.md +59 -0
  303. package/pack/generated/pi/skills/rite-vet/reference/eng-lenses.md +48 -0
  304. package/pack/generated/pi/skills/rite-vet/reference/review-axes.md +201 -0
  305. package/pack/generated/pi/skills/rite-watch-pr/SKILL.md +85 -0
  306. package/pack/generated/pi/skills/rite-zoom-out/SKILL.md +69 -0
  307. package/package.json +3 -2
  308. package/scripts/build-host-artifacts.sh +100 -37
  309. package/scripts/pi-generate.sh +198 -0
@@ -0,0 +1,193 @@
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
+ user-invocable: true
6
+ ---
7
+
8
+ # /rite-vet: review the plan before build
9
+
10
+ Vet every plan's scope, architecture, quality, proof, performance, failures and writer
11
+ safety. Fold cited technical findings; design Build tests. Temper owns product;
12
+ Vet owns implementation; current `$ARGUMENTS` (`--full`) feeds the depth triggers in
13
+ `reference/depth.md`; profiles never remove the exact plan-reviewer gate
14
+ ([orchestration-profiles.md](../devrites-lib/reference/orchestration-profiles.md)).
15
+
16
+ ## Rules
17
+
18
+ Read the active standard from: `principles.md`, `patterns.md`, `coding-style.md`,
19
+ `testing.md`, `spec-grammar.md`, `performance.md`, `error-handling.md`,
20
+ `development-workflow.md`, `afk-hitl.md`, `one-shot-actions.md`,
21
+ `developer-experience.md`, `elicitation.md`, and `definition-of-done.md`. Load
22
+ repository topology, data integrity, and integration reliability only when
23
+ triggered. Before classifying any Reslice, read `.pi/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md`.
24
+ When a
25
+ plan declares a root-authored executable workflow file, read
26
+ `workflow-artifacts.md`.
27
+
28
+ <!-- BEGIN RESLICE ROUTE-TO-ACTION -->
29
+ - `FOLD` → fold technical topology; invalidate Vet/readiness; affected Vet before Build.
30
+ - `GUARD_AND_REPAIR` → no planning writes; Spec Drift Guard → Clarify → Plan repair → affected Vet.
31
+ - `BLOCKED_INPUT` → no planning writes; exact diagnostic; recover input; reclassify.
32
+ <!-- END RESLICE ROUTE-TO-ACTION -->
33
+
34
+ ## Invariants
35
+
36
+ - Review implementation, not ambition. Challenge creep, complexity, proof, and
37
+ risk without changing accepted product scope.
38
+ - Root owns decisions/writes/readiness; reviewers judge without route policy.
39
+ Cite findings/confidence; suppress
40
+ unverified or confidence ≤4 findings under `review-axes.md`.
41
+ Lens arrows in `eng-lenses.md` are heuristics; band findings only under the
42
+ four `review-axes.md` names.
43
+ - Auth, migration, public API, and data-model changes use maximum caution and the
44
+ irreversible-risk stop. Project principles never become trade-offs.
45
+ - **Governance-protected paths** (`.devrites/**`, pack skill/agent trees,
46
+ `NOTICE.md` generator regions, CI/hook config named in repo docs) require explicit
47
+ human approval before plan slices may edit them. A slice touching a protected path
48
+ without approval → Vet **NEEDS CLARIFICATION**.
49
+ - Use the lowest axis band; never average or round thin to ready. Search before
50
+ asking and resolve reversible technical choices. Ask only human-owned choices.
51
+ - Preserve a valid technical return cursor. Agent-owned `NEEDS REPLAN` returns
52
+ internally to its caller, not to the human; on a direct invocation there is
53
+ no caller, so Vet becomes it — save a return cursor
54
+ (`return_phase`/`return_next_action`) naming this Vet pass as the caller and
55
+ invoke `/rite-plan` repair inline under the same fingerprint caps. An
56
+ agent-owned verdict with budget remaining is never a user-facing command.
57
+ - **Recovery recheck is bounded and batched.** A valid cursor plus open
58
+ fingerprints enters Recovery recheck; it does not start another Full Vet or
59
+ repeat unaffected axes/reviewers. One dispatch covers every open fingerprint
60
+ of the fold — each checked individually — with a mandatory correction-created
61
+ regression audit.
62
+ <!-- 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"} -->
63
+ ## Workflow
64
+
65
+ 0. **Orient.** Read core. Resolve active slug, require state, and read plan,
66
+ tasks, spec, decision coverage, optional strategy/design brief, decisions,
67
+ assumptions, and state. Require approved Plan and `Decision coverage: CLEAR`;
68
+ otherwise stop for Define or Clarify. Use code intelligence for placement,
69
+ blast radius, and reuse.
70
+ 1. **Select depth.** Apply `reference/depth.md` exactly; never skip. Every initial
71
+ pass records an engineering verdict and test-plan coverage. A valid Recovery
72
+ recheck retains prior depth and enters 1b.
73
+ 1a. **Independent initial pass.** Freeze candidate and dispatch the exact fresh
74
+ read-only plan reviewer — plus developer-experience reviewer for developer
75
+ surfaces and the current strategy reviewer after significant Temper — in
76
+ parallel under `../devrites-lib/reference/parallel-dispatch.md`; they are
77
+ independent read-only passes on one frozen candidate. Missing
78
+ required account blocks.
79
+ 1b. **Recovery recheck.** Require valid return cursor, accepted prior finding,
80
+ exact fingerprint/reproduction, repaired candidate identity, changed
81
+ paths/criteria, affected drift/evidence, and the recorded delta self-check.
82
+ Freeze that packet and dispatch each exact owning reviewer once,
83
+ fresh/read-only, limited to it — all its open fingerprints in that dispatch.
84
+ Do not rerun broad inventory or unaffected reviewers. Close the prior
85
+ fingerprint only with discriminating evidence plus an explicit
86
+ correction-created regression verdict on the touched invariants (acyclic
87
+ deps, traceability, contract proof, sizing) and every region depending on a
88
+ changed clause — enumerate dependents via the dep graph and traceability
89
+ refs, not only patched sites. Otherwise record one no-progress outcome. A
90
+ different Critical/Important invariant needs exact evidence and a new
91
+ fingerprint; a Suggestion, Nit, or FYI cannot keep recovery open. Reviewer
92
+ `Late:` rows on unchanged clauses follow the canonical
93
+ [late-finding rule](../devrites-lib/reference/standards/afk-hitl.md#retry-cap-no-progress-loops-and-self-resolve):
94
+ Critical with a failure path → new fingerprint; otherwise `eng-review.md`
95
+ `## Deferred findings` (mechanism rows become one proof row at step 6). A packet
96
+ marked `convergence_pressure` accepts an explicit, bounded declared
97
+ residual/limitation folded into the contract text as closure for a finding
98
+ marked as a refinement of an already-pinned clause; the recheck may re-raise
99
+ it only by naming a concrete failure path the declaration omits. A
100
+ `new_failure_mode` finding is never residual-eligible. A fold whose
101
+ findings are all Suggestion-or-lower rechecks mechanically at the
102
+ materialization gate — anchors applied, mirrors consistent, invariants
103
+ pass — without a dispatched reviewer; sub-Important findings already
104
+ cannot keep recovery open. Reconcile
105
+ shared artifact/readiness gates, then enter step 8 or the next repair.
106
+ Do not fall through to steps 2–7. Retain evidenced unchanged coverage; changed
107
+ global contract/uncertain impact requires full applicable review. Reopen historical
108
+ findings only for affected invariants/dependencies.
109
+ 2. **Challenge scope.** Apply review-axes §0 and search accepted decisions.
110
+ Harden to the smallest contract-complete plan, using marked topology action.
111
+ Then verify bidirectional ID-and-meaning traceability across spec/plan/
112
+ tasks/test-plan/traceability, acceptance, terms, principles, anti-slop,
113
+ and conventions; every slice and test-plan row maps to a live requirement
114
+ and vice versa. Critical gaps and
115
+ unexcepted principle breaches block; record the challenge result in `eng-review.md`
116
+ §2 (Scope challenge) after recheck.
117
+ 3. **Preflight Build entry.** Under `reference/artifacts.md`, verify exact
118
+ command/cwd/tool/version/prerequisite; output filters must preserve upstream
119
+ failure. Verify dependencies from authoritative source plus nearest manifest.
120
+ Run parser-sensitive syntax only in isolated fixtures. Remeasure mutable facts;
121
+ live evidence wins, conflict marks stale, and unmeasurable conflict is a gap.
122
+ Record complete SHA-256 provenance. Every behavioral mapping names a positive
123
+ discriminating assertion and decisive signal, never only exit zero.
124
+
125
+ For each consumptive action, bind every `reference/artifacts.md` Consumptive
126
+ action gates column; every fingerprint identifies one actionable seam; aliasing multiple
127
+ emit sites is a gap. Preflight observes but need not make future behavior pass.
128
+ 4. **Audit readiness.** Goal-backward map every requirement, criterion, NFR,
129
+ interaction, edge/prohibition, and decision row to one slice and executable
130
+ proof. Verify UX/spec/architecture alignment, contracts, dependency order,
131
+ slice independence/wiring, prerequisites, failure/observability/rollback, and
132
+ ownership. The plan's `Shared contract proof` names one reused boundary
133
+ artifact plus two consuming tests for every changed API/event/schema/provider-
134
+ consumer seam, or an explicit no-impact statement. Missing, one-sided,
135
+ duplicated-contract, vague, or non-consuming proof fails closed.
136
+
137
+ Technical gaps are `NEEDS REPLAN` and Plan repair — each finding marks
138
+ itself `new_failure_mode` or names the already-pinned clause/fingerprint
139
+ it refines, making alias-detection and `convergence_pressure` eligibility
140
+ mechanical — and carries `kind: contract | mechanism`
141
+ (`review-axes.md` § Finding kind). Only `contract` findings open a Plan
142
+ repair; a `mechanism` finding is closed by one `test-plan.md` proof row
143
+ at step 6 and leaves readiness intact when nothing else is open.
144
+ Product/risk gaps are
145
+ `NEEDS CLARIFICATION` and Clarify. Neither becomes a Build qid.
146
+ 5. **Review axes.** Apply `review-axes.md` through `eng-lenses.md`. Fold verified
147
+ behavior-preserving technical findings; walk only human-owned decisions.
148
+ Profile gate ceiling and Reslice marked action remain authoritative.
149
+ 6. **Write outputs.** Produce every artifact in `reference/artifacts.md`. After
150
+ editing intent/decision/assumption/question owners, re-scan affected coverage,
151
+ assumptions, uncertainty, and gates. Keep state non-READY. Every scenario and
152
+ criterion needs positive, discriminating proof; every slice must be one-pass
153
+ implementable; developer plans need a predicted scorecard. Durable commands
154
+ are portable repository commands, not host wrappers.
155
+ 7. **Narrow recheck after edits.** Dispatch the exact plan reviewer once per
156
+ fold — one dispatch covering every open fingerprint, preserving
157
+ per correction/fingerprint accounting (each checked individually with its
158
+ accepted findings, changed paths/criteria, new identity, and recorded delta
159
+ self-check); it must return an explicit correction-created regression
160
+ verdict over touched invariants plus every dependent of each changed clause
161
+ (dep-graph and traceability lookup), not only fingerprint closure. Within one correction, no broad
162
+ third loop. If it changes plan, fold again. A closed input plus a distinct Critical/Important invariant returns
163
+ that new fingerprint as progress. Then close matrix and rerun ID/meaning audit.
164
+ 8. **Build readback and readiness.** Add a cited five-line readback to
165
+ `eng-review.md` (artifacts.md §7 rows 1–5): outcome/ACs; IN/OUT/must-NOT; UI direction and architecture/
166
+ critical flow; slice order/first slice; decisive proof/action-time gates. No implementer should need to invent product, architecture, or proof.
167
+ Contradiction, ownerlessness, or material ambiguity blocks via Clarify or Plan.
168
+
169
+ Write exactly one `Implementation readiness: READY`, `NEEDS CLARIFICATION`,
170
+ or `NEEDS REPLAN`. Root sets READY after every account, checklist,
171
+ preflight, and sweep is green. Write phase/next step and emit one
172
+ `Readiness inputs SHA-256` with
173
+ `devrites-engine check readiness --emit-binding <slug>`; normal readiness check
174
+ must pass. Technical failure records reproduction, not qid. Human gap awaits
175
+ Clarify. Optional cross-model follows `reference/cross-model.md`.
176
+
177
+ With READY, no pending remediation, and a valid technical return cursor,
178
+ restore and consume the return cursor instead of defaulting to Build. Preserve
179
+ it through admitted remediation. Only a real stop reaches the human.
180
+ 9. **Stop at the Vet boundary.** Show Build readback, scope verdict, lowest axis,
181
+ closed gaps, preflight, action checkpoints, and critical failures. Recommend
182
+ Build only when READY.
183
+
184
+ > Do not replace interactive review with artifacts, change acceptance through
185
+ > hardening, score without source evidence, or ignore unexplained complexity.
186
+
187
+ ## Phase exit
188
+
189
+ **Complete when:** `eng-review.md` records exactly one readiness verdict, readiness
190
+ binding SHA-256 passes, and every required reviewer account is admitted.
191
+
192
+ **Failing case:** READY written while a required reviewer returned `Outcome: gap` →
193
+ 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: `.pi/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: `.pi/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` "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.
@@ -0,0 +1,19 @@
1
+ # `--cross-model`: explicit outside integration
2
+
3
+ This optional pass runs only when the user supplies `--cross-model` and a
4
+ different-model plugin, MCP server, or other native integration is explicitly
5
+ connected. DevRites does not discover aliases, invent a fallback model, or wrap
6
+ availability.
7
+
8
+ Give the integration the same immutable `spec.md`, `plan.md`, and `tasks.md`
9
+ candidate, without author reasoning. Ask for evidence-backed findings on
10
+ boundaries, scope/reuse, proof design, performance, reversibility, and failure
11
+ modes. The integration must remain read-only.
12
+
13
+ If no explicit integration is connected, record `requested but not configured`
14
+ and continue with the native `devrites-plan-reviewer`; absence is neither a pass
15
+ nor a blocker.
16
+
17
+ Verify every returned finding against the project before accepting it. Record
18
+ only the integration used and accepted evidence in `eng-review.md`; do not
19
+ maintain availability aliases or outside-review telemetry.
@@ -0,0 +1,59 @@
1
+ # Depth calibration: always vet, scale the rigor (never skip)
2
+
3
+ `/rite-vet` runs on **every** plan. Simple reversible work gets a **light pass**;
4
+ big/risky work gets a **full pass**, never a skip. Standalone Vet and Autocomplete
5
+ use these same depth rules.
6
+
7
+ A four-section deep-dive on a one-file reversible plan is wasteful; rubber-stamping a
8
+ migration-touching plan is dangerous. Match the effort to the stakes, but **always** leave a
9
+ recorded engineering verdict and a coverage plan.
10
+
11
+ Authority: `.pi/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md`.
12
+
13
+ <!-- BEGIN RESLICE ROUTE-TO-ACTION -->
14
+ - `FOLD` → fold technical topology; invalidate Vet/readiness; affected Vet before Build.
15
+ - `GUARD_AND_REPAIR` → no planning writes; Spec Drift Guard → Clarify → Plan repair → affected Vet.
16
+ - `BLOCKED_INPUT` → no planning writes; exact diagnostic; recover input; reclassify.
17
+ <!-- END RESLICE ROUTE-TO-ACTION -->
18
+
19
+ ## Full pass when ANY trips
20
+ - **Irreversible-risk contact:** the plan touches anything on the `afk-hitl.md` irreversible-risk
21
+ list: destructive data migration, auth/authz boundary, public-API break, external-service
22
+ contract, filesystem destruction outside the workspace.
23
+ - **Data model:** new/changed entities, relationships, or persistence shape.
24
+ - **Cross-module blast radius:** the impact (from a code-intelligence index if available (see
25
+ `../../devrites-lib/reference/standards/tooling.md`) or an honest estimate) crosses
26
+ module/service boundaries or has many dependents.
27
+ - **Complexity:** `plan.md` touches **>8 files** or adds **>2 new services/modules/classes**.
28
+ - **Multi-slice / multi-day work**, new dependency/pattern/design system. Slice count alone never creates a human pause.
29
+ - **The user asked**, or `--full`.
30
+
31
+ Full pass = §0 scope challenge + all four axes (each walked finding-by-finding) + the failure-mode
32
+ table + dependency-safety review + the reviewer loop. See [`review-axes.md`](review-axes.md).
33
+
34
+ ## Light pass otherwise (the default for simple plans: still never a skip)
35
+ When none of the full-pass triggers fire, run the **light pass**: a fast but real engineering
36
+ check that still leaves a verdict and a coverage plan. In a handful of lines:
37
+ - **§0 scope challenge, in brief:** confirm minimum diff + reuse (one line each); if a complexity
38
+ smell or missed reuse appears, escalate that to the full treatment.
39
+ - **One-line scan per axis** (architecture / plan code-quality / test-coverage / performance):
40
+ "No issues" is a valid result, but you must look and say so per axis, not assume.
41
+ - **Always** produce the acceptance→test map + any regression-Criticals in `test-plan.md`. This is
42
+ the part that makes "a correct engineering plan for *everything*" real. It never downgrades,
43
+ light or full.
44
+ - Write the short `eng-review.md` (`Depth: light`) and harden `tasks.md` with the test requirements.
45
+
46
+ A light-pass finding that turns out to be real **escalates that axis to full treatment** (walk it
47
+ with the human, confidence-banded). Light means *less ceremony*, never *less honesty*.
48
+
49
+ ## In `/rite-autocomplete`
50
+ Autocomplete runs `/rite-vet` after `/rite-define` on **every** feature: light or full per the
51
+ triggers above, **never skipped**. Under the AFK gate ceiling:
52
+ - **Auto-apply (no pause):** hardening findings: added test requirements, error-handling /
53
+ failure-mode coverage, tightened scope, reuse-over-rebuild, dependency-order fixes
54
+ (these never grow acceptance). Record the rationale in `decisions.md`.
55
+ - **Topology findings:** marked action; slice count alone never pauses.
56
+ - **Stops:** human-owned irreversible-risk findings pause. Technical recovery follows
57
+ [the canonical retry contract](../../devrites-lib/reference/standards/afk-hitl.md#retry-cap-no-progress-loops-and-self-resolve),
58
+ with no depth-specific round limit; no-progress exhaustion blocks, never grants readiness.
59
+ - **Cross-model** is off by default; it runs only if `--cross-model` was explicitly armed.
@@ -0,0 +1,48 @@
1
+ # Senior-engineer lenses: how to *see* the findings
2
+
3
+ These are not extra checklist items. They are the instincts an experienced staff engineer
4
+ applies while reading a plan: the pattern recognition that separates "read the plan" from
5
+ "caught the landmine". Apply them across all four axes in [`review-axes.md`](review-axes.md):
6
+ each lens turns a vague unease into a concrete, quotable finding.
7
+
8
+ ## The lenses
9
+
10
+ 1. **Boring by default.** A team gets a few innovation tokens; everything else should be proven
11
+ technology. When the plan introduces something novel (a new datastore, a hand-rolled queue, a
12
+ bespoke pattern), ask whether this is a wise token to spend or whether a boring built-in does
13
+ it. → Architecture / Scope axes.
14
+ 2. **Blast radius.** For every decision: what's the worst case, and how many systems / callers /
15
+ users does it touch? A change with wide blast radius and no rollback is a different risk class
16
+ than a leaf change. → Architecture / Reversibility.
17
+ 3. **Reversibility preference.** Prefer the choice that's cheap to undo (feature flag, additive
18
+ migration, incremental rollout) over the one that's right only if you're right the first time.
19
+ Make the cost of being wrong low. → Architecture / Reversibility.
20
+ 4. **Incremental over revolutionary.** Strangler-fig, not big-bang rewrite; refactor first, then
21
+ change behavior: never both in one slice. If the plan does a structural rewrite and a behavior
22
+ change together, split them. → Plan code-quality / slice shape.
23
+ 5. **Systems over heroes.** Design for a tired engineer at 3am, not your sharpest engineer on
24
+ their best day. A plan that only works if every step is done perfectly is fragile. Favor
25
+ guard rails, explicit errors, and obvious failure paths. → Code-quality / Failure modes.
26
+ 6. **Essential vs accidental complexity.** Before anything the plan adds, ask Brooks's question:
27
+ is this solving a real problem, or one we created? Accidental complexity is the cheapest thing
28
+ to cut. → Scope / Code-quality.
29
+ 7. **Make the change easy, then make the easy change.** If a slice is hard because the surrounding
30
+ structure fights it, the first move is a (separate, behavior-preserving) refactor: call it out
31
+ so the plan sequences it before the feature work, not tangled into it. → Plan code-quality.
32
+ 8. **Failure is information.** Every new codepath fails *somehow* in production: timeout, nil,
33
+ race, stale data, partial write. The plan should name the failure and decide: test it, handle
34
+ it, or accept it loudly (never silently). → Failure-mode coverage.
35
+ 9. **DX is product quality.** Slow CI, painful local dev, untestable seams → worse software over
36
+ time. If the plan makes the code harder to test or run locally, that's a real finding, not a nit.
37
+ → Test-coverage / Code-quality.
38
+ 10. **Trust boundary discipline.** Every untrusted input crosses an explicit validation + authz
39
+ boundary before it reaches trusted core logic. A plan that lets a value skip the boundary is a
40
+ security finding even pre-code. → Architecture / Security seam.
41
+
42
+ ## Using them
43
+ - A lens is a *prompt*, not a verdict. It turns "something's off here" into a finding you can
44
+ quote and band. If a lens fires, follow it to the specific plan line, then run it through the
45
+ confidence + verification gate.
46
+ - Don't recite the lenses in the output: recite the *findings* they produced.
47
+ - When a plan is genuinely clean against a lens, that's worth one line of evidence ("Reversibility:
48
+ additive migration + flag: strong"), not silence; it shows the lens was applied.