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
@@ -5,7 +5,7 @@ argument-hint: "[slice number or name]"
5
5
  user-invocable: true
6
6
  ---
7
7
 
8
- # /rite-build one verified slice
8
+ # /rite-build: one verified slice
9
9
 
10
10
  Build the next single slice, leave it working and proven, then **stop**. **Read the
11
11
  active workspace first**; if none, tell the user to run `/rite-spec <feature>`.
@@ -18,55 +18,55 @@ run the post-return gates (doubt, fail-on-red, record, stop). See
18
18
 
19
19
  ## Rules consulted (read on demand from `.claude/skills/devrites-lib/reference/standards/`)
20
20
  Read `.claude/skills/devrites-lib/reference/standards/core.md` first (workflow step 0). The
21
- following load on demand **the wright reads them** (they are named in its contract) while it
21
+ following load on demand: **the wright reads them** (they are named in its contract) while it
22
22
  writes; read them yourself for the doubt/record gates or in the inline fallback:
23
- - `coding-style.md` naming, function shape, guard clauses, comments, reuse-first.
24
- - `error-handling.md` fail fast, no silent catches, fail closed.
25
- - `testing.md` pyramid, behaviour over implementation, see-it-fail-first.
26
- - `patterns.md` composition over inheritance, avoid premature abstraction.
27
- - `principles.md` the project invariants (`.devrites/principles.md`) the slice must honor; the wright reads them as **binding**, not priors.
28
- - `security.md` when the slice touches user input, auth, data, or external integrations.
29
- - `definition-of-done.md` standing Done bar: acceptance mapped, fresh proof, no open hard gates, scoped edits, rollback/docs where needed.
23
+ - `coding-style.md`: naming, function shape, guard clauses, comments, reuse-first.
24
+ - `error-handling.md`: fail fast, no silent catches, fail closed.
25
+ - `testing.md`: pyramid, behaviour over implementation, see-it-fail-first.
26
+ - `patterns.md`: composition over inheritance, avoid premature abstraction.
27
+ - `principles.md`: the project invariants (`.devrites/principles.md`) the slice must honor; the wright reads them as **binding**, not priors.
28
+ - `security.md`: when the slice touches user input, auth, data, or external integrations.
29
+ - `definition-of-done.md`: standing Done bar: acceptance mapped, fresh proof, no open hard gates, scoped edits, rollback/docs where needed.
30
30
 
31
31
 
32
32
  ## Operating rules
33
33
  - **One slice at a time. DO NOT** start the next slice without the user asking.
34
- - Evidence over confidence. Prefer existing conventions. Feature scope only no
34
+ - Evidence over confidence. Prefer existing conventions. Feature scope only: no
35
35
  drive-by refactors.
36
36
  - **Noticed, not touched.** An adjacent smell the wright sees outside `touched-files.md` is
37
- recorded as an FYI follow-up in `decisions.md`, never fixed inline the slice's change summary
37
+ recorded as an FYI follow-up in `decisions.md`, never fixed inline: the slice's change summary
38
38
  states what it *deliberately left alone* ([`git-workflow.md`](../devrites-lib/reference/standards/git-workflow.md) "Things
39
39
  I didn't touch"), so the reviewer reads a feature-scoped diff, not a renovation. The `devrites-engine reconcile`
40
40
  gate (step 6) enforces this by exit code.
41
41
  - **Don't re-run an unchanged check.** Re-running the same build/test command on code that hasn't
42
- changed since proves nothing new — it's motion, not evidence. Re-verify after an edit, not before.
42
+ changed since proves nothing new. It's motion, not evidence. Re-verify after an edit, not before.
43
43
  - Surface material assumptions; ask before adding dependencies or a second design
44
44
  system. The [Spec Drift Guard](reference/spec-drift-guard.md) is active throughout.
45
45
  - **Avoid AI slop while writing.** `devrites-slice-wright` enforces the anti-slop charter **at
46
- the source** the canonical do-not list is `rite-polish/reference/anti-ai-slop.md` (the
46
+ the source**: the canonical do-not list is `rite-polish/reference/anti-ai-slop.md` (the
47
47
  wright reads it; don't restate it here). It writes the code the *project* would write, in its
48
- idiom, reusing before building; **you verify the charter held on return** you do not re-list
48
+ idiom, reusing before building; **you verify the charter held on return**. You do not re-list
49
49
  it and you do not fix slop by editing source. Polish catches what slips; build prevents.
50
- The **prose you write yourself** `evidence.md`, `decisions.md`, the slice report follows
50
+ The **prose you write yourself** (`evidence.md`, `decisions.md`, the slice report) follows
51
51
  the human-voice charter (`.claude/skills/devrites-lib/reference/standards/prose-style.md`; depth in `devrites-prose-craft`): no
52
52
  filler openers, no marketing adjectives, exact commands and identifiers kept verbatim.
53
53
  - **Honor declared project principles.** The wright reads `.devrites/principles.md` and treats
54
- each invariant as **binding** (not a prior to weigh like a convention) a slice it cannot build
54
+ each invariant as **binding** (not a prior to weigh like a convention): a slice it cannot build
55
55
  without breaking one is an **Escalation**, not a silent violation. On return **you verify no
56
- principle was broken**; a fresh violation is handled like any irreversible-risk item a
56
+ principle was broken**; a fresh violation is handled like any irreversible-risk item: a
57
57
  human-approved, scoped exception in the register or a stop, never folded into the slice. No
58
58
  `.devrites/principles.md` → none declared → nothing to honor.
59
- - **You never edit source the wright is the only writer of code + tests.** You write only
59
+ - **You never edit source: the wright is the only writer of code + tests.** You write only
60
60
  `.devrites/` bookkeeping. On any red gate, doubt finding, or coverage gap your only remedies
61
- are **continue the same wright once** (it fixes in its own context) or **stop + escalate** —
61
+ are **continue the same wright once** (it fixes in its own context) or **stop + escalate**:
62
62
  never patch the code yourself. The `devrites-engine reconcile` gate (step 6) enforces this by exit code:
63
63
  any source file changed outside the wright's claimed set is a hard STOP.
64
- - **A `Forge: yes` slice competes candidates one author still lands.** When `/rite-vet`
65
- flagged the slice a genuine architecture fork, step 3 runs K=23 candidate wrights in
64
+ - **A `Forge: yes` slice competes candidates: one author still lands.** When `/rite-vet`
65
+ flagged the slice a genuine architecture fork, step 3 runs K=2-3 candidate wrights in
66
66
  **isolated worktrees** and lands exactly one winner's diff; the single-writer invariant holds
67
67
  because no tree ever has two authors and only the winner reaches the working tree. You still
68
68
  never edit source, and reconcile runs against the winner's claimed set. The default slice is
69
- single-path forge is the rare exception ([`reference/forge.md`](reference/forge.md)).
69
+ single-path: forge is the rare exception ([`reference/forge.md`](reference/forge.md)).
70
70
 
71
71
  ## Workflow
72
72
 
@@ -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.
@@ -1,20 +1,19 @@
1
- # Forge competing candidate builds for one slice
1
+ # Forge: competing candidate builds for one slice
2
2
 
3
3
  How `/rite-build` builds a slice that `/rite-vet` flagged `Forge: yes`: instead of one wright,
4
- **K = 23 candidate wrights** each build the slice a genuinely different way in **isolation**, a
4
+ **K = 2-3 candidate wrights** each build the slice a genuinely different way in **isolation**, a
5
5
  read-only judge scores them, and exactly **one** winner's diff lands in the working tree. Loaded
6
6
  on demand by `/rite-build` step 3; the sibling of single-path
7
7
  [`wright-dispatch.md`](wright-dispatch.md).
8
8
 
9
9
  Forge is the **rare** path. Most slices are single-path (cheaper, and the default). A slice
10
- forges only when the work is a genuine architecture fork two or three approaches that actually
11
- differ, no clear winner on paper, at high enough stakes that building the wrong one costs more
10
+ forges only when the work is a genuine architecture fork: two or three approaches that differ, no clear winner on paper, at high enough stakes that building the wrong one costs more
12
11
  than building all of them. That judgment is made at `/rite-vet` and recorded as the slice's
13
12
  `Forge:` field; build acts on the flag, it does not invent it.
14
13
 
15
14
  ## Why this doesn't break the single-writer invariant
16
15
 
17
- DevRites forbids a parallel fan-out of writers **sharing one tree** concurrent writers on one
16
+ DevRites forbids a parallel fan-out of writers **sharing one tree**: concurrent writers on one
18
17
  working tree make conflicting implicit decisions and produce incoherent code
19
18
  ([`wright-dispatch.md`](wright-dispatch.md)). Forge keeps that invariant intact by **isolation**:
20
19
  every candidate writes in its own worktree (or its own throwaway branch), never touching another
@@ -24,13 +23,13 @@ one slice."
24
23
 
25
24
  ## Trust the flag, but clear a stale one
26
25
 
27
- Before competing anything, confirm the flag still earns its cost `/rite-vet` set it, but the
26
+ Before competing anything, confirm the flag still earns its cost: `/rite-vet` set it, but the
28
27
  plan may have moved:
29
28
 
30
- - **No objective scorecard** the slice has no acceptance criteria and no `test-plan.md`
29
+ - **No objective scorecard:** the slice has no acceptance criteria and no `test-plan.md`
31
30
  coverage the judge can score against → clear `Forge` to `no`, build single-path. A competition
32
31
  with no rubric is a coin toss with K× the cost.
33
- - **Can't name two genuinely different strategies** if the candidates would be variations of
32
+ - **Can't name two genuinely different strategies:** if the candidates would be variations of
34
33
  one approach, there is nothing to compete → single-path.
35
34
  - **Slice shrank below the bar** (now Complexity ≤3, or a dependency landed that picks the
36
35
  approach) → single-path.
@@ -40,21 +39,21 @@ slice you can't score, and never forge to avoid making a decision the plan alrea
40
39
 
41
40
  ## Mechanics
42
41
 
43
- The orchestrator runs F1F7. Steps 47 of the [one-slice-cycle](one-slice-cycle.md) (doubt,
42
+ The orchestrator runs F1-F7. Steps 4-7 of the [one-slice-cycle](one-slice-cycle.md) (doubt,
44
43
  fail-on-red, reconcile, record, stop) then run **unchanged** on the winner.
45
44
 
46
- ### F1 Confirm the K strategies
47
- Take the 23 candidate strategies `/rite-vet` named (in the slice brief). Each must be a
48
- **distinct, complete approach** to the same slice contract a different seam, data shape,
49
- reuse-vs-build call, or algorithm not a tweak of one. Name them `A`, `B`, (`C`) with a
45
+ ### F1: Confirm the K strategies
46
+ Take the 2-3 candidate strategies `/rite-vet` named (in the slice brief). Each must be a
47
+ **distinct, complete approach** to the same slice contract (a different seam, data shape,
48
+ reuse-vs-build call, or algorithm) not a tweak of one. Name them `A`, `B`, (`C`) with a
50
49
  one-line description each. K is capped at 3: a fourth candidate rarely changes the winner and
51
50
  multiplies cost.
52
51
 
53
- ### F2 Snapshot, then isolate each candidate
52
+ ### F2: Snapshot, then isolate each candidate
54
53
  Snapshot the working tree first (the winner's landing is reconciled against it later), then give
55
54
  each candidate its own isolated tree. **Prefer parallel isolated worktrees** when the harness can
56
55
  dispatch a sub-agent with worktree isolation; the **always-available** path is one throwaway git
57
- branch per candidate, built sequentially (slower, universally works the
56
+ branch per candidate, built sequentially (slower, universally works: the
58
57
  [`tooling.md`](../../devrites-lib/reference/standards/tooling.md) "fallback is first-class" discipline):
59
58
 
60
59
  ```bash
@@ -68,7 +67,7 @@ for C in A B; do
68
67
  done
69
68
  ```
70
69
 
71
- ### F3 Dispatch K candidate wrights
70
+ ### F3: Dispatch K candidate wrights
72
71
  Send **each** candidate the identical single-path slice contract from
73
72
  [`wright-dispatch.md`](wright-dispatch.md), with **one** line added naming its assigned strategy
74
73
  and its isolated tree:
@@ -81,32 +80,32 @@ candidate's work. Same discipline as always — orient → RED → implement sma
81
80
  verify → return your structured artifact. Code + tests only.
82
81
  ```
83
82
 
84
- Each is still **one wright, one tree** the invariant holds per candidate. Parallel where the
83
+ Each is still **one wright, one tree**: the invariant holds per candidate. Parallel where the
85
84
  harness isolates them; otherwise build candidate A to green, capture its diff, reset to `BASE`,
86
85
  then candidate B. A candidate that hits an irreversible-risk item escalates exactly as a
87
- single-path wright does **forge never bypasses a gate** (see AFK below).
86
+ single-path wright does: **forge never bypasses a gate** (see AFK below).
88
87
 
89
- ### F4 Judge (read-only, fresh context)
88
+ ### F4: Judge (read-only, fresh context)
90
89
  Dispatch [`devrites-forge-judge`](../../../agents/devrites-forge-judge.md) with the K finished
91
90
  candidate diffs and the scorecard inputs (slice acceptance, `test-plan.md`, `.devrites/principles.md`,
92
91
  the anti-slop charter). It scores each candidate, ranks them, names the **winner** and the
93
92
  specific runner-up ideas worth grafting, and returns the structured verdict. The judge **never
94
- writes code** it reads the diffs and returns findings, like every reviewer agent. If sub-agent
93
+ writes code**. It reads the diffs and returns findings, like every reviewer agent. If sub-agent
95
94
  dispatch is unavailable, do the judge's rubric pass yourself in a fresh read, discarding your
96
95
  authoring reasoning (a flagged fallback, not an independent judgment).
97
96
 
98
- ### F5 Land the winner, graft sparingly
97
+ ### F5: Land the winner, graft sparingly
99
98
  Apply **only** the winner's diff to the working tree (merge its worktree / cherry-pick its
100
99
  branch). If the judge named a cheap, specific improvement in a runner-up, graft it by
101
- **continuing the winning wright once** with that instruction never hand-merge two candidates'
100
+ **continuing the winning wright once** with that instruction: never hand-merge two candidates'
102
101
  code (that re-creates the incoherent-tree failure the invariant exists to prevent). The landed
103
102
  tree has exactly one author: the winner (plus its own grafted follow-up).
104
103
 
105
- ### F6 Write `forge-report.md`
104
+ ### F6: Write `forge-report.md`
106
105
  The durable record of the competition (template below). One per forged slice; archived with the
107
106
  feature.
108
107
 
109
- ### F7 Clean up, then return to the cycle
108
+ ### F7: Clean up, then return to the cycle
110
109
  Remove only clean losing worktrees / delete their candidate branches. If a losing worktree is dirty,
111
110
  preserve it and record the path in `forge-report.md`; never `--force` away unlanded work.
112
111
 
@@ -152,18 +151,18 @@ slice that might be tempted to retry one>.
152
151
  ```
153
152
 
154
153
  The **Discarded** section matters: it is a dead-end record at the slice level, the same role
155
- `decisions.md` "Dead ends" plays for the feature a later slice shouldn't re-litigate an
154
+ `decisions.md` "Dead ends" plays for the feature: a later slice shouldn't re-litigate an
156
155
  approach forge already rejected.
157
156
 
158
157
  ## AFK & budget
159
158
 
160
159
  - **Cost.** Forge multiplies the build by K. Under `.devrites/AFK`, each candidate counts against
161
160
  the slice budget (`devrites-engine tick-afk` once per candidate dispatched), so a forge slice can exhaust the
162
- cap faster that is intended back-pressure, not a bug.
161
+ cap faster, that is intended back-pressure, not a bug.
163
162
  - **Gates are unchanged.** Forge changes *how many candidates build*, never *what pauses*. An
164
163
  irreversible-risk item, a blocking/escalating gate, or a red-on-completion in **any** candidate
165
164
  pauses per [`afk-hitl.md`](../../devrites-lib/reference/standards/afk-hitl.md) exactly as single-path. AFK widens what is
166
- automatic, never what is irreversible forge included.
165
+ automatic, never what is irreversible: forge included.
167
166
  - **Stuck loop still applies.** Re-dispatching the same candidate without progress trips
168
167
  `devrites-engine stuck` the same as a single wright.
169
168
 
@@ -171,11 +170,11 @@ approach forge already rejected.
171
170
 
172
171
  No git, or neither worktrees nor throwaway branches are usable → **degrade to single-path** and
173
172
  say so. Forge is an accelerator for choosing between real alternatives; it is never a requirement
174
- for building the slice. A slice always has a single-path build available the competition is the
173
+ for building the slice. A slice always has a single-path build available: the competition is the
175
174
  optional part.
176
175
 
177
176
  ## Anti-patterns
178
177
 
179
- See [`anti-patterns.md`](anti-patterns.md) § Forge the short version: don't forge a decided or
178
+ See [`anti-patterns.md`](anti-patterns.md) § Forge: the short version: don't forge a decided or
180
179
  trivial slice, don't forge to dodge a decision, don't hand-merge candidates, don't exceed K=3,
181
180
  and don't let a forged slice skip the post-return doubt because "the judge already looked."
@@ -12,7 +12,7 @@ A slice is **frontend/UI** if it touches or plans to touch any of:
12
12
 
13
13
  ## When triggered
14
14
  - `/rite-spec` applies **`devrites-ux-shape`** (spec step 3a) to write the feature-level
15
- **`design-brief.md`** before any code design direction, key states, interaction model,
15
+ **`design-brief.md`** before any code: design direction, key states, interaction model,
16
16
  optional Figma/image visual-direction probe.
17
17
  - `/rite-build` applies **`devrites-frontend-craft`**, building **to** that `design-brief.md`
18
18
  (register detection, refine the brief per slice, existing design system, all states,
@@ -31,7 +31,7 @@ If the slice spans both layers, it's both a frontend **and** a backend slice. De
31
31
  `devrites-frontend-craft/reference/fullstack.md`.
32
32
 
33
33
  ## When NOT triggered
34
- Pure backend/data/CLI/infra slices skip craft and browser proof but still get tests
34
+ Pure backend/data/CLI/infra slices skip craft and browser proof, but still get tests
35
35
  and evidence. If unsure whether a slice is "UI enough", treat copy/empty/error states
36
36
  and any rendered output as UI.
37
37
 
@@ -27,12 +27,12 @@ STOP → report + recommend next; do not start slice N+1
27
27
  ## Why stop after one slice
28
28
  - Keeps the diff reviewable (~one capability, roughly ≤100 lines of meaningful change).
29
29
  - Surfaces integration/drift problems while they're cheap.
30
- - Gives the user a decision point they may reprioritize, reslice, or polish now.
31
- - Prevents the "90% done" pile-up where nothing is actually proven.
30
+ - Gives the user a decision point. They may reprioritize, reslice, or polish now.
31
+ - Prevents the "90% done" pile-up where nothing is proven.
32
32
 
33
33
  ## Restate the scope boundary
34
34
  Before coding, write what this slice will and will **not** touch. This is the contract
35
- you check yourself against anything outside it is scope creep or a drift event.
35
+ you check yourself against: anything outside it is scope creep or a drift event.
36
36
 
37
37
  ## When the slice can't be completed cleanly
38
38
  - Discovered the plan is wrong → **Spec Drift Guard** (stop, record, classify, maybe
@@ -38,4 +38,4 @@ For a **forged slice**, the `Built` line names the competition and points at the
38
38
  `Done: built slice 3 — csv-streaming (forged: 3 candidates, winner B).` and
39
39
  `Record: .devrites/work/<slug>/forge-report.md`.
40
40
 
41
- **DO NOT continue to the next slice automatically** even at `✅ ALL BUILT`, `/rite-prove` is the user's call.
41
+ **DO NOT continue to the next slice automatically**: even at `✅ ALL BUILT`, `/rite-prove` is the user's call.