devrites 3.0.4 → 3.0.6

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 (752) hide show
  1. package/CHANGELOG.md +40 -1
  2. package/README.md +280 -521
  3. package/SECURITY.md +91 -77
  4. package/docs/adr/README.md +7 -9
  5. package/docs/agents/domain.md +5 -5
  6. package/docs/agents/issue-driven-rites.md +5 -5
  7. package/docs/agents/issue-tracker.md +1 -1
  8. package/docs/agents/triage-labels.md +2 -2
  9. package/docs/architecture.md +101 -85
  10. package/docs/capability-surface-selection.md +3 -1
  11. package/docs/cli.md +20 -13
  12. package/docs/command-map.md +39 -35
  13. package/docs/engine/agent-contract.md +11 -9
  14. package/docs/engine/commands.md +92 -78
  15. package/docs/engine/state-schema.md +23 -19
  16. package/docs/engine/workspace-schema.md +12 -11
  17. package/docs/extensions.md +17 -17
  18. package/docs/flow.md +34 -23
  19. package/docs/harness-compliance.md +2 -2
  20. package/docs/orchestration.md +21 -20
  21. package/docs/porting-to-a-new-harness.md +6 -2
  22. package/docs/release.md +30 -12
  23. package/docs/research/go-authoritative-workflow-schema-and-quality-2026-07-20.md +3 -3
  24. package/docs/skills.md +77 -52
  25. package/docs/templates/CRITIC_REVIEW_PACKET_TEMPLATE.md +35 -0
  26. package/docs/usage.md +56 -45
  27. package/engine/Makefile +2 -2
  28. package/engine/commands.go +3 -3
  29. package/engine/harnessmatrix.go +2 -2
  30. package/engine/hookpolicy.go +9 -9
  31. package/engine/hooks.go +11 -11
  32. package/engine/hooks_workspace.go +11 -11
  33. package/engine/internal/doctor/doctor.go +7 -7
  34. package/engine/internal/gate/gate.go +11 -11
  35. package/engine/internal/harness/compliance.go +1 -1
  36. package/engine/internal/harness/harness.go +7 -7
  37. package/engine/internal/install/install.go +2 -0
  38. package/engine/internal/install/install_test.go +3 -3
  39. package/engine/internal/iohooks/detach_unix.go +1 -1
  40. package/engine/internal/iohooks/iohooks.go +8 -8
  41. package/engine/internal/lib/adoption.go +1 -1
  42. package/engine/internal/lib/analyze.go +15 -15
  43. package/engine/internal/lib/archivesearch.go +3 -3
  44. package/engine/internal/lib/budget.go +3 -3
  45. package/engine/internal/lib/buildreadiness.go +6 -6
  46. package/engine/internal/lib/checkacceptance.go +10 -10
  47. package/engine/internal/lib/closeout.go +5 -5
  48. package/engine/internal/lib/conventions.go +3 -3
  49. package/engine/internal/lib/coverage.go +4 -4
  50. package/engine/internal/lib/doubtcoverage.go +9 -9
  51. package/engine/internal/lib/evidencefresh.go +6 -6
  52. package/engine/internal/lib/extensions.go +9 -9
  53. package/engine/internal/lib/footprint.go +13 -13
  54. package/engine/internal/lib/jsonout.go +2 -2
  55. package/engine/internal/lib/lanes.go +2 -2
  56. package/engine/internal/lib/learnings.go +9 -9
  57. package/engine/internal/lib/ledger.go +8 -8
  58. package/engine/internal/lib/ledger_test.go +5 -5
  59. package/engine/internal/lib/mutationgate.go +4 -4
  60. package/engine/internal/lib/overrides.go +9 -9
  61. package/engine/internal/lib/overrides_test.go +2 -2
  62. package/engine/internal/lib/packageexistence.go +732 -55
  63. package/engine/internal/lib/packageexistence_test.go +343 -0
  64. package/engine/internal/lib/preamble.go +6 -6
  65. package/engine/internal/lib/progress.go +5 -5
  66. package/engine/internal/lib/reconcile.go +80 -20
  67. package/engine/internal/lib/reconcile_test.go +13 -5
  68. package/engine/internal/lib/resolve.go +3 -3
  69. package/engine/internal/lib/reviewerstats.go +2 -2
  70. package/engine/internal/lib/reviewintegrity.go +13 -13
  71. package/engine/internal/lib/reviewintegrity_test.go +6 -6
  72. package/engine/internal/lib/runbook.go +1 -1
  73. package/engine/internal/lib/session.go +1 -1
  74. package/engine/internal/lib/session_test.go +2 -2
  75. package/engine/internal/lib/specparse.go +4 -4
  76. package/engine/internal/lib/specskeleton.go +2 -2
  77. package/engine/internal/lib/specvalidate.go +13 -13
  78. package/engine/internal/lib/stuck.go +13 -13
  79. package/engine/internal/lib/templates/conventions_ledger_header.md +1 -1
  80. package/engine/internal/lib/templates/conventions_orient_header.txt +1 -1
  81. package/engine/internal/lib/testintegrity.go +9 -9
  82. package/engine/internal/lib/tickafk.go +4 -4
  83. package/engine/internal/lib/util.go +1 -1
  84. package/engine/internal/migrate/migrate.go +2 -2
  85. package/engine/internal/migrate/migrate_test.go +1 -0
  86. package/engine/internal/orient/firstrun.go +8 -8
  87. package/engine/internal/orient/orient.go +5 -5
  88. package/engine/internal/state/concurrency_test.go +4 -4
  89. package/engine/internal/state/feature.go +6 -6
  90. package/engine/internal/state/lock_unix.go +1 -1
  91. package/engine/internal/state/schema.go +1 -1
  92. package/engine/internal/state/snapshot.go +2 -2
  93. package/engine/internal/state/write.go +1 -1
  94. package/engine/internal/version/version.go +1 -1
  95. package/engine/main.go +5 -5
  96. package/engine/subagent_orient_context.txt +4 -4
  97. package/engine/testdata/golden/TestParityA1Guard/source-edit-enforce-denies.golden +1 -1
  98. package/engine/testdata/golden/TestParityAnalyze/slug=covered.golden +2 -2
  99. package/engine/testdata/golden/TestParityAnalyze/slug=dangling.golden +3 -3
  100. package/engine/testdata/golden/TestParityAnalyze/slug=noac.golden +2 -2
  101. package/engine/testdata/golden/TestParityAnalyze/slug=order.golden +4 -4
  102. package/engine/testdata/golden/TestParityAnalyze/slug=orphan.golden +3 -3
  103. package/engine/testdata/golden/TestParityAnalyze/slug=uncovered.golden +3 -3
  104. package/engine/testdata/golden/TestParityBudget/extra-md.golden +1 -1
  105. package/engine/testdata/golden/TestParityBudget/over-advisory.golden +1 -1
  106. package/engine/testdata/golden/TestParityBudget/over-strict.golden +1 -1
  107. package/engine/testdata/golden/TestParityBuildReadiness/arg=approved.golden +1 -1
  108. package/engine/testdata/golden/TestParityBuildReadiness/arg=emptystatus.golden +1 -1
  109. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailhash.golden +1 -1
  110. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailpipe.golden +1 -1
  111. package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-ok.golden +1 -1
  112. package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-ok.golden +1 -1
  113. package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +1 -1
  114. package/engine/testdata/golden/TestParityCoverage/arg=speconly.golden +2 -2
  115. package/engine/testdata/golden/TestParityCursor/bare.golden +1 -1
  116. package/engine/testdata/golden/TestParityCursor/full-afk.golden +1 -1
  117. package/engine/testdata/golden/TestParityCursor/full-hitl.golden +1 -1
  118. package/engine/testdata/golden/TestParityCursor/red.golden +2 -2
  119. package/engine/testdata/golden/TestParityCursor/zerogates.golden +1 -1
  120. package/engine/testdata/golden/TestParityDoubtCoverage/arg=ghost.golden +1 -1
  121. package/engine/testdata/golden/TestParityDoubtCoverage/arg=inline.golden +1 -1
  122. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing-inline.golden +1 -1
  123. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing.golden +1 -1
  124. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nodoubt.golden +1 -1
  125. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nolog.golden +1 -1
  126. package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +1 -1
  127. package/engine/testdata/golden/TestParityLearnings/mine.golden +1 -1
  128. package/engine/testdata/golden/TestParityLearnings/nudge.golden +1 -1
  129. package/engine/testdata/golden/TestParityMutationGate/active-slug.golden +1 -1
  130. package/engine/testdata/golden/TestParityMutationGate/explicit-slug.golden +1 -1
  131. package/engine/testdata/golden/TestParityPackageExistence/declared.golden +1 -1
  132. package/engine/testdata/golden/TestParityPackageExistence/default-import-subpath.golden +1 -1
  133. package/engine/testdata/golden/TestParityReconcile/check-clean.golden +1 -1
  134. package/engine/testdata/golden/TestParityRedwatch/fail-writes-red.golden +1 -1
  135. package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +1 -1
  136. package/engine/testdata/golden/TestParityResolve/batch.golden +1 -1
  137. package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-devrites-agent-denies.golden +1 -1
  138. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-git-commit.golden +1 -1
  139. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-mutating.golden +1 -1
  140. package/engine/testdata/golden/TestParitySpecValidate/arg=flat.golden +1 -1
  141. package/engine/testdata/golden/TestParitySpecValidate/arg=valid/spec.md.golden +1 -1
  142. package/engine/testdata/golden/TestParitySpecValidate/arg=valid.golden +1 -1
  143. package/engine/testdata/golden/TestParityStuckCheck/custom-window-2.golden +1 -1
  144. package/engine/testdata/golden/TestParityStuckCheck/dominant.golden +1 -1
  145. package/engine/testdata/golden/TestParityStuckCheck/few.golden +1 -1
  146. package/engine/testdata/golden/TestParityStuckCheck/ghost.golden +1 -1
  147. package/engine/testdata/golden/TestParityStuckCheck/identical.golden +1 -1
  148. package/engine/testdata/golden/TestParityStuckCheck/nolog.golden +1 -1
  149. package/engine/testdata/golden/TestParityStuckCheck/pingpong.golden +1 -1
  150. package/engine/testdata/golden/TestParityStuckCheck/varied.golden +1 -1
  151. package/engine/testdata/golden/TestParityStuckCheck/window-04-identical.golden +1 -1
  152. package/engine/testdata/golden/TestParityStuckCheck/window-2.5-varied4.golden +1 -1
  153. package/engine/testdata/golden/TestParityStuckCheck/window-4x-varied4.golden +1 -1
  154. package/engine/testdata/golden/TestParityStuckCheck/window-leadspace-varied4.golden +1 -1
  155. package/engine/testdata/golden/TestParityStuckCheck/window-plus4-identical.golden +1 -1
  156. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent-subagent-type-key.golden +1 -1
  157. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent.golden +1 -1
  158. package/engine/testdata/golden/TestParityTestIntegrity/clean.golden +1 -1
  159. package/engine/testdata/golden/TestParityTickAfk/missingField.golden +1 -1
  160. package/engine/testdata/golden/TestParityTickAfk/none.golden +1 -1
  161. package/engine/testdata/golden/TestParityWrightScope/out-of-scope-enforce-denies.golden +1 -1
  162. package/engine/testdata/golden/TestSpecSkeleton/missing-some.golden +1 -1
  163. package/engine/testdata/golden/TestSpecSkeleton/present-all.golden +1 -1
  164. package/engine/tests/adr_0004_required_by_phase_test.go +2 -2
  165. package/engine/tests/adr_0006_clock_seam_test.go +1 -1
  166. package/engine/tests/budget_test.go +1 -1
  167. package/engine/tests/canonical_ac_ids_test.go +2 -2
  168. package/engine/tests/cli_test.go +1 -1
  169. package/engine/tests/concurrency_cli_test.go +1 -1
  170. package/engine/tests/gate_test.go +4 -4
  171. package/engine/tests/hook_test.go +3 -3
  172. package/engine/tests/hooks_io_test.go +1 -1
  173. package/engine/tests/lib_parity_test.go +29 -29
  174. package/engine/tests/meta_test.go +2 -2
  175. package/engine/tests/parity_closeout_test.go +1 -1
  176. package/engine/tests/parity_learnings_test.go +2 -2
  177. package/engine/tests/parity_mutationgate_test.go +2 -2
  178. package/engine/tests/parity_resolve_test.go +1 -1
  179. package/engine/tests/parity_test.go +3 -3
  180. package/engine/tests/parity_tickafk_test.go +1 -1
  181. package/engine/validatepack.go +5 -5
  182. package/engine/validatepackskills.go +9 -9
  183. package/pack/.claude/agents/devrites-code-reviewer.md +21 -22
  184. package/pack/.claude/agents/devrites-devex-reviewer.md +17 -17
  185. package/pack/.claude/agents/devrites-doubt-reviewer.md +6 -6
  186. package/pack/.claude/agents/devrites-forge-judge.md +26 -26
  187. package/pack/.claude/agents/devrites-frontend-reviewer.md +17 -17
  188. package/pack/.claude/agents/devrites-performance-reviewer.md +19 -18
  189. package/pack/.claude/agents/devrites-plan-reviewer.md +29 -27
  190. package/pack/.claude/agents/devrites-retrospector.md +19 -19
  191. package/pack/.claude/agents/devrites-security-auditor.md +15 -15
  192. package/pack/.claude/agents/devrites-simplifier-reviewer.md +14 -14
  193. package/pack/.claude/agents/devrites-slice-wright.md +52 -51
  194. package/pack/.claude/agents/devrites-spec-reviewer.md +11 -11
  195. package/pack/.claude/agents/devrites-strategy-reviewer.md +21 -21
  196. package/pack/.claude/agents/devrites-test-analyst.md +13 -13
  197. package/pack/.claude/settings.json +1 -1
  198. package/pack/.claude/skills/devrites-api-interface/SKILL.md +12 -12
  199. package/pack/.claude/skills/devrites-audit/SKILL.md +7 -7
  200. package/pack/.claude/skills/devrites-browser-proof/SKILL.md +16 -16
  201. package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  202. package/pack/.claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  203. package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  204. package/pack/.claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  205. package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  206. package/pack/.claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  207. package/pack/.claude/skills/devrites-doubt/SKILL.md +14 -14
  208. package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  209. package/pack/.claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  210. package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  211. package/pack/.claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  212. package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  213. package/pack/.claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  214. package/pack/.claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  215. package/pack/.claude/skills/devrites-interview/SKILL.md +27 -27
  216. package/pack/.claude/skills/devrites-lib/SKILL.md +25 -27
  217. package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  218. package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  219. package/pack/.claude/skills/devrites-lib/reference/reply-contract.md +11 -3
  220. package/pack/.claude/skills/devrites-lib/reference/standards/README.md +10 -10
  221. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  222. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  223. package/pack/.claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  224. package/pack/.claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  225. package/pack/.claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  226. package/pack/.claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  227. package/pack/.claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  228. package/pack/.claude/skills/devrites-lib/reference/standards/core.md +23 -23
  229. package/pack/.claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  230. package/pack/.claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  231. package/pack/.claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  232. package/pack/.claude/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  233. package/pack/.claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  234. package/pack/.claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  235. package/pack/.claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  236. package/pack/.claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  237. package/pack/.claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  238. package/pack/.claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  239. package/pack/.claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  240. package/pack/.claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  241. package/pack/.claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  242. package/pack/.claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  243. package/pack/.claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  244. package/pack/.claude/skills/devrites-lib/reference/standards/security.md +30 -30
  245. package/pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  246. package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  247. package/pack/.claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  248. package/pack/.claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  249. package/pack/.claude/skills/devrites-prose-craft/SKILL.md +5 -5
  250. package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  251. package/pack/.claude/skills/devrites-source-driven/SKILL.md +8 -8
  252. package/pack/.claude/skills/devrites-ux-shape/SKILL.md +33 -33
  253. package/pack/.claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  254. package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  255. package/pack/.claude/skills/rite/SKILL.md +13 -14
  256. package/pack/.claude/skills/rite/reference/menu.md +10 -10
  257. package/pack/.claude/skills/rite-adopt/SKILL.md +17 -18
  258. package/pack/.claude/skills/rite-adopt/reference/adoption.md +9 -9
  259. package/pack/.claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  260. package/pack/.claude/skills/rite-autocomplete/SKILL.md +14 -14
  261. package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  262. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +7 -7
  263. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  264. package/pack/.claude/skills/rite-build/SKILL.md +22 -22
  265. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +9 -9
  266. package/pack/.claude/skills/rite-build/reference/anti-patterns.md +6 -6
  267. package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  268. package/pack/.claude/skills/rite-build/reference/checkpoint.md +8 -8
  269. package/pack/.claude/skills/rite-build/reference/evidence-standard.md +1 -1
  270. package/pack/.claude/skills/rite-build/reference/forge.md +28 -29
  271. package/pack/.claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  272. package/pack/.claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  273. package/pack/.claude/skills/rite-build/reference/output.md +1 -1
  274. package/pack/.claude/skills/rite-build/reference/phase-contract.md +44 -44
  275. package/pack/.claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  276. package/pack/.claude/skills/rite-build/reference/tdd.md +6 -6
  277. package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  278. package/pack/.claude/skills/rite-converge/SKILL.md +17 -17
  279. package/pack/.claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  280. package/pack/.claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  281. package/pack/.claude/skills/rite-customize/SKILL.md +2 -2
  282. package/pack/.claude/skills/rite-define/SKILL.md +25 -25
  283. package/pack/.claude/skills/rite-define/reference/anti-patterns.md +5 -5
  284. package/pack/.claude/skills/rite-define/reference/gates.md +13 -13
  285. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  286. package/pack/.claude/skills/rite-doctor/SKILL.md +11 -11
  287. package/pack/.claude/skills/rite-dogfood/SKILL.md +2 -2
  288. package/pack/.claude/skills/rite-explain/SKILL.md +22 -22
  289. package/pack/.claude/skills/rite-explain/reference/intake.md +16 -16
  290. package/pack/.claude/skills/rite-frame/SKILL.md +22 -22
  291. package/pack/.claude/skills/rite-frame/reference/failure-modes.md +13 -13
  292. package/pack/.claude/skills/rite-handoff/SKILL.md +12 -12
  293. package/pack/.claude/skills/rite-learn/SKILL.md +23 -23
  294. package/pack/.claude/skills/rite-plan/SKILL.md +21 -21
  295. package/pack/.claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  296. package/pack/.claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  297. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  298. package/pack/.claude/skills/rite-plan/reference/slicing.md +9 -9
  299. package/pack/.claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  300. package/pack/.claude/skills/rite-polish/SKILL.md +11 -11
  301. package/pack/.claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  302. package/pack/.claude/skills/rite-polish/reference/backend-polish.md +13 -13
  303. package/pack/.claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  304. package/pack/.claude/skills/rite-polish/reference/code.md +26 -26
  305. package/pack/.claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  306. package/pack/.claude/skills/rite-polish/reference/ui.md +23 -23
  307. package/pack/.claude/skills/rite-pov/SKILL.md +3 -3
  308. package/pack/.claude/skills/rite-pr-feedback/SKILL.md +2 -2
  309. package/pack/.claude/skills/rite-pressure-test/SKILL.md +14 -14
  310. package/pack/.claude/skills/rite-prototype/SKILL.md +13 -13
  311. package/pack/.claude/skills/rite-prove/SKILL.md +17 -17
  312. package/pack/.claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  313. package/pack/.claude/skills/rite-prove/reference/browser-proof.md +2 -2
  314. package/pack/.claude/skills/rite-prove/reference/failure-triage.md +4 -4
  315. package/pack/.claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  316. package/pack/.claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  317. package/pack/.claude/skills/rite-quick/SKILL.md +22 -22
  318. package/pack/.claude/skills/rite-resolve/SKILL.md +18 -18
  319. package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  320. package/pack/.claude/skills/rite-review/SKILL.md +34 -34
  321. package/pack/.claude/skills/rite-review/reference/anti-patterns.md +4 -4
  322. package/pack/.claude/skills/rite-review/reference/cognitive-load.md +22 -22
  323. package/pack/.claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  324. package/pack/.claude/skills/rite-review/reference/five-axis-review.md +8 -8
  325. package/pack/.claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  326. package/pack/.claude/skills/rite-review/reference/performance-checklist.md +14 -14
  327. package/pack/.claude/skills/rite-review/reference/security-review.md +9 -9
  328. package/pack/.claude/skills/rite-seal/SKILL.md +26 -26
  329. package/pack/.claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  330. package/pack/.claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  331. package/pack/.claude/skills/rite-seal/reference/final-evidence.md +9 -9
  332. package/pack/.claude/skills/rite-seal/reference/go-no-go.md +9 -9
  333. package/pack/.claude/skills/rite-seal/reference/phase-contract.md +43 -43
  334. package/pack/.claude/skills/rite-ship/SKILL.md +12 -12
  335. package/pack/.claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  336. package/pack/.claude/skills/rite-ship/reference/close-out.md +2 -2
  337. package/pack/.claude/skills/rite-ship/reference/design-memory.md +22 -22
  338. package/pack/.claude/skills/rite-ship/reference/git-ship.md +10 -10
  339. package/pack/.claude/skills/rite-ship/reference/ledger.md +9 -9
  340. package/pack/.claude/skills/rite-ship/reference/rollout.md +11 -11
  341. package/pack/.claude/skills/rite-ship/reference/ship-template.md +1 -1
  342. package/pack/.claude/skills/rite-spec/SKILL.md +45 -45
  343. package/pack/.claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  344. package/pack/.claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  345. package/pack/.claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  346. package/pack/.claude/skills/rite-spec/reference/investigation.md +21 -21
  347. package/pack/.claude/skills/rite-spec/reference/question-protocol.md +9 -9
  348. package/pack/.claude/skills/rite-spec/reference/references-intake.md +8 -8
  349. package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  350. package/pack/.claude/skills/rite-status/SKILL.md +13 -13
  351. package/pack/.claude/skills/rite-temper/SKILL.md +29 -29
  352. package/pack/.claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  353. package/pack/.claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  354. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +16 -16
  355. package/pack/.claude/skills/rite-temper/reference/significance.md +10 -10
  356. package/pack/.claude/skills/rite-temper/reference/strategy-template.md +14 -14
  357. package/pack/.claude/skills/rite-vet/SKILL.md +31 -31
  358. package/pack/.claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  359. package/pack/.claude/skills/rite-vet/reference/artifacts.md +10 -10
  360. package/pack/.claude/skills/rite-vet/reference/cross-model.md +9 -9
  361. package/pack/.claude/skills/rite-vet/reference/depth.md +14 -14
  362. package/pack/.claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  363. package/pack/.claude/skills/rite-vet/reference/review-axes.md +28 -28
  364. package/pack/.claude/skills/rite-zoom-out/SKILL.md +18 -18
  365. package/pack/generated/claude/agents/devrites-code-reviewer.md +21 -22
  366. package/pack/generated/claude/agents/devrites-devex-reviewer.md +17 -17
  367. package/pack/generated/claude/agents/devrites-doubt-reviewer.md +6 -6
  368. package/pack/generated/claude/agents/devrites-forge-judge.md +26 -26
  369. package/pack/generated/claude/agents/devrites-frontend-reviewer.md +17 -17
  370. package/pack/generated/claude/agents/devrites-performance-reviewer.md +19 -18
  371. package/pack/generated/claude/agents/devrites-plan-reviewer.md +29 -27
  372. package/pack/generated/claude/agents/devrites-retrospector.md +19 -19
  373. package/pack/generated/claude/agents/devrites-security-auditor.md +15 -15
  374. package/pack/generated/claude/agents/devrites-simplifier-reviewer.md +14 -14
  375. package/pack/generated/claude/agents/devrites-slice-wright.md +52 -51
  376. package/pack/generated/claude/agents/devrites-spec-reviewer.md +11 -11
  377. package/pack/generated/claude/agents/devrites-strategy-reviewer.md +21 -21
  378. package/pack/generated/claude/agents/devrites-test-analyst.md +13 -13
  379. package/pack/generated/claude/settings.json +1 -1
  380. package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +12 -12
  381. package/pack/generated/claude/skills/devrites-audit/SKILL.md +7 -7
  382. package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +16 -16
  383. package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  384. package/pack/generated/claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  385. package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  386. package/pack/generated/claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  387. package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  388. package/pack/generated/claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  389. package/pack/generated/claude/skills/devrites-doubt/SKILL.md +14 -14
  390. package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  391. package/pack/generated/claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  392. package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  393. package/pack/generated/claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  394. package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  395. package/pack/generated/claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  396. package/pack/generated/claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  397. package/pack/generated/claude/skills/devrites-interview/SKILL.md +27 -27
  398. package/pack/generated/claude/skills/devrites-lib/SKILL.md +25 -27
  399. package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  400. package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  401. package/pack/generated/claude/skills/devrites-lib/reference/reply-contract.md +11 -3
  402. package/pack/generated/claude/skills/devrites-lib/reference/standards/README.md +10 -10
  403. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  404. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  405. package/pack/generated/claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  406. package/pack/generated/claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  407. package/pack/generated/claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  408. package/pack/generated/claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  409. package/pack/generated/claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  410. package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +23 -23
  411. package/pack/generated/claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  412. package/pack/generated/claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  413. package/pack/generated/claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  414. package/pack/generated/claude/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  415. package/pack/generated/claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  416. package/pack/generated/claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  417. package/pack/generated/claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  418. package/pack/generated/claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  419. package/pack/generated/claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  420. package/pack/generated/claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  421. package/pack/generated/claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  422. package/pack/generated/claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  423. package/pack/generated/claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  424. package/pack/generated/claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  425. package/pack/generated/claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  426. package/pack/generated/claude/skills/devrites-lib/reference/standards/security.md +30 -30
  427. package/pack/generated/claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  428. package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  429. package/pack/generated/claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  430. package/pack/generated/claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  431. package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +5 -5
  432. package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  433. package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +8 -8
  434. package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +33 -33
  435. package/pack/generated/claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  436. package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  437. package/pack/generated/claude/skills/rite/SKILL.md +13 -14
  438. package/pack/generated/claude/skills/rite/reference/menu.md +10 -10
  439. package/pack/generated/claude/skills/rite-adopt/SKILL.md +17 -18
  440. package/pack/generated/claude/skills/rite-adopt/reference/adoption.md +9 -9
  441. package/pack/generated/claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  442. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +14 -14
  443. package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  444. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +7 -7
  445. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  446. package/pack/generated/claude/skills/rite-build/SKILL.md +22 -22
  447. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +9 -9
  448. package/pack/generated/claude/skills/rite-build/reference/anti-patterns.md +6 -6
  449. package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  450. package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +8 -8
  451. package/pack/generated/claude/skills/rite-build/reference/evidence-standard.md +1 -1
  452. package/pack/generated/claude/skills/rite-build/reference/forge.md +28 -29
  453. package/pack/generated/claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  454. package/pack/generated/claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  455. package/pack/generated/claude/skills/rite-build/reference/output.md +1 -1
  456. package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +44 -44
  457. package/pack/generated/claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  458. package/pack/generated/claude/skills/rite-build/reference/tdd.md +6 -6
  459. package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  460. package/pack/generated/claude/skills/rite-converge/SKILL.md +17 -17
  461. package/pack/generated/claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  462. package/pack/generated/claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  463. package/pack/generated/claude/skills/rite-customize/SKILL.md +2 -2
  464. package/pack/generated/claude/skills/rite-define/SKILL.md +25 -25
  465. package/pack/generated/claude/skills/rite-define/reference/anti-patterns.md +5 -5
  466. package/pack/generated/claude/skills/rite-define/reference/gates.md +13 -13
  467. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  468. package/pack/generated/claude/skills/rite-doctor/SKILL.md +11 -11
  469. package/pack/generated/claude/skills/rite-dogfood/SKILL.md +2 -2
  470. package/pack/generated/claude/skills/rite-explain/SKILL.md +22 -22
  471. package/pack/generated/claude/skills/rite-explain/reference/intake.md +16 -16
  472. package/pack/generated/claude/skills/rite-frame/SKILL.md +22 -22
  473. package/pack/generated/claude/skills/rite-frame/reference/failure-modes.md +13 -13
  474. package/pack/generated/claude/skills/rite-handoff/SKILL.md +12 -12
  475. package/pack/generated/claude/skills/rite-learn/SKILL.md +23 -23
  476. package/pack/generated/claude/skills/rite-plan/SKILL.md +21 -21
  477. package/pack/generated/claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  478. package/pack/generated/claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  479. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  480. package/pack/generated/claude/skills/rite-plan/reference/slicing.md +9 -9
  481. package/pack/generated/claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  482. package/pack/generated/claude/skills/rite-polish/SKILL.md +11 -11
  483. package/pack/generated/claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  484. package/pack/generated/claude/skills/rite-polish/reference/backend-polish.md +13 -13
  485. package/pack/generated/claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  486. package/pack/generated/claude/skills/rite-polish/reference/code.md +26 -26
  487. package/pack/generated/claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  488. package/pack/generated/claude/skills/rite-polish/reference/ui.md +23 -23
  489. package/pack/generated/claude/skills/rite-pov/SKILL.md +3 -3
  490. package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +2 -2
  491. package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +14 -14
  492. package/pack/generated/claude/skills/rite-prototype/SKILL.md +13 -13
  493. package/pack/generated/claude/skills/rite-prove/SKILL.md +17 -17
  494. package/pack/generated/claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  495. package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +2 -2
  496. package/pack/generated/claude/skills/rite-prove/reference/failure-triage.md +4 -4
  497. package/pack/generated/claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  498. package/pack/generated/claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  499. package/pack/generated/claude/skills/rite-quick/SKILL.md +22 -22
  500. package/pack/generated/claude/skills/rite-resolve/SKILL.md +18 -18
  501. package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  502. package/pack/generated/claude/skills/rite-review/SKILL.md +34 -34
  503. package/pack/generated/claude/skills/rite-review/reference/anti-patterns.md +4 -4
  504. package/pack/generated/claude/skills/rite-review/reference/cognitive-load.md +22 -22
  505. package/pack/generated/claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  506. package/pack/generated/claude/skills/rite-review/reference/five-axis-review.md +8 -8
  507. package/pack/generated/claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  508. package/pack/generated/claude/skills/rite-review/reference/performance-checklist.md +14 -14
  509. package/pack/generated/claude/skills/rite-review/reference/security-review.md +9 -9
  510. package/pack/generated/claude/skills/rite-seal/SKILL.md +26 -26
  511. package/pack/generated/claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  512. package/pack/generated/claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  513. package/pack/generated/claude/skills/rite-seal/reference/final-evidence.md +9 -9
  514. package/pack/generated/claude/skills/rite-seal/reference/go-no-go.md +9 -9
  515. package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +43 -43
  516. package/pack/generated/claude/skills/rite-ship/SKILL.md +12 -12
  517. package/pack/generated/claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  518. package/pack/generated/claude/skills/rite-ship/reference/close-out.md +2 -2
  519. package/pack/generated/claude/skills/rite-ship/reference/design-memory.md +22 -22
  520. package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +10 -10
  521. package/pack/generated/claude/skills/rite-ship/reference/ledger.md +9 -9
  522. package/pack/generated/claude/skills/rite-ship/reference/rollout.md +11 -11
  523. package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +1 -1
  524. package/pack/generated/claude/skills/rite-spec/SKILL.md +45 -45
  525. package/pack/generated/claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  526. package/pack/generated/claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  527. package/pack/generated/claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  528. package/pack/generated/claude/skills/rite-spec/reference/investigation.md +21 -21
  529. package/pack/generated/claude/skills/rite-spec/reference/question-protocol.md +9 -9
  530. package/pack/generated/claude/skills/rite-spec/reference/references-intake.md +8 -8
  531. package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  532. package/pack/generated/claude/skills/rite-status/SKILL.md +13 -13
  533. package/pack/generated/claude/skills/rite-temper/SKILL.md +29 -29
  534. package/pack/generated/claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  535. package/pack/generated/claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  536. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +16 -16
  537. package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -10
  538. package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +14 -14
  539. package/pack/generated/claude/skills/rite-vet/SKILL.md +31 -31
  540. package/pack/generated/claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  541. package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +10 -10
  542. package/pack/generated/claude/skills/rite-vet/reference/cross-model.md +9 -9
  543. package/pack/generated/claude/skills/rite-vet/reference/depth.md +14 -14
  544. package/pack/generated/claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  545. package/pack/generated/claude/skills/rite-vet/reference/review-axes.md +28 -28
  546. package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +18 -18
  547. package/pack/generated/codex/agents/devrites-code-reviewer.toml +21 -22
  548. package/pack/generated/codex/agents/devrites-devex-reviewer.toml +17 -17
  549. package/pack/generated/codex/agents/devrites-doubt-reviewer.toml +6 -6
  550. package/pack/generated/codex/agents/devrites-forge-judge.toml +26 -26
  551. package/pack/generated/codex/agents/devrites-frontend-reviewer.toml +17 -17
  552. package/pack/generated/codex/agents/devrites-performance-reviewer.toml +19 -18
  553. package/pack/generated/codex/agents/devrites-plan-reviewer.toml +29 -27
  554. package/pack/generated/codex/agents/devrites-retrospector.toml +19 -19
  555. package/pack/generated/codex/agents/devrites-security-auditor.toml +15 -15
  556. package/pack/generated/codex/agents/devrites-simplifier-reviewer.toml +14 -14
  557. package/pack/generated/codex/agents/devrites-slice-wright.toml +52 -51
  558. package/pack/generated/codex/agents/devrites-spec-reviewer.toml +11 -11
  559. package/pack/generated/codex/agents/devrites-strategy-reviewer.toml +21 -21
  560. package/pack/generated/codex/agents/devrites-test-analyst.toml +13 -13
  561. package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +15 -15
  562. package/pack/generated/codex/skills/devrites-audit/SKILL.md +10 -10
  563. package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +19 -19
  564. package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +17 -17
  565. package/pack/generated/codex/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  566. package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  567. package/pack/generated/codex/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  568. package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  569. package/pack/generated/codex/skills/devrites-debug-recovery/reference/trace.md +4 -4
  570. package/pack/generated/codex/skills/devrites-doubt/SKILL.md +17 -17
  571. package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +20 -20
  572. package/pack/generated/codex/skills/devrites-frontend-craft/reference/craft.md +17 -17
  573. package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  574. package/pack/generated/codex/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  575. package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  576. package/pack/generated/codex/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  577. package/pack/generated/codex/skills/devrites-frontend-craft/reference/shape.md +13 -13
  578. package/pack/generated/codex/skills/devrites-interview/SKILL.md +30 -30
  579. package/pack/generated/codex/skills/devrites-lib/SKILL.md +28 -30
  580. package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +5 -5
  581. package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  582. package/pack/generated/codex/skills/devrites-lib/reference/reply-contract.md +11 -3
  583. package/pack/generated/codex/skills/devrites-lib/reference/standards/README.md +10 -10
  584. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  585. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +37 -37
  586. package/pack/generated/codex/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  587. package/pack/generated/codex/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  588. package/pack/generated/codex/skills/devrites-lib/reference/standards/code-review.md +40 -40
  589. package/pack/generated/codex/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  590. package/pack/generated/codex/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  591. package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +23 -23
  592. package/pack/generated/codex/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  593. package/pack/generated/codex/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  594. package/pack/generated/codex/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  595. package/pack/generated/codex/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  596. package/pack/generated/codex/skills/devrites-lib/reference/standards/documentation.md +4 -4
  597. package/pack/generated/codex/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  598. package/pack/generated/codex/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  599. package/pack/generated/codex/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  600. package/pack/generated/codex/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  601. package/pack/generated/codex/skills/devrites-lib/reference/standards/hooks.md +3 -3
  602. package/pack/generated/codex/skills/devrites-lib/reference/standards/observability.md +15 -15
  603. package/pack/generated/codex/skills/devrites-lib/reference/standards/patterns.md +8 -8
  604. package/pack/generated/codex/skills/devrites-lib/reference/standards/performance.md +5 -5
  605. package/pack/generated/codex/skills/devrites-lib/reference/standards/principles.md +31 -31
  606. package/pack/generated/codex/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  607. package/pack/generated/codex/skills/devrites-lib/reference/standards/security.md +30 -30
  608. package/pack/generated/codex/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  609. package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  610. package/pack/generated/codex/skills/devrites-lib/reference/standards/testing.md +40 -40
  611. package/pack/generated/codex/skills/devrites-lib/reference/standards/tooling.md +26 -26
  612. package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +8 -8
  613. package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +9 -9
  614. package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +11 -11
  615. package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +36 -36
  616. package/pack/generated/codex/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  617. package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  618. package/pack/generated/codex/skills/rite/SKILL.md +16 -17
  619. package/pack/generated/codex/skills/rite/reference/menu.md +10 -10
  620. package/pack/generated/codex/skills/rite-adopt/SKILL.md +20 -21
  621. package/pack/generated/codex/skills/rite-adopt/reference/adoption.md +9 -9
  622. package/pack/generated/codex/skills/rite-adopt/reference/anti-patterns.md +6 -6
  623. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +17 -17
  624. package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  625. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +7 -7
  626. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  627. package/pack/generated/codex/skills/rite-build/SKILL.md +25 -25
  628. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +9 -9
  629. package/pack/generated/codex/skills/rite-build/reference/anti-patterns.md +6 -6
  630. package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  631. package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +8 -8
  632. package/pack/generated/codex/skills/rite-build/reference/evidence-standard.md +1 -1
  633. package/pack/generated/codex/skills/rite-build/reference/forge.md +28 -29
  634. package/pack/generated/codex/skills/rite-build/reference/frontend-trigger.md +2 -2
  635. package/pack/generated/codex/skills/rite-build/reference/one-slice-cycle.md +3 -3
  636. package/pack/generated/codex/skills/rite-build/reference/output.md +1 -1
  637. package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +44 -44
  638. package/pack/generated/codex/skills/rite-build/reference/spec-drift-guard.md +1 -1
  639. package/pack/generated/codex/skills/rite-build/reference/tdd.md +6 -6
  640. package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +23 -23
  641. package/pack/generated/codex/skills/rite-converge/SKILL.md +20 -20
  642. package/pack/generated/codex/skills/rite-converge/reference/anti-patterns.md +7 -7
  643. package/pack/generated/codex/skills/rite-converge/reference/convergence-assessment.md +14 -14
  644. package/pack/generated/codex/skills/rite-customize/SKILL.md +5 -5
  645. package/pack/generated/codex/skills/rite-define/SKILL.md +28 -28
  646. package/pack/generated/codex/skills/rite-define/reference/anti-patterns.md +5 -5
  647. package/pack/generated/codex/skills/rite-define/reference/gates.md +13 -13
  648. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  649. package/pack/generated/codex/skills/rite-doctor/SKILL.md +14 -14
  650. package/pack/generated/codex/skills/rite-dogfood/SKILL.md +5 -5
  651. package/pack/generated/codex/skills/rite-explain/SKILL.md +25 -25
  652. package/pack/generated/codex/skills/rite-explain/reference/intake.md +16 -16
  653. package/pack/generated/codex/skills/rite-frame/SKILL.md +25 -25
  654. package/pack/generated/codex/skills/rite-frame/reference/failure-modes.md +13 -13
  655. package/pack/generated/codex/skills/rite-handoff/SKILL.md +15 -15
  656. package/pack/generated/codex/skills/rite-learn/SKILL.md +26 -26
  657. package/pack/generated/codex/skills/rite-plan/SKILL.md +24 -24
  658. package/pack/generated/codex/skills/rite-plan/reference/anti-patterns.md +3 -3
  659. package/pack/generated/codex/skills/rite-plan/reference/dependency-graph.md +1 -1
  660. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +3 -3
  661. package/pack/generated/codex/skills/rite-plan/reference/slicing.md +9 -9
  662. package/pack/generated/codex/skills/rite-plan/reference/task-breakdown.md +3 -3
  663. package/pack/generated/codex/skills/rite-polish/SKILL.md +14 -14
  664. package/pack/generated/codex/skills/rite-polish/reference/anti-patterns.md +8 -8
  665. package/pack/generated/codex/skills/rite-polish/reference/backend-polish.md +13 -13
  666. package/pack/generated/codex/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  667. package/pack/generated/codex/skills/rite-polish/reference/code.md +26 -26
  668. package/pack/generated/codex/skills/rite-polish/reference/harden-checklist.md +31 -31
  669. package/pack/generated/codex/skills/rite-polish/reference/ui.md +23 -23
  670. package/pack/generated/codex/skills/rite-pov/SKILL.md +6 -6
  671. package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +5 -5
  672. package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +17 -17
  673. package/pack/generated/codex/skills/rite-prototype/SKILL.md +16 -16
  674. package/pack/generated/codex/skills/rite-prove/SKILL.md +20 -20
  675. package/pack/generated/codex/skills/rite-prove/reference/anti-patterns.md +4 -4
  676. package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +2 -2
  677. package/pack/generated/codex/skills/rite-prove/reference/failure-triage.md +4 -4
  678. package/pack/generated/codex/skills/rite-prove/reference/proof-ladder.md +6 -6
  679. package/pack/generated/codex/skills/rite-prove/reference/test-command-discovery.md +1 -1
  680. package/pack/generated/codex/skills/rite-quick/SKILL.md +25 -25
  681. package/pack/generated/codex/skills/rite-resolve/SKILL.md +21 -21
  682. package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +7 -7
  683. package/pack/generated/codex/skills/rite-review/SKILL.md +37 -37
  684. package/pack/generated/codex/skills/rite-review/reference/anti-patterns.md +4 -4
  685. package/pack/generated/codex/skills/rite-review/reference/cognitive-load.md +22 -22
  686. package/pack/generated/codex/skills/rite-review/reference/feature-scoped-review.md +2 -2
  687. package/pack/generated/codex/skills/rite-review/reference/five-axis-review.md +8 -8
  688. package/pack/generated/codex/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  689. package/pack/generated/codex/skills/rite-review/reference/performance-checklist.md +14 -14
  690. package/pack/generated/codex/skills/rite-review/reference/security-review.md +9 -9
  691. package/pack/generated/codex/skills/rite-seal/SKILL.md +29 -29
  692. package/pack/generated/codex/skills/rite-seal/reference/anti-patterns.md +8 -8
  693. package/pack/generated/codex/skills/rite-seal/reference/conventions-ledger.md +8 -8
  694. package/pack/generated/codex/skills/rite-seal/reference/final-evidence.md +9 -9
  695. package/pack/generated/codex/skills/rite-seal/reference/go-no-go.md +9 -9
  696. package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +43 -43
  697. package/pack/generated/codex/skills/rite-ship/SKILL.md +15 -15
  698. package/pack/generated/codex/skills/rite-ship/reference/anti-patterns.md +5 -5
  699. package/pack/generated/codex/skills/rite-ship/reference/close-out.md +2 -2
  700. package/pack/generated/codex/skills/rite-ship/reference/design-memory.md +22 -22
  701. package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +10 -10
  702. package/pack/generated/codex/skills/rite-ship/reference/ledger.md +9 -9
  703. package/pack/generated/codex/skills/rite-ship/reference/rollout.md +11 -11
  704. package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +1 -1
  705. package/pack/generated/codex/skills/rite-spec/SKILL.md +48 -48
  706. package/pack/generated/codex/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  707. package/pack/generated/codex/skills/rite-spec/reference/anti-patterns.md +6 -6
  708. package/pack/generated/codex/skills/rite-spec/reference/interview-patterns.md +3 -3
  709. package/pack/generated/codex/skills/rite-spec/reference/investigation.md +21 -21
  710. package/pack/generated/codex/skills/rite-spec/reference/question-protocol.md +9 -9
  711. package/pack/generated/codex/skills/rite-spec/reference/references-intake.md +8 -8
  712. package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +19 -19
  713. package/pack/generated/codex/skills/rite-status/SKILL.md +16 -16
  714. package/pack/generated/codex/skills/rite-temper/SKILL.md +32 -32
  715. package/pack/generated/codex/skills/rite-temper/reference/anti-patterns.md +11 -11
  716. package/pack/generated/codex/skills/rite-temper/reference/review-dimensions.md +20 -20
  717. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +16 -16
  718. package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -10
  719. package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +14 -14
  720. package/pack/generated/codex/skills/rite-vet/SKILL.md +34 -34
  721. package/pack/generated/codex/skills/rite-vet/reference/anti-patterns.md +14 -14
  722. package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +10 -10
  723. package/pack/generated/codex/skills/rite-vet/reference/cross-model.md +9 -9
  724. package/pack/generated/codex/skills/rite-vet/reference/depth.md +14 -14
  725. package/pack/generated/codex/skills/rite-vet/reference/eng-lenses.md +9 -9
  726. package/pack/generated/codex/skills/rite-vet/reference/review-axes.md +28 -28
  727. package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +21 -21
  728. package/package.json +2 -2
  729. package/scripts/build-binaries.sh +1 -1
  730. package/scripts/build-host-artifacts.sh +1 -1
  731. package/scripts/build-release-tarball.sh +1 -1
  732. package/scripts/check-cross-refs.py +8 -8
  733. package/scripts/check-invocation-integrity.py +4 -4
  734. package/scripts/check-no-global-writes.sh +2 -2
  735. package/scripts/check-reply-contract.sh +1 -1
  736. package/scripts/check-rule-uniqueness.sh +2 -2
  737. package/scripts/codex-generate.sh +5 -5
  738. package/scripts/devrites-detect.sh +33 -33
  739. package/scripts/eval-runner.py +7 -7
  740. package/scripts/grade-feature.sh +14 -14
  741. package/scripts/install-lib.sh +2 -2
  742. package/scripts/pin.sh +12 -12
  743. package/scripts/run-behavioral-evals.sh +12 -12
  744. package/scripts/run-evals.sh +1 -1
  745. package/scripts/run-outcome-evals.sh +12 -12
  746. package/scripts/scan-pack-security.py +4 -4
  747. package/scripts/scan-supply-chain-iocs.py +7 -7
  748. package/scripts/skills-inventory.mjs +21 -4
  749. package/scripts/sync-version.sh +2 -2
  750. package/scripts/validate-workflow-security.py +12 -6
  751. package/scripts/validate-workspace-schema.py +2 -2
  752. package/scripts/validate.sh +7 -7
@@ -1,4 +1,4 @@
1
- # $rite-adopt anti-patterns
1
+ # $rite-adopt: anti-patterns
2
2
 
3
3
  Start with the universal table in [`../../devrites-lib/reference/standards/anti-patterns.md`](../../devrites-lib/reference/standards/anti-patterns.md).
4
4
  Below are the rationalizations specific to onboarding an existing codebase.
@@ -7,13 +7,13 @@ Below are the rationalizations specific to onboarding an existing codebase.
7
7
 
8
8
  | Excuse | Rebuttal |
9
9
  |---|---|
10
- | "I'll improve this messy bit while I document it." | Adoption *documents* what exists; it changes nothing. A cleanup is the *next* feature through the normal lifecycle recording it as a drive-by here hides the baseline and balloons the diff. |
11
- | "This looks like the convention, so I'll seed it." | Seed only what the code *actually and consistently* follows. A guessed seed becomes a high-confidence-looking prior that steers the first slice wrong. Observe it in ≥2 places or leave it out. |
12
- | "I'll spec the ideal architecture, not the current one." | The spec's baseline is *current behavior*. Aspirations go in the next objective, not the baseline otherwise every later slice drifts against a spec that never matched reality. |
13
- | "Whole repo in one adopt." | Onboard the area you'll actually work in. A repo-wide adopt produces an unfocused spec and a ledger full of conventions no slice will touch. |
10
+ | "I'll improve this messy bit while I document it." | Adoption *documents* what exists; it changes nothing. A cleanup is the *next* feature through the normal lifecycle: recording it as a drive-by here hides the baseline and balloons the diff. |
11
+ | "This looks like the convention, so I'll seed it." | Seed only what the code *and consistently* follows. A guessed seed becomes a high-confidence-looking prior that steers the first slice wrong. Observe it in ≥2 places or leave it out. |
12
+ | "I'll spec the ideal architecture, not the current one." | The spec's baseline is *current behavior*. Aspirations go in the next objective, not the baseline: otherwise every later slice drifts against a spec that never matched reality. |
13
+ | "Whole repo in one adopt." | Onboard the area you'll work in. A repo-wide adopt produces an unfocused spec and a ledger full of conventions no slice will touch. |
14
14
 
15
15
  ## Red flags
16
16
 
17
17
  - A seeded convention with no concrete code location behind it.
18
18
  - `spec.md` describing behavior the code does **not** currently have (that's the next feature, not the baseline).
19
- - Editing source during adoption adoption writes `.devrites/` + the ledger, never project code.
19
+ - Editing source during adoption: adoption writes `.devrites/` + the ledger, never project code.
@@ -11,17 +11,17 @@ This is the Codex mirror of a DevRites skill. In Codex:
11
11
 
12
12
  - Load DevRites engineering standards from `.agents/skills/devrites-lib/reference/standards/`. Read `.agents/skills/devrites-lib/reference/standards/core.md` before workflow work, then load the other `.agents/skills/devrites-lib/reference/standards/*.md` files exactly when this skill asks for them.
13
13
  - Use the installed `devrites-engine` binary as the canonical runtime helper surface for orientation, gates, and state mutation.
14
- - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
- - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review** an inline pass shares the calling context and is weaker evidence.
14
+ - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here: Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
+ - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review**: an inline pass shares the calling context and is weaker evidence.
16
16
  - Codex project hooks are installed in `.codex/hooks.json`. Review and trust them with `/hooks` before relying on hook enforcement.
17
- - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
17
+ - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers: NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
18
18
 
19
19
 
20
- # $rite-autocomplete full lifecycle, unattended
20
+ # $rite-autocomplete: full lifecycle, unattended
21
21
 
22
22
  Drives every DevRites phase in order without stopping for discretionary input. The
23
- prompt may be vague autocomplete asks its clarifying questions **up front**, then
24
- runs to completion. It does **not** disable the safety gates: hard irreversible-risk,<!-- pack-scan-ignore: negated statement gates are NOT disabled -->
23
+ prompt may be vague: autocomplete asks its clarifying questions **up front**, then
24
+ runs to completion. It does **not** disable the safety gates: hard irreversible-risk,<!-- pack-scan-ignore: negated statement: gates are NOT disabled -->
25
25
  blocking / escalating gates, and any NO-GO still pause.
26
26
 
27
27
  ## Rules consulted (read on demand from `.agents/skills/devrites-lib/reference/standards/`)
@@ -30,15 +30,15 @@ blocking / escalating gates, and any NO-GO still pause.
30
30
  ## Operating rules
31
31
  - **One human window.** Clarifying questions are batched up front via
32
32
  `devrites-interview`. After that, discretionary decisions are made automatically and
33
- recorded in `decisions.md` not asked. See [reference/decision-policy.md](reference/decision-policy.md).
33
+ recorded in `decisions.md`, not asked. See [reference/decision-policy.md](reference/decision-policy.md).
34
34
  - **Safety gates are not bypassable.** AFK never auto-passes destructive migration /
35
35
  auth-authz change / public-API break / external-contract change / red tests; blocking
36
36
  and escalating gates and any open `gate: validating` always pause. `--ship` auto-confirms
37
- the **final** type-GO only nothing else. A change that violates a declared project
38
- principle (`.devrites/principles.md`) with no recorded exception pauses too autocomplete
37
+ the **final** type-GO only: nothing else. A change that violates a declared project
38
+ principle (`.devrites/principles.md`) with no recorded exception pauses too: autocomplete
39
39
  never grants a principle exception on its own (`principles.md`: that's a human decision).
40
40
  - **Loop budget = the plan's own slice count, not a fixed number.** After `$rite-vet`
41
- (not `$rite-define` vet may split or add slices, so the count isn't final until then),
41
+ (not `$rite-define`: vet may split or add slices, so the count isn't final until then),
42
42
  set the AFK budget to however many slices the plan has, so the loop builds exactly the
43
43
  task's slices and stops when they're done. `--max-slices N` is an OPTIONAL *lower* safety
44
44
  cap (partial / babysat run); omit it to run the whole plan. The budget is finite
@@ -46,13 +46,13 @@ blocking / escalating gates, and any NO-GO still pause.
46
46
  - **Best option, recorded.** For each discretionary choice, pick the option the relevant
47
47
  specialist / reviewer favours and record the rationale. Never silently coin-flip.
48
48
  - **Strategic review runs, but never auto-grows scope.** After `$rite-spec`, run `$rite-temper`
49
- (significance-gated it skips low-stakes specs in one line). Unattended it auto-applies only
49
+ (significance-gated; it skips low-stakes specs in one line). Unattended it auto-applies only
50
50
  `hold-rigor` + `reduce-to-MVP` (these never grow acceptance); **any `expand` is a blocking
51
51
  pause**, and irreversible-risk findings always pause. Autocomplete hardens and may *prune* the
52
52
  spec on its own; it never *expands* the build's scope without the human.
53
53
  - **Engineering review runs on every plan, but never auto-grows scope.** After `$rite-define`,
54
- run `$rite-vet` on **every** feature (depth scales a light pass on simple plans, full rigor on
55
- big/risky; never skipped). Unattended it auto-applies only *hardening* findings added test
54
+ run `$rite-vet` on **every** feature (depth scales: a light pass on simple plans, full rigor on
55
+ big/risky; never skipped). Unattended it auto-applies only *hardening* findings: added test
56
56
  requirements, error-handling / failure-mode coverage, tightened scope, reuse-over-rebuild,
57
57
  ordering / parallel-lane fixes (these never grow acceptance); **any finding that grows scope,
58
58
  adds a slice, or changes acceptance is a blocking pause**, and irreversible-risk findings always
@@ -64,11 +64,11 @@ blocking / escalating gates, and any NO-GO still pause.
64
64
  type-GO), `--max-slices N` (OPTIONAL *lower* safety cap for a partial run; default =
65
65
  the plan's slice count, i.e. run all planned slices).
66
66
  2. **Clarify up front.** If the idea is underspecified, run `devrites-interview` to
67
- ~95% confidence the only interactive window. If already clear, skip.
67
+ ~95% confidence: the only interactive window. If already clear, skip.
68
68
  3. **Arm AFK.** Write `.devrites/AFK` with `allow_gates: [advisory]`; set the slice budget
69
69
  from the plan's count after `$rite-vet` (the slice count is only final post-vet), or from
70
70
  an explicit `--max-slices` ([reference/loop.md](reference/loop.md)). validating / blocking / escalating +
71
- irreversible-risk still pause. Also `touch .devrites/CHECKPOINT` an unattended run is the
71
+ irreversible-risk still pause. Also `touch .devrites/CHECKPOINT`: an unattended run is the
72
72
  case checkpoint mode earns its keep, so each proven slice is committed local-only as
73
73
  crash-survivable `WIP` ([rite-build/reference/checkpoint.md](../rite-build/reference/checkpoint.md));
74
74
  `$rite-ship` collapses them into the one feature commit.
@@ -84,12 +84,12 @@ blocking / escalating gates, and any NO-GO still pause.
84
84
  type-GO. Without it, render the type-GO prompt and stop for the human.
85
85
 
86
86
  > **Mid-flight discipline.** When tempted to auto-pass a blocking gate "to keep moving",
87
- > answer a material question yourself instead of pausing, or run past red tests stop.
87
+ > answer a material question yourself instead of pausing, or run past red tests: stop.
88
88
  > Autonomy is for the routine path; the gates exist for everything else.
89
89
 
90
90
  ## Output
91
91
  A compact phase-by-phase log, then the final status. **Progress first for the final
92
- status** run `devrites-engine progress`, then use the shared typed states from
92
+ status**: run `devrites-engine progress`, then use the shared typed states from
93
93
  [`devrites-lib/reference/reply-contract.md`](../devrites-lib/reference/reply-contract.md):
94
94
  `Shipped`, `Stopped`, `Awaiting human`, `NO-GO`, or `GO`.
95
95
 
@@ -1,8 +1,8 @@
1
- # Decision policy how autocomplete "chooses the best option"
1
+ # Decision policy: how autocomplete "chooses the best option"
2
2
 
3
3
  Unattended ≠ careless. Every discretionary choice is made the way a senior engineer
4
4
  would, then **recorded** so the seal can audit it. The difference from interactive mode
5
- is only *who answers* a discretionary question not whether it's reasoned.
5
+ is only *who answers* a discretionary question, not whether it's reasoned.
6
6
 
7
7
  ## The rule
8
8
 
@@ -20,7 +20,7 @@ not pick the option that's merely easiest to implement.
20
20
 
21
21
  ## Defaults autocomplete may assume (record them)
22
22
 
23
- - Follow the project's existing conventions, components, and test commands always.
23
+ - Follow the project's existing conventions, components, and test commands: always.
24
24
  - Prefer the smallest vertical slice that proves the acceptance criterion.
25
25
  - Reuse → extend → build new, in that order (`coding-style.md`).
26
26
  - When two options are equivalent on the evidence, choose the lower-risk / more
@@ -29,7 +29,7 @@ not pick the option that's merely easiest to implement.
29
29
  ## When a choice is NOT autocomplete's to make
30
30
 
31
31
  If a discretionary choice would change **product behaviour, scope, data model, security
32
- posture, or acceptance criteria**, it is no longer discretionary it is a material
32
+ posture, or acceptance criteria**, it is no longer discretionary. It is a material
33
33
  question. Route it through the Spec Drift Guard / a `blocking` question and **stop**
34
34
  (see [stop-conditions.md](stop-conditions.md)). Autocomplete answers *how*, never
35
35
  *what to build* beyond what the up-front interview settled.
@@ -1,8 +1,8 @@
1
- # The autocomplete loop arm AFK, drive every phase
1
+ # The autocomplete loop: arm AFK, drive every phase
2
2
 
3
3
  Autocomplete is an orchestrator: it runs the existing `/rite-*` skills in order,
4
4
  exactly as a human would, but without stopping between them. It owns no workflow of
5
- its own the phases do the work; autocomplete sequences them and enforces stops.
5
+ its own: the phases do the work; autocomplete sequences them and enforces stops.
6
6
 
7
7
  ## Arm AFK
8
8
 
@@ -16,11 +16,11 @@ allow_gates: [advisory] # only advisory auto-handles; validating+ pause
16
16
  # caps how many run unattended (default = all the plan's slices).
17
17
  ```
18
18
 
19
- The budget is the plan's own slice count, not a fixed number so the loop builds exactly
19
+ The budget is the plan's own slice count, not a fixed number, so the loop builds exactly
20
20
  the task's slices and stops when they're done; `--max-slices N` only *lowers* it for a
21
21
  partial run. Arm the gate policy at step 3; write `max_slices` / `AFK slices remaining`
22
22
  **after `$rite-vet`** (it runs before the build loop and may split or add a slice, so the
23
- count isn't final until then vet runs on every plan here, so always set the budget after it).
23
+ count isn't final until then: vet runs on every plan here, so always set the budget after it).
24
24
 
25
25
  `allow_gates: [advisory]` is deliberate: an open `gate: validating` is merge-blocking
26
26
  at seal (`afk-hitl.md`), so autocomplete must *pause* on it rather than queue it and
@@ -30,7 +30,7 @@ then hit NO-GO. Widen `allow_gates` only if the caller explicitly asked.
30
30
 
31
31
  Run each by Reading its `SKILL.md` and executing that workflow. State flows through the
32
32
  workspace files (`state.md`, `tasks.md`, `evidence.md`, …), so each phase picks up where
33
- the last left off there is nothing to thread through chat.
33
+ the last left off. There is nothing to thread through chat.
34
34
 
35
35
  | Step | Phase | Loop / gate |
36
36
  |---|---|---|
@@ -38,7 +38,7 @@ the last left off — there is nothing to thread through chat.
38
38
  | 2 | `$rite-temper` | significance-gated strategic review; harden spec + write `strategy.md`. Skip low-stakes specs in one line. AFK: `hold-rigor` / `reduce-to-MVP` auto-apply; **any `expand` pauses (blocking)**; irreversible-risk pauses |
39
39
  | 3 | `$rite-define` | reads `strategy.md`; `plan.md` + `tasks.md`; record `Plan approved` |
40
40
  | 4 | `$rite-vet` | engineering plan review on **every** plan (light pass on simple plans, full on big/risky; never skipped); harden `plan.md` / `tasks.md` + write `eng-review.md` + `test-plan.md`. AFK: hardening / coverage findings auto-apply; **any scope-growing / acceptance-changing finding pauses (blocking)**; irreversible-risk pauses. Set the slice budget after this (vet may split a slice) |
41
- | 5 | `$rite-build` ×N | **loop** while any slice is `pending`; build one (the slice-wright reads `test-plan.md` for coverage), then run `devrites-engine tick-afk state.md` exit 3 (budget hit) ⇒ STOP |
41
+ | 5 | `$rite-build` ×N | **loop** while any slice is `pending`; build one (the slice-wright reads `test-plan.md` for coverage), then run `devrites-engine tick-afk state.md`: exit 3 (budget hit) ⇒ STOP |
42
42
  | 6 | `$rite-prove` | once all slices `built`; walks `test-plan.md`; on failure → `devrites-debug-recovery` within scope |
43
43
  | 7 | `$rite-polish` | re-verify after code edits (evidence must stay fresh) |
44
44
  | 8 | `$rite-review` | apply in-scope fixes; re-prove if code changed |
@@ -48,7 +48,7 @@ the last left off — there is nothing to thread through chat.
48
48
  ## Between phases
49
49
 
50
50
  - Re-read the active workspace before each phase (don't trust chat memory).
51
- - After a phase that edits code (build, polish, review), evidence may be stale let
51
+ - After a phase that edits code (build, polish, review), evidence may be stale: let
52
52
  the next gate re-prove rather than carrying a stale pass (see
53
53
  `.agents/skills/devrites-lib/reference/standards/development-workflow.md`).
54
54
  - Check [stop-conditions.md](stop-conditions.md) at every gate **before** advancing.
@@ -1,10 +1,10 @@
1
- # Stop conditions when autocomplete must pause for a human
1
+ # Stop conditions: when autocomplete must pause for a human
2
2
 
3
3
  Autonomy covers the routine path. These are the cases where autocomplete writes
4
4
  `state.md` (`Status: awaiting_human` or `blocked`), surfaces *why* + the single resume
5
5
  command, fires `notify` if set, and **stops**. None are bypassable by `--ship`.
6
6
 
7
- ## Always stop (irreversible-risk list from `afk-hitl.md`)
7
+ ## Always stop (irreversible-risk list: from `afk-hitl.md`)
8
8
 
9
9
  Regardless of `allow_gates` or `--ship`:
10
10
  - Destructive data migration (drop column/table, irreversible backfill).
@@ -23,8 +23,8 @@ Regardless of `allow_gates` or `--ship`:
23
23
 
24
24
  ## Stop on strategic-review scope expansion (`$rite-temper`)
25
25
 
26
- - `$rite-temper` choosing scope mode `expand` or otherwise **adding** any acceptance
27
- criterion to `spec.md` → synchronous pause, regardless of `allow_gates` / `--ship`.
26
+ - `$rite-temper` choosing scope mode `expand`, or otherwise **adding** any acceptance
27
+ criterion to `spec.md`: → synchronous pause, regardless of `allow_gates` / `--ship`.
28
28
  Autocomplete may auto-apply only `hold-rigor` and `reduce-to-MVP` (they harden / prune and
29
29
  never grow the build's scope); **growing scope unattended is never automatic**. A low-stakes
30
30
  spec that temper skips, or a `hold-rigor` / `reduce-to-MVP` run, does **not** pause.
@@ -35,13 +35,13 @@ Regardless of `allow_gates` or `--ship`:
35
35
  direction. Do not round NO-GO up to GO.
36
36
  - **Spec Drift Guard fires** (`$rite-build` finds the plan is wrong and the change
37
37
  alters product behaviour) → stop; route through `$rite-plan repair`.
38
- - **Budget exhausted with slices still pending** `devrites-engine tick-afk` exit 3 while `tasks.md`
38
+ - **Budget exhausted with slices still pending:** `devrites-engine tick-afk` exit 3 while `tasks.md`
39
39
  still has unbuilt slices (only when an explicit `--max-slices` capped the run below the
40
40
  plan's count) → stop; report slices remaining. Exhausting the default budget = all
41
41
  planned slices built = normal completion → continue to `$rite-prove`, don't pause.
42
- - **Still low-confidence after the interview** the idea can't be pinned to testable
42
+ - **Still low-confidence after the interview:** the idea can't be pinned to testable
43
43
  acceptance criteria → stop and ask, rather than guessing the product.
44
- - **Repeated failure** a phase fails, `devrites-debug-recovery` can't fix it within
44
+ - **Repeated failure:** a phase fails, `devrites-debug-recovery` can't fix it within
45
45
  scope after a bounded number of attempts → stop with the reproduction.
46
46
 
47
47
  ## The final type-GO
@@ -11,13 +11,13 @@ This is the Codex mirror of a DevRites skill. In Codex:
11
11
 
12
12
  - Load DevRites engineering standards from `.agents/skills/devrites-lib/reference/standards/`. Read `.agents/skills/devrites-lib/reference/standards/core.md` before workflow work, then load the other `.agents/skills/devrites-lib/reference/standards/*.md` files exactly when this skill asks for them.
13
13
  - Use the installed `devrites-engine` binary as the canonical runtime helper surface for orientation, gates, and state mutation.
14
- - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
- - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review** an inline pass shares the calling context and is weaker evidence.
14
+ - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here: Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
+ - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review**: an inline pass shares the calling context and is weaker evidence.
16
16
  - Codex project hooks are installed in `.codex/hooks.json`. Review and trust them with `/hooks` before relying on hook enforcement.
17
- - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
17
+ - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers: NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
18
18
 
19
19
 
20
- # $rite-build one verified slice
20
+ # $rite-build: one verified slice
21
21
 
22
22
  Build the next single slice, leave it working and proven, then **stop**. **Read the
23
23
  active workspace first**; if none, tell the user to run `$rite-spec <feature>`.
@@ -30,55 +30,55 @@ run the post-return gates (doubt, fail-on-red, record, stop). See
30
30
 
31
31
  ## Rules consulted (read on demand from `.agents/skills/devrites-lib/reference/standards/`)
32
32
  Read `.agents/skills/devrites-lib/reference/standards/core.md` first (workflow step 0). The
33
- following load on demand **the wright reads them** (they are named in its contract) while it
33
+ following load on demand: **the wright reads them** (they are named in its contract) while it
34
34
  writes; read them yourself for the doubt/record gates or in the inline fallback:
35
- - `coding-style.md` naming, function shape, guard clauses, comments, reuse-first.
36
- - `error-handling.md` fail fast, no silent catches, fail closed.
37
- - `testing.md` pyramid, behaviour over implementation, see-it-fail-first.
38
- - `patterns.md` composition over inheritance, avoid premature abstraction.
39
- - `principles.md` the project invariants (`.devrites/principles.md`) the slice must honor; the wright reads them as **binding**, not priors.
40
- - `security.md` when the slice touches user input, auth, data, or external integrations.
41
- - `definition-of-done.md` standing Done bar: acceptance mapped, fresh proof, no open hard gates, scoped edits, rollback/docs where needed.
35
+ - `coding-style.md`: naming, function shape, guard clauses, comments, reuse-first.
36
+ - `error-handling.md`: fail fast, no silent catches, fail closed.
37
+ - `testing.md`: pyramid, behaviour over implementation, see-it-fail-first.
38
+ - `patterns.md`: composition over inheritance, avoid premature abstraction.
39
+ - `principles.md`: the project invariants (`.devrites/principles.md`) the slice must honor; the wright reads them as **binding**, not priors.
40
+ - `security.md`: when the slice touches user input, auth, data, or external integrations.
41
+ - `definition-of-done.md`: standing Done bar: acceptance mapped, fresh proof, no open hard gates, scoped edits, rollback/docs where needed.
42
42
 
43
43
 
44
44
  ## Operating rules
45
45
  - **One slice at a time. DO NOT** start the next slice without the user asking.
46
- - Evidence over confidence. Prefer existing conventions. Feature scope only no
46
+ - Evidence over confidence. Prefer existing conventions. Feature scope only: no
47
47
  drive-by refactors.
48
48
  - **Noticed, not touched.** An adjacent smell the wright sees outside `touched-files.md` is
49
- recorded as an FYI follow-up in `decisions.md`, never fixed inline the slice's change summary
49
+ recorded as an FYI follow-up in `decisions.md`, never fixed inline: the slice's change summary
50
50
  states what it *deliberately left alone* ([`git-workflow.md`](../devrites-lib/reference/standards/git-workflow.md) "Things
51
51
  I didn't touch"), so the reviewer reads a feature-scoped diff, not a renovation. The `devrites-engine reconcile`
52
52
  gate (step 6) enforces this by exit code.
53
53
  - **Don't re-run an unchanged check.** Re-running the same build/test command on code that hasn't
54
- changed since proves nothing new — it's motion, not evidence. Re-verify after an edit, not before.
54
+ changed since proves nothing new. It's motion, not evidence. Re-verify after an edit, not before.
55
55
  - Surface material assumptions; ask before adding dependencies or a second design
56
56
  system. The [Spec Drift Guard](reference/spec-drift-guard.md) is active throughout.
57
57
  - **Avoid AI slop while writing.** `devrites-slice-wright` enforces the anti-slop charter **at
58
- the source** the canonical do-not list is `rite-polish/reference/anti-ai-slop.md` (the
58
+ the source**: the canonical do-not list is `rite-polish/reference/anti-ai-slop.md` (the
59
59
  wright reads it; don't restate it here). It writes the code the *project* would write, in its
60
- idiom, reusing before building; **you verify the charter held on return** you do not re-list
60
+ idiom, reusing before building; **you verify the charter held on return**. You do not re-list
61
61
  it and you do not fix slop by editing source. Polish catches what slips; build prevents.
62
- The **prose you write yourself** `evidence.md`, `decisions.md`, the slice report follows
62
+ The **prose you write yourself** (`evidence.md`, `decisions.md`, the slice report) follows
63
63
  the human-voice charter (`.agents/skills/devrites-lib/reference/standards/prose-style.md`; depth in `devrites-prose-craft`): no
64
64
  filler openers, no marketing adjectives, exact commands and identifiers kept verbatim.
65
65
  - **Honor declared project principles.** The wright reads `.devrites/principles.md` and treats
66
- each invariant as **binding** (not a prior to weigh like a convention) a slice it cannot build
66
+ each invariant as **binding** (not a prior to weigh like a convention): a slice it cannot build
67
67
  without breaking one is an **Escalation**, not a silent violation. On return **you verify no
68
- principle was broken**; a fresh violation is handled like any irreversible-risk item a
68
+ principle was broken**; a fresh violation is handled like any irreversible-risk item: a
69
69
  human-approved, scoped exception in the register or a stop, never folded into the slice. No
70
70
  `.devrites/principles.md` → none declared → nothing to honor.
71
- - **You never edit source the wright is the only writer of code + tests.** You write only
71
+ - **You never edit source: the wright is the only writer of code + tests.** You write only
72
72
  `.devrites/` bookkeeping. On any red gate, doubt finding, or coverage gap your only remedies
73
- are **continue the same wright once** (it fixes in its own context) or **stop + escalate** —
73
+ are **continue the same wright once** (it fixes in its own context) or **stop + escalate**:
74
74
  never patch the code yourself. The `devrites-engine reconcile` gate (step 6) enforces this by exit code:
75
75
  any source file changed outside the wright's claimed set is a hard STOP.
76
- - **A `Forge: yes` slice competes candidates one author still lands.** When `$rite-vet`
77
- flagged the slice a genuine architecture fork, step 3 runs K=23 candidate wrights in
76
+ - **A `Forge: yes` slice competes candidates: one author still lands.** When `$rite-vet`
77
+ flagged the slice a genuine architecture fork, step 3 runs K=2-3 candidate wrights in
78
78
  **isolated worktrees** and lands exactly one winner's diff; the single-writer invariant holds
79
79
  because no tree ever has two authors and only the winner reaches the working tree. You still
80
80
  never edit source, and reconcile runs against the winner's claimed set. The default slice is
81
- single-path forge is the rare exception ([`reference/forge.md`](reference/forge.md)).
81
+ single-path: forge is the rare exception ([`reference/forge.md`](reference/forge.md)).
82
82
 
83
83
  ## Workflow
84
84
 
@@ -1,4 +1,4 @@
1
- # AFK discipline running `$rite-build` unattended without burning the trunk
1
+ # AFK discipline: running `$rite-build` unattended without burning the trunk
2
2
 
3
3
  AFK mode is `.devrites/AFK` present. It lets `$rite-build` chain slices without per-slice
4
4
  user input. The discipline below is what keeps an AFK loop from drifting into damage.
@@ -25,13 +25,13 @@ notify: "ntfy.sh/my-topic" # shell command run on awaiting_human trans
25
25
  allow_gates: [advisory, validating] # gate severities AFK may auto-handle
26
26
  ```
27
27
 
28
- `.devrites/AFK` is **read-only config** never rewritten in place. `max_slices` is the
28
+ `.devrites/AFK` is **read-only config**: never rewritten in place. `max_slices` is the
29
29
  initial budget; the mutable remaining count lives in `state.md` as `AFK slices remaining:
30
30
  <n>`, seeded from `max_slices` on the first AFK build and decremented by `devrites-engine tick-afk`
31
31
  (see "Iteration cap").
32
32
 
33
33
  Defaults when keys are omitted:
34
- - `max_slices`: unlimited (a missing cap is risky see "Always cap iterations").
34
+ - `max_slices`: unlimited (a missing cap is risky: see "Always cap iterations").
35
35
  - `notify`: none.
36
36
  - `allow_gates`: `[advisory]`.
37
37
 
@@ -44,13 +44,13 @@ into HITL.
44
44
  remaining` by 1 each time a slice is marked `built`, by running
45
45
  `devrites-engine tick-afk <state.md path>`. The script reads the
46
46
  field, decrements, writes it back, prints the new value, and **exits `3` when it hits 0**.
47
- The cap is enforced by `devrites-engine tick-afk`, not by prose when it exits 3:
47
+ The cap is enforced by `devrites-engine tick-afk`, not by prose, when it exits 3:
48
48
 
49
49
  - `$rite-build` treats exit 3 as a forced HITL stop:
50
50
  ```
51
51
  AFK cap reached. Raise `state.md` `AFK slices remaining` or remove the sentinel to continue.
52
52
  ```
53
- - The workspace stays consistent no half-built slice, no pending question.
53
+ - The workspace stays consistent: no half-built slice, no pending question.
54
54
 
55
55
  Step 0 re-derives the remaining budget from `state.md` (seeding it from `.devrites/AFK`
56
56
  `max_slices` on the first AFK build); `max_slices` itself is read-only and never rewritten.
@@ -66,7 +66,7 @@ types / lint are red. The reasoning:
66
66
 
67
67
  - A red signal means either the slice's contract is wrong or the failing code is. Neither
68
68
  is something AFK can resolve.
69
- - Marking it `built` and letting the AFK loop chain to the next slice burns the trunk
69
+ - Marking it `built` and letting the AFK loop chain to the next slice burns the trunk:
70
70
  the next slice builds on broken state.
71
71
 
72
72
  The fail-on-red path:
@@ -92,7 +92,7 @@ any of:
92
92
  rewriting `.gitignore`-listed paths, deleting fixtures).
93
93
  - Anything the slice's `Gate: blocking` plus `tasks.md` `Why HITL:` flags as irreversible.
94
94
 
95
- The list is the same one Claude Code auto-mode's transcript classifier protects adapted
95
+ The list is the same one Claude Code auto-mode's transcript classifier protects: adapted
96
96
  to DevRites's workspace shape.
97
97
 
98
98
  ## The `notify:` hook contract
@@ -117,13 +117,13 @@ Example targets:
117
117
  - `osascript -e "display notification \"$DEVRITES_QUESTION\" with title \"DevRites: $DEVRITES_GATE\""`
118
118
  - `pb push "$DEVRITES_SLUG: $DEVRITES_QUESTION"` (via pushbullet CLI)
119
119
 
120
- DevRites owns no notification logic the hook is a seam, not a feature.
120
+ DevRites owns no notification logic: the hook is a seam, not a feature.
121
121
 
122
122
  ## When to leave AFK
123
123
 
124
124
  Drop the sentinel before:
125
125
 
126
- - A novel feature where you have not yet seen `$rite-build` work on this codebase HITL
126
+ - A novel feature where you have not yet seen `$rite-build` work on this codebase HITL:
127
127
  Ralph's progression: HITL first → refine prompt → AFK once trusted.
128
128
  - A risky slice you marked `Mode: HITL` and want to walk through interactively even if
129
129
  the gate is technically `validating`.
@@ -1,4 +1,4 @@
1
- # rite-build anti-patterns
1
+ # rite-build: anti-patterns
2
2
 
3
3
  Load this when standing a non-trivial implementation decision, or when the
4
4
  agent feels reluctance toward stopping after one slice, applying TDD, or
@@ -19,18 +19,18 @@ generic AI naming, drive-by refactors): see
19
19
 
20
20
  | Excuse | Rebuttal |
21
21
  |---|---|
22
- | "This slice is hard I'll forge it." | Hard ≠ forkable. Forge competes ≥2 *genuinely-different* approaches with no clear winner. One hard approach is single-path; building it K times wastes K× for one answer. |
22
+ | "This slice is hard. I'll forge it." | Hard ≠ forkable. Forge competes ≥2 *genuinely-different* approaches with no clear winner. One hard approach is single-path; building it K times wastes K× for one answer. |
23
23
  | "I'm not sure which approach is right, so let me compete them and decide." | Forge is for a real fork the plan couldn't settle, not for dodging a decision you can make now. Decide from the code/docs first; forge only when the alternatives are genuinely undecidable on paper. |
24
- | "Candidate A's data layer plus B's UI would be the best of both." | Don't hand-merge candidates two authors in one tree is the incoherence the single-writer rule exists to prevent. Land one winner whole; graft a *specific* runner-up idea only by continuing the winning wright once. |
25
- | "The judge already scored these, so I can skip the post-return doubt." | The judge picks *between* candidates; it doesn't replace doubting the winner's standing decisions. Steps 47 run on the winner unchanged. |
26
- | "A fourth candidate might be even better." | K is capped at 3. A fourth rarely moves the winner and multiplies cost; if none of three is right, the plan is wrong `$rite-plan repair`, don't add candidates. |
24
+ | "Candidate A's data layer plus B's UI would be the best of both." | Don't hand-merge candidates: two authors in one tree is the incoherence the single-writer rule exists to prevent. Land one winner whole; graft a *specific* runner-up idea only by continuing the winning wright once. |
25
+ | "The judge already scored these, so I can skip the post-return doubt." | The judge picks *between* candidates; it doesn't replace doubting the winner's standing decisions. Steps 4-7 run on the winner unchanged. |
26
+ | "A fourth candidate might be even better." | K is capped at 3. A fourth rarely moves the winner and multiplies cost; if none of three is right, the plan is wrong: `$rite-plan repair`, don't add candidates. |
27
27
 
28
28
  ## Red Flags
29
29
 
30
30
  - About to start slice N+1 without the user asking.
31
31
  - Skipping `devrites-doubt` on a branching, boundary, data-model, auth, public-API, or migration decision.
32
32
  - Adding a dependency or a second design system without recording rationale in `decisions.md`.
33
- - Writing a `try/catch` block wider than what you actually handle.
33
+ - Writing a `try/catch` block wider than what you handle.
34
34
  - A comment that restates what the next line does.
35
35
  - Touching files that aren't in `touched-files.md` for "tidiness".
36
36
  - Forging a slice with no acceptance / `test-plan.md` coverage for the judge to score against.
@@ -1,12 +1,12 @@
1
- # Checkpoint protocol what `$rite-build` does when a slice is HITL
1
+ # Checkpoint protocol: what `$rite-build` does when a slice is HITL
2
2
 
3
3
  When `$rite-build` reaches a slice with `Mode: HITL`, it does **not** start writing code. It
4
4
  surfaces the checkpoint as a ranked **option set** and resolves it **before** any code lands:
5
5
 
6
- - **Human present (interactive)** ask inline via `AskUserQuestion` (the option set below).
6
+ - **Human present (interactive):** ask inline via `AskUserQuestion` (the option set below).
7
7
  The human picks; record the pick to `questions.md` (`answered`) + `decisions.md`, clear the
8
- gate, and **continue building in place** no STOP, no `$rite-resolve` round-trip.
9
- - **Human absent / AFK-pausing / notify-only** persist the checkpoint (`questions.md` open +
8
+ gate, and **continue building in place**: no STOP, no `$rite-resolve` round-trip.
9
+ - **Human absent / AFK-pausing / notify-only:** persist the checkpoint (`questions.md` open +
10
10
  `state.md` `Awaiting human`), fire the `notify:` hook, and **stop**. Resume later via
11
11
  `$rite-resolve` (or `--batch`).
12
12
 
@@ -15,13 +15,13 @@ Either way the pause is **pre-action**, not post-action: code never lands before
15
15
  ## Render contract
16
16
 
17
17
  The checkpoint must be rendered in user-facing output **and** persisted to the workspace.
18
- Both are required the output is for the human in the room (or the notification target),
18
+ Both are required: the output is for the human in the room (or the notification target),
19
19
  the persisted form is for the next session or the AFK observer.
20
20
 
21
- ### User-facing render the option set
21
+ ### User-facing render: the option set
22
22
 
23
23
  Present the checkpoint as an `AskUserQuestion` with a ranked **option set**
24
- (`afk-hitl.md` → "Option set"): 24 options, **recommended first** + labelled `(Recommended)`,
24
+ (`afk-hitl.md` → "Option set"): 2-4 options, **recommended first** + labelled `(Recommended)`,
25
25
  each option's description carrying the dimension-tagged rationale + the trade-off it accepts,
26
26
  plus the escape hatch. The header names the slice + gate:
27
27
 
@@ -35,7 +35,7 @@ Slice <N — name> — HITL (<gate>, SLA <SLA>). <Checkpoint text from tasks.md>
35
35
  4. Something else — I'll describe it
36
36
  ```
37
37
 
38
- The recommended option (#1) is **required** a checkpoint without a recommendation is a worse
38
+ The recommended option (#1) is **required**: a checkpoint without a recommendation is a worse
39
39
  interrupt than one with shape; the human reacts to a ranked draft faster than to a blank prompt
40
40
  (the "give the human something to approve" rule). The recommendation reflects *this* project
41
41
  (its conventions, stack, scale), not a generic default. On an interactive pick, resolve in
@@ -93,14 +93,14 @@ In one atomic write (one `state.md` rewrite + one `questions.md` append):
93
93
  ```
94
94
 
95
95
  The hook fires after the workspace write so the notification target sees a workspace
96
- that already records the pause. Failures in the hook **do not** roll back the pause
96
+ that already records the pause. Failures in the hook **do not** roll back the pause:
97
97
  the gate is authoritative; the notification is best-effort.
98
98
 
99
99
  ## qid generation
100
100
 
101
101
  Format: `q-YYYY-MM-DD-NNN`, where `NNN` is the next sequential integer for that date in
102
102
  `questions.md`. For the write side, call
103
- `devrites-engine resolve next-qid <questions.md path>` — it
103
+ `devrites-engine resolve next-qid <questions.md path>`. It
104
104
  counts existing `## q-YYYY-MM-DD-` headers for today, prints the next zero-padded id, and
105
105
  refuses to print an id whose header already exists. Use that id verbatim so each qid is
106
106
  unique within the date.
@@ -114,7 +114,7 @@ If `.devrites/AFK` exists and the slice's `Gate` is in `allow_gates`, `$rite-bui
114
114
  `decisions.md`, and **dispatch the wright** to build the slice (workflow step 3).
115
115
  - For `validating` (only when `allow_gates` includes it): **dispatch the wright** (step 3); on
116
116
  return, write a `gate: validating` entry to `questions.md`, mark the slice
117
- `built (pending review)` in `state.md`, and continue. A slice's only states are `pending` and `built` —
117
+ `built (pending review)` in `state.md`, and continue. A slice's only states are `pending` and `built`:
118
118
  acceptance is proven at the **feature** level by `$rite-prove` (recorded in
119
119
  `evidence.md`), not per slice. The `built (pending review)` slice is not done until the
120
120
  open `validating` gate resolves via `$rite-resolve`; an open `validating` gate is a
@@ -122,8 +122,8 @@ If `.devrites/AFK` exists and the slice's `Gate` is in `allow_gates`, `$rite-bui
122
122
 
123
123
  For gates in `allow_gates`, AFK **auto-picks the recommended option** (option 1 of the set)
124
124
  instead of pausing, recording it as above. For `blocking` and `escalating` (and every
125
- irreversible-risk item), AFK **always** invokes the checkpoint protocol the sentinel does
126
- not unlock these gates **unless `allow_irreversible: true`** is set, which makes AFK
125
+ irreversible-risk item), AFK **always** invokes the checkpoint protocol: the sentinel does
126
+ not unlock these gates: **unless `allow_irreversible: true`** is set, which makes AFK
127
127
  auto-pick the recommendation on *every* gate, irreversible included (maximal autonomy, opt-in;
128
128
  see `afk-hitl.md`). See `afk-discipline.md` for the irreversible-risk list.
129
129
 
@@ -141,7 +141,7 @@ written as a single block.
141
141
  updates means the workspace lies on `/clear`.
142
142
  - **Don't self-answer a question that *paused* for a human.** When a gate stopped the session
143
143
  (an AFK queue, or a HITL pause the human walked away from), `$rite-resolve` requires an
144
- explicit answer the agent doesn't confirm its own `proposed:` on resume. This is distinct
144
+ explicit answer: the agent doesn't confirm its own `proposed:` on resume. This is distinct
145
145
  from the two legitimate auto-resolutions: an interactive `AskUserQuestion` pick the human
146
146
  just made, and an AFK auto-pick of the recommended option on a gate `allow_gates` permits.
147
147
  - **Don't bundle the `notify:` hook output into chat.** Fire-and-forget; the chat already
@@ -1,18 +1,18 @@
1
- # Checkpoint crash-survivable WIP commits (opt-in)
1
+ # Checkpoint: crash-survivable WIP commits (opt-in)
2
2
 
3
3
  `.devrites/` markdown survives compaction, but a slice's *source* stays uncommitted until
4
- `$rite-ship`. A crash or killed session mid-build the AFK / `$rite-autocomplete` case
4
+ `$rite-ship`. A crash or killed session mid-build: the AFK / `$rite-autocomplete` case:
5
5
  loses that source **and** the reasoning behind it. Checkpoint mode commits each proven
6
6
  slice as a local `WIP`, so the work and its context outlive the session.
7
7
 
8
8
  ## When it's on
9
- Opt-in via the `.devrites/CHECKPOINT` sentinel the mirror of `.devrites/AFK`. Absent →
9
+ Opt-in via the `.devrites/CHECKPOINT` sentinel: the mirror of `.devrites/AFK`. Absent →
10
10
  no checkpoints; `$rite-build` behaves exactly as before. A long unattended run
11
11
  (`$rite-autocomplete`) is the case it earns its keep, so that path sets the sentinel for
12
- the run. **Local-only by rule:** a checkpoint is never pushed scratch work must not
12
+ the run. **Local-only by rule:** a checkpoint is never pushed: scratch work must not
13
13
  trigger CI.
14
14
 
15
- ## The checkpoint commit orchestrator, at RECORD, after gates are green
15
+ ## The checkpoint commit: orchestrator, at RECORD, after gates are green
16
16
  A checkpoint records a **proven** slice; it fires only after PROVE is green, never on a red
17
17
  gate. Stage only the slice's `touched-files.md`, then commit locally with a
18
18
  `[devrites-context]` body a cold reader can restore from:
@@ -29,14 +29,14 @@ BODY
29
29
  ```
30
30
 
31
31
  ## Restore
32
- The commit body is a durable record, not just a marker. After a crash, a fresh session
33
- or `$rite-status` reads the last `WIP(<slug>)` body to reconstruct the decisions,
32
+ The commit body is a durable record, not just a marker. After a crash, a fresh session:
33
+ or `$rite-status`: reads the last `WIP(<slug>)` body to reconstruct the decisions,
34
34
  remaining slices, and dead-ends that in-session `.devrites/` state would have held. No
35
35
  special tooling: it's a git log entry any agent can read.
36
36
 
37
37
  ## Collapse at ship
38
38
  WIP commits are scratch and never reach shared history. `$rite-ship` folds them into the
39
- one atomic feature commit before the Conventional-Commit ladder see the collapse step in
39
+ one atomic feature commit before the Conventional-Commit ladder: see the collapse step in
40
40
  [git-ship.md](../../rite-ship/reference/git-ship.md). Result: one clean commit, bisect
41
41
  stays green.
42
42
 
@@ -26,7 +26,7 @@ Evidence beats confidence. A slice isn't built until there's a record that prove
26
26
  ```
27
27
 
28
28
  ## Honesty rules
29
- - If a test fails, record the failure and the output don't hide it.
29
+ - If a test fails, record the failure and the output: don't hide it.
30
30
  - If a step was skipped (no browser available, command not found), say so and record
31
31
  the manual verification steps instead.
32
32
  - Unproven acceptance criteria stay unchecked. The seal will catch them.