devrites 3.0.5 → 3.0.7

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 (744) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +282 -533
  3. package/SECURITY.md +26 -26
  4. package/docs/adr/README.md +7 -9
  5. package/docs/agents/domain.md +5 -5
  6. package/docs/agents/issue-driven-rites.md +1 -1
  7. package/docs/agents/issue-tracker.md +1 -1
  8. package/docs/agents/triage-labels.md +2 -2
  9. package/docs/architecture.md +45 -45
  10. package/docs/cli.md +11 -11
  11. package/docs/command-map.md +33 -33
  12. package/docs/engine/agent-contract.md +6 -6
  13. package/docs/engine/commands.md +66 -65
  14. package/docs/engine/state-schema.md +15 -15
  15. package/docs/engine/workspace-schema.md +7 -7
  16. package/docs/extensions.md +17 -17
  17. package/docs/flow.md +17 -17
  18. package/docs/harness-compliance.md +2 -2
  19. package/docs/orchestration.md +21 -20
  20. package/docs/release.md +22 -5
  21. package/docs/research/go-authoritative-workflow-schema-and-quality-2026-07-20.md +3 -3
  22. package/docs/skills.md +77 -52
  23. package/docs/usage.md +33 -32
  24. package/engine/Makefile +2 -2
  25. package/engine/commands.go +3 -3
  26. package/engine/harnessmatrix.go +2 -2
  27. package/engine/hookpolicy.go +9 -9
  28. package/engine/hooks.go +11 -11
  29. package/engine/hooks_workspace.go +11 -11
  30. package/engine/internal/doctor/doctor.go +7 -7
  31. package/engine/internal/gate/gate.go +11 -11
  32. package/engine/internal/harness/compliance.go +1 -1
  33. package/engine/internal/harness/harness.go +7 -7
  34. package/engine/internal/install/install.go +95 -24
  35. package/engine/internal/install/install_test.go +111 -3
  36. package/engine/internal/iohooks/detach_unix.go +1 -1
  37. package/engine/internal/iohooks/iohooks.go +8 -8
  38. package/engine/internal/lib/adoption.go +1 -1
  39. package/engine/internal/lib/analyze.go +15 -15
  40. package/engine/internal/lib/archivesearch.go +3 -3
  41. package/engine/internal/lib/budget.go +3 -3
  42. package/engine/internal/lib/buildreadiness.go +6 -6
  43. package/engine/internal/lib/checkacceptance.go +10 -10
  44. package/engine/internal/lib/closeout.go +5 -5
  45. package/engine/internal/lib/conventions.go +3 -3
  46. package/engine/internal/lib/coverage.go +4 -4
  47. package/engine/internal/lib/doubtcoverage.go +9 -9
  48. package/engine/internal/lib/evidencefresh.go +6 -6
  49. package/engine/internal/lib/extensions.go +9 -9
  50. package/engine/internal/lib/footprint.go +13 -13
  51. package/engine/internal/lib/jsonout.go +2 -2
  52. package/engine/internal/lib/lanes.go +2 -2
  53. package/engine/internal/lib/learnings.go +9 -9
  54. package/engine/internal/lib/ledger.go +8 -8
  55. package/engine/internal/lib/ledger_test.go +5 -5
  56. package/engine/internal/lib/mutationgate.go +4 -4
  57. package/engine/internal/lib/overrides.go +9 -9
  58. package/engine/internal/lib/overrides_test.go +2 -2
  59. package/engine/internal/lib/packageexistence.go +5 -5
  60. package/engine/internal/lib/preamble.go +6 -6
  61. package/engine/internal/lib/progress.go +5 -5
  62. package/engine/internal/lib/reconcile.go +80 -20
  63. package/engine/internal/lib/reconcile_test.go +13 -5
  64. package/engine/internal/lib/resolve.go +3 -3
  65. package/engine/internal/lib/reviewerstats.go +2 -2
  66. package/engine/internal/lib/reviewintegrity.go +13 -13
  67. package/engine/internal/lib/reviewintegrity_test.go +6 -6
  68. package/engine/internal/lib/runbook.go +1 -1
  69. package/engine/internal/lib/session.go +1 -1
  70. package/engine/internal/lib/session_test.go +2 -2
  71. package/engine/internal/lib/specparse.go +4 -4
  72. package/engine/internal/lib/specskeleton.go +2 -2
  73. package/engine/internal/lib/specvalidate.go +13 -13
  74. package/engine/internal/lib/stuck.go +13 -13
  75. package/engine/internal/lib/templates/conventions_ledger_header.md +1 -1
  76. package/engine/internal/lib/templates/conventions_orient_header.txt +1 -1
  77. package/engine/internal/lib/testintegrity.go +9 -9
  78. package/engine/internal/lib/tickafk.go +4 -4
  79. package/engine/internal/migrate/migrate.go +2 -2
  80. package/engine/internal/migrate/migrate_test.go +1 -0
  81. package/engine/internal/orient/firstrun.go +8 -8
  82. package/engine/internal/orient/orient.go +5 -5
  83. package/engine/internal/state/concurrency_test.go +4 -4
  84. package/engine/internal/state/feature.go +6 -6
  85. package/engine/internal/state/lock_unix.go +1 -1
  86. package/engine/internal/state/schema.go +1 -1
  87. package/engine/internal/state/snapshot.go +2 -2
  88. package/engine/internal/state/write.go +1 -1
  89. package/engine/internal/version/version.go +1 -1
  90. package/engine/main.go +5 -5
  91. package/engine/subagent_orient_context.txt +4 -4
  92. package/engine/testdata/golden/TestParityA1Guard/source-edit-enforce-denies.golden +1 -1
  93. package/engine/testdata/golden/TestParityAnalyze/slug=covered.golden +2 -2
  94. package/engine/testdata/golden/TestParityAnalyze/slug=dangling.golden +3 -3
  95. package/engine/testdata/golden/TestParityAnalyze/slug=noac.golden +2 -2
  96. package/engine/testdata/golden/TestParityAnalyze/slug=order.golden +4 -4
  97. package/engine/testdata/golden/TestParityAnalyze/slug=orphan.golden +3 -3
  98. package/engine/testdata/golden/TestParityAnalyze/slug=uncovered.golden +3 -3
  99. package/engine/testdata/golden/TestParityBudget/extra-md.golden +1 -1
  100. package/engine/testdata/golden/TestParityBudget/over-advisory.golden +1 -1
  101. package/engine/testdata/golden/TestParityBudget/over-strict.golden +1 -1
  102. package/engine/testdata/golden/TestParityBuildReadiness/arg=approved.golden +1 -1
  103. package/engine/testdata/golden/TestParityBuildReadiness/arg=emptystatus.golden +1 -1
  104. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailhash.golden +1 -1
  105. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailpipe.golden +1 -1
  106. package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-ok.golden +1 -1
  107. package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-ok.golden +1 -1
  108. package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +1 -1
  109. package/engine/testdata/golden/TestParityCoverage/arg=speconly.golden +2 -2
  110. package/engine/testdata/golden/TestParityCursor/bare.golden +1 -1
  111. package/engine/testdata/golden/TestParityCursor/full-afk.golden +1 -1
  112. package/engine/testdata/golden/TestParityCursor/full-hitl.golden +1 -1
  113. package/engine/testdata/golden/TestParityCursor/red.golden +2 -2
  114. package/engine/testdata/golden/TestParityCursor/zerogates.golden +1 -1
  115. package/engine/testdata/golden/TestParityDoubtCoverage/arg=ghost.golden +1 -1
  116. package/engine/testdata/golden/TestParityDoubtCoverage/arg=inline.golden +1 -1
  117. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing-inline.golden +1 -1
  118. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing.golden +1 -1
  119. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nodoubt.golden +1 -1
  120. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nolog.golden +1 -1
  121. package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +1 -1
  122. package/engine/testdata/golden/TestParityLearnings/mine.golden +1 -1
  123. package/engine/testdata/golden/TestParityLearnings/nudge.golden +1 -1
  124. package/engine/testdata/golden/TestParityMutationGate/active-slug.golden +1 -1
  125. package/engine/testdata/golden/TestParityMutationGate/explicit-slug.golden +1 -1
  126. package/engine/testdata/golden/TestParityPackageExistence/declared.golden +1 -1
  127. package/engine/testdata/golden/TestParityPackageExistence/default-import-subpath.golden +1 -1
  128. package/engine/testdata/golden/TestParityReconcile/check-clean.golden +1 -1
  129. package/engine/testdata/golden/TestParityRedwatch/fail-writes-red.golden +1 -1
  130. package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +1 -1
  131. package/engine/testdata/golden/TestParityResolve/batch.golden +1 -1
  132. package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-devrites-agent-denies.golden +1 -1
  133. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-git-commit.golden +1 -1
  134. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-mutating.golden +1 -1
  135. package/engine/testdata/golden/TestParitySpecValidate/arg=flat.golden +1 -1
  136. package/engine/testdata/golden/TestParitySpecValidate/arg=valid/spec.md.golden +1 -1
  137. package/engine/testdata/golden/TestParitySpecValidate/arg=valid.golden +1 -1
  138. package/engine/testdata/golden/TestParityStuckCheck/custom-window-2.golden +1 -1
  139. package/engine/testdata/golden/TestParityStuckCheck/dominant.golden +1 -1
  140. package/engine/testdata/golden/TestParityStuckCheck/few.golden +1 -1
  141. package/engine/testdata/golden/TestParityStuckCheck/ghost.golden +1 -1
  142. package/engine/testdata/golden/TestParityStuckCheck/identical.golden +1 -1
  143. package/engine/testdata/golden/TestParityStuckCheck/nolog.golden +1 -1
  144. package/engine/testdata/golden/TestParityStuckCheck/pingpong.golden +1 -1
  145. package/engine/testdata/golden/TestParityStuckCheck/varied.golden +1 -1
  146. package/engine/testdata/golden/TestParityStuckCheck/window-04-identical.golden +1 -1
  147. package/engine/testdata/golden/TestParityStuckCheck/window-2.5-varied4.golden +1 -1
  148. package/engine/testdata/golden/TestParityStuckCheck/window-4x-varied4.golden +1 -1
  149. package/engine/testdata/golden/TestParityStuckCheck/window-leadspace-varied4.golden +1 -1
  150. package/engine/testdata/golden/TestParityStuckCheck/window-plus4-identical.golden +1 -1
  151. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent-subagent-type-key.golden +1 -1
  152. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent.golden +1 -1
  153. package/engine/testdata/golden/TestParityTestIntegrity/clean.golden +1 -1
  154. package/engine/testdata/golden/TestParityTickAfk/missingField.golden +1 -1
  155. package/engine/testdata/golden/TestParityTickAfk/none.golden +1 -1
  156. package/engine/testdata/golden/TestParityWrightScope/out-of-scope-enforce-denies.golden +1 -1
  157. package/engine/testdata/golden/TestSpecSkeleton/missing-some.golden +1 -1
  158. package/engine/testdata/golden/TestSpecSkeleton/present-all.golden +1 -1
  159. package/engine/tests/adr_0004_required_by_phase_test.go +2 -2
  160. package/engine/tests/adr_0006_clock_seam_test.go +1 -1
  161. package/engine/tests/budget_test.go +1 -1
  162. package/engine/tests/canonical_ac_ids_test.go +2 -2
  163. package/engine/tests/cli_test.go +1 -1
  164. package/engine/tests/concurrency_cli_test.go +1 -1
  165. package/engine/tests/gate_test.go +4 -4
  166. package/engine/tests/hook_test.go +3 -3
  167. package/engine/tests/hooks_io_test.go +1 -1
  168. package/engine/tests/lib_parity_test.go +29 -29
  169. package/engine/tests/meta_test.go +2 -2
  170. package/engine/tests/parity_closeout_test.go +1 -1
  171. package/engine/tests/parity_learnings_test.go +2 -2
  172. package/engine/tests/parity_mutationgate_test.go +2 -2
  173. package/engine/tests/parity_resolve_test.go +1 -1
  174. package/engine/tests/parity_test.go +3 -3
  175. package/engine/tests/parity_tickafk_test.go +1 -1
  176. package/engine/validatepack.go +5 -5
  177. package/engine/validatepackskills.go +9 -9
  178. package/pack/.claude/agents/devrites-code-reviewer.md +21 -22
  179. package/pack/.claude/agents/devrites-devex-reviewer.md +17 -17
  180. package/pack/.claude/agents/devrites-doubt-reviewer.md +6 -6
  181. package/pack/.claude/agents/devrites-forge-judge.md +26 -26
  182. package/pack/.claude/agents/devrites-frontend-reviewer.md +17 -17
  183. package/pack/.claude/agents/devrites-performance-reviewer.md +19 -18
  184. package/pack/.claude/agents/devrites-plan-reviewer.md +29 -27
  185. package/pack/.claude/agents/devrites-retrospector.md +19 -19
  186. package/pack/.claude/agents/devrites-security-auditor.md +15 -15
  187. package/pack/.claude/agents/devrites-simplifier-reviewer.md +14 -14
  188. package/pack/.claude/agents/devrites-slice-wright.md +52 -51
  189. package/pack/.claude/agents/devrites-spec-reviewer.md +11 -11
  190. package/pack/.claude/agents/devrites-strategy-reviewer.md +21 -21
  191. package/pack/.claude/agents/devrites-test-analyst.md +13 -13
  192. package/pack/.claude/settings.json +1 -1
  193. package/pack/.claude/skills/devrites-api-interface/SKILL.md +12 -12
  194. package/pack/.claude/skills/devrites-audit/SKILL.md +7 -7
  195. package/pack/.claude/skills/devrites-browser-proof/SKILL.md +16 -16
  196. package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  197. package/pack/.claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  198. package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  199. package/pack/.claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  200. package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  201. package/pack/.claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  202. package/pack/.claude/skills/devrites-doubt/SKILL.md +14 -14
  203. package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  204. package/pack/.claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  205. package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  206. package/pack/.claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  207. package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  208. package/pack/.claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  209. package/pack/.claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  210. package/pack/.claude/skills/devrites-interview/SKILL.md +27 -27
  211. package/pack/.claude/skills/devrites-lib/SKILL.md +18 -18
  212. package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  213. package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  214. package/pack/.claude/skills/devrites-lib/reference/standards/README.md +10 -10
  215. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  216. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  217. package/pack/.claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  218. package/pack/.claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  219. package/pack/.claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  220. package/pack/.claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  221. package/pack/.claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  222. package/pack/.claude/skills/devrites-lib/reference/standards/core.md +23 -23
  223. package/pack/.claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  224. package/pack/.claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  225. package/pack/.claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  226. package/pack/.claude/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  227. package/pack/.claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  228. package/pack/.claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  229. package/pack/.claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  230. package/pack/.claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  231. package/pack/.claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  232. package/pack/.claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  233. package/pack/.claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  234. package/pack/.claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  235. package/pack/.claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  236. package/pack/.claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  237. package/pack/.claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  238. package/pack/.claude/skills/devrites-lib/reference/standards/security.md +30 -30
  239. package/pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  240. package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  241. package/pack/.claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  242. package/pack/.claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  243. package/pack/.claude/skills/devrites-prose-craft/SKILL.md +5 -5
  244. package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  245. package/pack/.claude/skills/devrites-source-driven/SKILL.md +8 -8
  246. package/pack/.claude/skills/devrites-ux-shape/SKILL.md +33 -33
  247. package/pack/.claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  248. package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  249. package/pack/.claude/skills/rite/SKILL.md +7 -7
  250. package/pack/.claude/skills/rite/reference/menu.md +6 -6
  251. package/pack/.claude/skills/rite-adopt/SKILL.md +15 -15
  252. package/pack/.claude/skills/rite-adopt/reference/adoption.md +9 -9
  253. package/pack/.claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  254. package/pack/.claude/skills/rite-autocomplete/SKILL.md +14 -14
  255. package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  256. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +7 -7
  257. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  258. package/pack/.claude/skills/rite-build/SKILL.md +22 -22
  259. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +9 -9
  260. package/pack/.claude/skills/rite-build/reference/anti-patterns.md +6 -6
  261. package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  262. package/pack/.claude/skills/rite-build/reference/checkpoint.md +8 -8
  263. package/pack/.claude/skills/rite-build/reference/evidence-standard.md +1 -1
  264. package/pack/.claude/skills/rite-build/reference/forge.md +28 -29
  265. package/pack/.claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  266. package/pack/.claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  267. package/pack/.claude/skills/rite-build/reference/output.md +1 -1
  268. package/pack/.claude/skills/rite-build/reference/phase-contract.md +44 -44
  269. package/pack/.claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  270. package/pack/.claude/skills/rite-build/reference/tdd.md +6 -6
  271. package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  272. package/pack/.claude/skills/rite-converge/SKILL.md +17 -17
  273. package/pack/.claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  274. package/pack/.claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  275. package/pack/.claude/skills/rite-customize/SKILL.md +2 -2
  276. package/pack/.claude/skills/rite-define/SKILL.md +25 -25
  277. package/pack/.claude/skills/rite-define/reference/anti-patterns.md +5 -5
  278. package/pack/.claude/skills/rite-define/reference/gates.md +13 -13
  279. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  280. package/pack/.claude/skills/rite-doctor/SKILL.md +11 -11
  281. package/pack/.claude/skills/rite-dogfood/SKILL.md +2 -2
  282. package/pack/.claude/skills/rite-explain/SKILL.md +22 -22
  283. package/pack/.claude/skills/rite-explain/reference/intake.md +16 -16
  284. package/pack/.claude/skills/rite-frame/SKILL.md +22 -22
  285. package/pack/.claude/skills/rite-frame/reference/failure-modes.md +13 -13
  286. package/pack/.claude/skills/rite-handoff/SKILL.md +12 -12
  287. package/pack/.claude/skills/rite-learn/SKILL.md +23 -23
  288. package/pack/.claude/skills/rite-plan/SKILL.md +21 -21
  289. package/pack/.claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  290. package/pack/.claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  291. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  292. package/pack/.claude/skills/rite-plan/reference/slicing.md +9 -9
  293. package/pack/.claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  294. package/pack/.claude/skills/rite-polish/SKILL.md +11 -11
  295. package/pack/.claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  296. package/pack/.claude/skills/rite-polish/reference/backend-polish.md +13 -13
  297. package/pack/.claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  298. package/pack/.claude/skills/rite-polish/reference/code.md +26 -26
  299. package/pack/.claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  300. package/pack/.claude/skills/rite-polish/reference/ui.md +23 -23
  301. package/pack/.claude/skills/rite-pov/SKILL.md +3 -3
  302. package/pack/.claude/skills/rite-pr-feedback/SKILL.md +2 -2
  303. package/pack/.claude/skills/rite-pressure-test/SKILL.md +14 -14
  304. package/pack/.claude/skills/rite-prototype/SKILL.md +13 -13
  305. package/pack/.claude/skills/rite-prove/SKILL.md +17 -17
  306. package/pack/.claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  307. package/pack/.claude/skills/rite-prove/reference/browser-proof.md +2 -2
  308. package/pack/.claude/skills/rite-prove/reference/failure-triage.md +4 -4
  309. package/pack/.claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  310. package/pack/.claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  311. package/pack/.claude/skills/rite-quick/SKILL.md +22 -22
  312. package/pack/.claude/skills/rite-resolve/SKILL.md +18 -18
  313. package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  314. package/pack/.claude/skills/rite-review/SKILL.md +34 -34
  315. package/pack/.claude/skills/rite-review/reference/anti-patterns.md +4 -4
  316. package/pack/.claude/skills/rite-review/reference/cognitive-load.md +22 -22
  317. package/pack/.claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  318. package/pack/.claude/skills/rite-review/reference/five-axis-review.md +8 -8
  319. package/pack/.claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  320. package/pack/.claude/skills/rite-review/reference/performance-checklist.md +14 -14
  321. package/pack/.claude/skills/rite-review/reference/security-review.md +9 -9
  322. package/pack/.claude/skills/rite-seal/SKILL.md +26 -26
  323. package/pack/.claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  324. package/pack/.claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  325. package/pack/.claude/skills/rite-seal/reference/final-evidence.md +9 -9
  326. package/pack/.claude/skills/rite-seal/reference/go-no-go.md +9 -9
  327. package/pack/.claude/skills/rite-seal/reference/phase-contract.md +43 -43
  328. package/pack/.claude/skills/rite-ship/SKILL.md +12 -12
  329. package/pack/.claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  330. package/pack/.claude/skills/rite-ship/reference/close-out.md +2 -2
  331. package/pack/.claude/skills/rite-ship/reference/design-memory.md +22 -22
  332. package/pack/.claude/skills/rite-ship/reference/git-ship.md +10 -10
  333. package/pack/.claude/skills/rite-ship/reference/ledger.md +9 -9
  334. package/pack/.claude/skills/rite-ship/reference/rollout.md +11 -11
  335. package/pack/.claude/skills/rite-ship/reference/ship-template.md +1 -1
  336. package/pack/.claude/skills/rite-spec/SKILL.md +45 -45
  337. package/pack/.claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  338. package/pack/.claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  339. package/pack/.claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  340. package/pack/.claude/skills/rite-spec/reference/investigation.md +21 -21
  341. package/pack/.claude/skills/rite-spec/reference/question-protocol.md +9 -9
  342. package/pack/.claude/skills/rite-spec/reference/references-intake.md +8 -8
  343. package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  344. package/pack/.claude/skills/rite-status/SKILL.md +13 -13
  345. package/pack/.claude/skills/rite-temper/SKILL.md +29 -29
  346. package/pack/.claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  347. package/pack/.claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  348. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +16 -16
  349. package/pack/.claude/skills/rite-temper/reference/significance.md +10 -10
  350. package/pack/.claude/skills/rite-temper/reference/strategy-template.md +14 -14
  351. package/pack/.claude/skills/rite-vet/SKILL.md +31 -31
  352. package/pack/.claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  353. package/pack/.claude/skills/rite-vet/reference/artifacts.md +10 -10
  354. package/pack/.claude/skills/rite-vet/reference/cross-model.md +9 -9
  355. package/pack/.claude/skills/rite-vet/reference/depth.md +14 -14
  356. package/pack/.claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  357. package/pack/.claude/skills/rite-vet/reference/review-axes.md +28 -28
  358. package/pack/.claude/skills/rite-zoom-out/SKILL.md +18 -18
  359. package/pack/generated/claude/agents/devrites-code-reviewer.md +21 -22
  360. package/pack/generated/claude/agents/devrites-devex-reviewer.md +17 -17
  361. package/pack/generated/claude/agents/devrites-doubt-reviewer.md +6 -6
  362. package/pack/generated/claude/agents/devrites-forge-judge.md +26 -26
  363. package/pack/generated/claude/agents/devrites-frontend-reviewer.md +17 -17
  364. package/pack/generated/claude/agents/devrites-performance-reviewer.md +19 -18
  365. package/pack/generated/claude/agents/devrites-plan-reviewer.md +29 -27
  366. package/pack/generated/claude/agents/devrites-retrospector.md +19 -19
  367. package/pack/generated/claude/agents/devrites-security-auditor.md +15 -15
  368. package/pack/generated/claude/agents/devrites-simplifier-reviewer.md +14 -14
  369. package/pack/generated/claude/agents/devrites-slice-wright.md +52 -51
  370. package/pack/generated/claude/agents/devrites-spec-reviewer.md +11 -11
  371. package/pack/generated/claude/agents/devrites-strategy-reviewer.md +21 -21
  372. package/pack/generated/claude/agents/devrites-test-analyst.md +13 -13
  373. package/pack/generated/claude/settings.json +1 -1
  374. package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +12 -12
  375. package/pack/generated/claude/skills/devrites-audit/SKILL.md +7 -7
  376. package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +16 -16
  377. package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  378. package/pack/generated/claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  379. package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  380. package/pack/generated/claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  381. package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  382. package/pack/generated/claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  383. package/pack/generated/claude/skills/devrites-doubt/SKILL.md +14 -14
  384. package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  385. package/pack/generated/claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  386. package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  387. package/pack/generated/claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  388. package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  389. package/pack/generated/claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  390. package/pack/generated/claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  391. package/pack/generated/claude/skills/devrites-interview/SKILL.md +27 -27
  392. package/pack/generated/claude/skills/devrites-lib/SKILL.md +18 -18
  393. package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  394. package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  395. package/pack/generated/claude/skills/devrites-lib/reference/standards/README.md +10 -10
  396. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  397. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  398. package/pack/generated/claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  399. package/pack/generated/claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  400. package/pack/generated/claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  401. package/pack/generated/claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  402. package/pack/generated/claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  403. package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +23 -23
  404. package/pack/generated/claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  405. package/pack/generated/claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  406. package/pack/generated/claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  407. package/pack/generated/claude/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  408. package/pack/generated/claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  409. package/pack/generated/claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  410. package/pack/generated/claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  411. package/pack/generated/claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  412. package/pack/generated/claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  413. package/pack/generated/claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  414. package/pack/generated/claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  415. package/pack/generated/claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  416. package/pack/generated/claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  417. package/pack/generated/claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  418. package/pack/generated/claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  419. package/pack/generated/claude/skills/devrites-lib/reference/standards/security.md +30 -30
  420. package/pack/generated/claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  421. package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  422. package/pack/generated/claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  423. package/pack/generated/claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  424. package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +5 -5
  425. package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  426. package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +8 -8
  427. package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +33 -33
  428. package/pack/generated/claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  429. package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  430. package/pack/generated/claude/skills/rite/SKILL.md +7 -7
  431. package/pack/generated/claude/skills/rite/reference/menu.md +6 -6
  432. package/pack/generated/claude/skills/rite-adopt/SKILL.md +15 -15
  433. package/pack/generated/claude/skills/rite-adopt/reference/adoption.md +9 -9
  434. package/pack/generated/claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  435. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +14 -14
  436. package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  437. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +7 -7
  438. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  439. package/pack/generated/claude/skills/rite-build/SKILL.md +22 -22
  440. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +9 -9
  441. package/pack/generated/claude/skills/rite-build/reference/anti-patterns.md +6 -6
  442. package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  443. package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +8 -8
  444. package/pack/generated/claude/skills/rite-build/reference/evidence-standard.md +1 -1
  445. package/pack/generated/claude/skills/rite-build/reference/forge.md +28 -29
  446. package/pack/generated/claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  447. package/pack/generated/claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  448. package/pack/generated/claude/skills/rite-build/reference/output.md +1 -1
  449. package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +44 -44
  450. package/pack/generated/claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  451. package/pack/generated/claude/skills/rite-build/reference/tdd.md +6 -6
  452. package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  453. package/pack/generated/claude/skills/rite-converge/SKILL.md +17 -17
  454. package/pack/generated/claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  455. package/pack/generated/claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  456. package/pack/generated/claude/skills/rite-customize/SKILL.md +2 -2
  457. package/pack/generated/claude/skills/rite-define/SKILL.md +25 -25
  458. package/pack/generated/claude/skills/rite-define/reference/anti-patterns.md +5 -5
  459. package/pack/generated/claude/skills/rite-define/reference/gates.md +13 -13
  460. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  461. package/pack/generated/claude/skills/rite-doctor/SKILL.md +11 -11
  462. package/pack/generated/claude/skills/rite-dogfood/SKILL.md +2 -2
  463. package/pack/generated/claude/skills/rite-explain/SKILL.md +22 -22
  464. package/pack/generated/claude/skills/rite-explain/reference/intake.md +16 -16
  465. package/pack/generated/claude/skills/rite-frame/SKILL.md +22 -22
  466. package/pack/generated/claude/skills/rite-frame/reference/failure-modes.md +13 -13
  467. package/pack/generated/claude/skills/rite-handoff/SKILL.md +12 -12
  468. package/pack/generated/claude/skills/rite-learn/SKILL.md +23 -23
  469. package/pack/generated/claude/skills/rite-plan/SKILL.md +21 -21
  470. package/pack/generated/claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  471. package/pack/generated/claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  472. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  473. package/pack/generated/claude/skills/rite-plan/reference/slicing.md +9 -9
  474. package/pack/generated/claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  475. package/pack/generated/claude/skills/rite-polish/SKILL.md +11 -11
  476. package/pack/generated/claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  477. package/pack/generated/claude/skills/rite-polish/reference/backend-polish.md +13 -13
  478. package/pack/generated/claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  479. package/pack/generated/claude/skills/rite-polish/reference/code.md +26 -26
  480. package/pack/generated/claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  481. package/pack/generated/claude/skills/rite-polish/reference/ui.md +23 -23
  482. package/pack/generated/claude/skills/rite-pov/SKILL.md +3 -3
  483. package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +2 -2
  484. package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +14 -14
  485. package/pack/generated/claude/skills/rite-prototype/SKILL.md +13 -13
  486. package/pack/generated/claude/skills/rite-prove/SKILL.md +17 -17
  487. package/pack/generated/claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  488. package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +2 -2
  489. package/pack/generated/claude/skills/rite-prove/reference/failure-triage.md +4 -4
  490. package/pack/generated/claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  491. package/pack/generated/claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  492. package/pack/generated/claude/skills/rite-quick/SKILL.md +22 -22
  493. package/pack/generated/claude/skills/rite-resolve/SKILL.md +18 -18
  494. package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  495. package/pack/generated/claude/skills/rite-review/SKILL.md +34 -34
  496. package/pack/generated/claude/skills/rite-review/reference/anti-patterns.md +4 -4
  497. package/pack/generated/claude/skills/rite-review/reference/cognitive-load.md +22 -22
  498. package/pack/generated/claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  499. package/pack/generated/claude/skills/rite-review/reference/five-axis-review.md +8 -8
  500. package/pack/generated/claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  501. package/pack/generated/claude/skills/rite-review/reference/performance-checklist.md +14 -14
  502. package/pack/generated/claude/skills/rite-review/reference/security-review.md +9 -9
  503. package/pack/generated/claude/skills/rite-seal/SKILL.md +26 -26
  504. package/pack/generated/claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  505. package/pack/generated/claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  506. package/pack/generated/claude/skills/rite-seal/reference/final-evidence.md +9 -9
  507. package/pack/generated/claude/skills/rite-seal/reference/go-no-go.md +9 -9
  508. package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +43 -43
  509. package/pack/generated/claude/skills/rite-ship/SKILL.md +12 -12
  510. package/pack/generated/claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  511. package/pack/generated/claude/skills/rite-ship/reference/close-out.md +2 -2
  512. package/pack/generated/claude/skills/rite-ship/reference/design-memory.md +22 -22
  513. package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +10 -10
  514. package/pack/generated/claude/skills/rite-ship/reference/ledger.md +9 -9
  515. package/pack/generated/claude/skills/rite-ship/reference/rollout.md +11 -11
  516. package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +1 -1
  517. package/pack/generated/claude/skills/rite-spec/SKILL.md +45 -45
  518. package/pack/generated/claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  519. package/pack/generated/claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  520. package/pack/generated/claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  521. package/pack/generated/claude/skills/rite-spec/reference/investigation.md +21 -21
  522. package/pack/generated/claude/skills/rite-spec/reference/question-protocol.md +9 -9
  523. package/pack/generated/claude/skills/rite-spec/reference/references-intake.md +8 -8
  524. package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  525. package/pack/generated/claude/skills/rite-status/SKILL.md +13 -13
  526. package/pack/generated/claude/skills/rite-temper/SKILL.md +29 -29
  527. package/pack/generated/claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  528. package/pack/generated/claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  529. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +16 -16
  530. package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -10
  531. package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +14 -14
  532. package/pack/generated/claude/skills/rite-vet/SKILL.md +31 -31
  533. package/pack/generated/claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  534. package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +10 -10
  535. package/pack/generated/claude/skills/rite-vet/reference/cross-model.md +9 -9
  536. package/pack/generated/claude/skills/rite-vet/reference/depth.md +14 -14
  537. package/pack/generated/claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  538. package/pack/generated/claude/skills/rite-vet/reference/review-axes.md +28 -28
  539. package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +18 -18
  540. package/pack/generated/codex/agents/devrites-code-reviewer.toml +21 -22
  541. package/pack/generated/codex/agents/devrites-devex-reviewer.toml +17 -17
  542. package/pack/generated/codex/agents/devrites-doubt-reviewer.toml +6 -6
  543. package/pack/generated/codex/agents/devrites-forge-judge.toml +26 -26
  544. package/pack/generated/codex/agents/devrites-frontend-reviewer.toml +17 -17
  545. package/pack/generated/codex/agents/devrites-performance-reviewer.toml +19 -18
  546. package/pack/generated/codex/agents/devrites-plan-reviewer.toml +29 -27
  547. package/pack/generated/codex/agents/devrites-retrospector.toml +19 -19
  548. package/pack/generated/codex/agents/devrites-security-auditor.toml +15 -15
  549. package/pack/generated/codex/agents/devrites-simplifier-reviewer.toml +14 -14
  550. package/pack/generated/codex/agents/devrites-slice-wright.toml +52 -51
  551. package/pack/generated/codex/agents/devrites-spec-reviewer.toml +11 -11
  552. package/pack/generated/codex/agents/devrites-strategy-reviewer.toml +21 -21
  553. package/pack/generated/codex/agents/devrites-test-analyst.toml +13 -13
  554. package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +15 -15
  555. package/pack/generated/codex/skills/devrites-audit/SKILL.md +10 -10
  556. package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +19 -19
  557. package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +17 -17
  558. package/pack/generated/codex/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  559. package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  560. package/pack/generated/codex/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  561. package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  562. package/pack/generated/codex/skills/devrites-debug-recovery/reference/trace.md +4 -4
  563. package/pack/generated/codex/skills/devrites-doubt/SKILL.md +17 -17
  564. package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +20 -20
  565. package/pack/generated/codex/skills/devrites-frontend-craft/reference/craft.md +17 -17
  566. package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  567. package/pack/generated/codex/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  568. package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  569. package/pack/generated/codex/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  570. package/pack/generated/codex/skills/devrites-frontend-craft/reference/shape.md +13 -13
  571. package/pack/generated/codex/skills/devrites-interview/SKILL.md +30 -30
  572. package/pack/generated/codex/skills/devrites-lib/SKILL.md +21 -21
  573. package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +5 -5
  574. package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  575. package/pack/generated/codex/skills/devrites-lib/reference/standards/README.md +10 -10
  576. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  577. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +37 -37
  578. package/pack/generated/codex/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  579. package/pack/generated/codex/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  580. package/pack/generated/codex/skills/devrites-lib/reference/standards/code-review.md +40 -40
  581. package/pack/generated/codex/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  582. package/pack/generated/codex/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  583. package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +23 -23
  584. package/pack/generated/codex/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  585. package/pack/generated/codex/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  586. package/pack/generated/codex/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  587. package/pack/generated/codex/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  588. package/pack/generated/codex/skills/devrites-lib/reference/standards/documentation.md +4 -4
  589. package/pack/generated/codex/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  590. package/pack/generated/codex/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  591. package/pack/generated/codex/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  592. package/pack/generated/codex/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  593. package/pack/generated/codex/skills/devrites-lib/reference/standards/hooks.md +3 -3
  594. package/pack/generated/codex/skills/devrites-lib/reference/standards/observability.md +15 -15
  595. package/pack/generated/codex/skills/devrites-lib/reference/standards/patterns.md +8 -8
  596. package/pack/generated/codex/skills/devrites-lib/reference/standards/performance.md +5 -5
  597. package/pack/generated/codex/skills/devrites-lib/reference/standards/principles.md +31 -31
  598. package/pack/generated/codex/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  599. package/pack/generated/codex/skills/devrites-lib/reference/standards/security.md +30 -30
  600. package/pack/generated/codex/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  601. package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  602. package/pack/generated/codex/skills/devrites-lib/reference/standards/testing.md +40 -40
  603. package/pack/generated/codex/skills/devrites-lib/reference/standards/tooling.md +26 -26
  604. package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +8 -8
  605. package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +9 -9
  606. package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +11 -11
  607. package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +36 -36
  608. package/pack/generated/codex/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  609. package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  610. package/pack/generated/codex/skills/rite/SKILL.md +10 -10
  611. package/pack/generated/codex/skills/rite/reference/menu.md +6 -6
  612. package/pack/generated/codex/skills/rite-adopt/SKILL.md +18 -18
  613. package/pack/generated/codex/skills/rite-adopt/reference/adoption.md +9 -9
  614. package/pack/generated/codex/skills/rite-adopt/reference/anti-patterns.md +6 -6
  615. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +17 -17
  616. package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  617. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +7 -7
  618. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  619. package/pack/generated/codex/skills/rite-build/SKILL.md +25 -25
  620. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +9 -9
  621. package/pack/generated/codex/skills/rite-build/reference/anti-patterns.md +6 -6
  622. package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  623. package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +8 -8
  624. package/pack/generated/codex/skills/rite-build/reference/evidence-standard.md +1 -1
  625. package/pack/generated/codex/skills/rite-build/reference/forge.md +28 -29
  626. package/pack/generated/codex/skills/rite-build/reference/frontend-trigger.md +2 -2
  627. package/pack/generated/codex/skills/rite-build/reference/one-slice-cycle.md +3 -3
  628. package/pack/generated/codex/skills/rite-build/reference/output.md +1 -1
  629. package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +44 -44
  630. package/pack/generated/codex/skills/rite-build/reference/spec-drift-guard.md +1 -1
  631. package/pack/generated/codex/skills/rite-build/reference/tdd.md +6 -6
  632. package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +23 -23
  633. package/pack/generated/codex/skills/rite-converge/SKILL.md +20 -20
  634. package/pack/generated/codex/skills/rite-converge/reference/anti-patterns.md +7 -7
  635. package/pack/generated/codex/skills/rite-converge/reference/convergence-assessment.md +14 -14
  636. package/pack/generated/codex/skills/rite-customize/SKILL.md +5 -5
  637. package/pack/generated/codex/skills/rite-define/SKILL.md +28 -28
  638. package/pack/generated/codex/skills/rite-define/reference/anti-patterns.md +5 -5
  639. package/pack/generated/codex/skills/rite-define/reference/gates.md +13 -13
  640. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  641. package/pack/generated/codex/skills/rite-doctor/SKILL.md +14 -14
  642. package/pack/generated/codex/skills/rite-dogfood/SKILL.md +5 -5
  643. package/pack/generated/codex/skills/rite-explain/SKILL.md +25 -25
  644. package/pack/generated/codex/skills/rite-explain/reference/intake.md +16 -16
  645. package/pack/generated/codex/skills/rite-frame/SKILL.md +25 -25
  646. package/pack/generated/codex/skills/rite-frame/reference/failure-modes.md +13 -13
  647. package/pack/generated/codex/skills/rite-handoff/SKILL.md +15 -15
  648. package/pack/generated/codex/skills/rite-learn/SKILL.md +26 -26
  649. package/pack/generated/codex/skills/rite-plan/SKILL.md +24 -24
  650. package/pack/generated/codex/skills/rite-plan/reference/anti-patterns.md +3 -3
  651. package/pack/generated/codex/skills/rite-plan/reference/dependency-graph.md +1 -1
  652. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +3 -3
  653. package/pack/generated/codex/skills/rite-plan/reference/slicing.md +9 -9
  654. package/pack/generated/codex/skills/rite-plan/reference/task-breakdown.md +3 -3
  655. package/pack/generated/codex/skills/rite-polish/SKILL.md +14 -14
  656. package/pack/generated/codex/skills/rite-polish/reference/anti-patterns.md +8 -8
  657. package/pack/generated/codex/skills/rite-polish/reference/backend-polish.md +13 -13
  658. package/pack/generated/codex/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  659. package/pack/generated/codex/skills/rite-polish/reference/code.md +26 -26
  660. package/pack/generated/codex/skills/rite-polish/reference/harden-checklist.md +31 -31
  661. package/pack/generated/codex/skills/rite-polish/reference/ui.md +23 -23
  662. package/pack/generated/codex/skills/rite-pov/SKILL.md +6 -6
  663. package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +5 -5
  664. package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +17 -17
  665. package/pack/generated/codex/skills/rite-prototype/SKILL.md +16 -16
  666. package/pack/generated/codex/skills/rite-prove/SKILL.md +20 -20
  667. package/pack/generated/codex/skills/rite-prove/reference/anti-patterns.md +4 -4
  668. package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +2 -2
  669. package/pack/generated/codex/skills/rite-prove/reference/failure-triage.md +4 -4
  670. package/pack/generated/codex/skills/rite-prove/reference/proof-ladder.md +6 -6
  671. package/pack/generated/codex/skills/rite-prove/reference/test-command-discovery.md +1 -1
  672. package/pack/generated/codex/skills/rite-quick/SKILL.md +25 -25
  673. package/pack/generated/codex/skills/rite-resolve/SKILL.md +21 -21
  674. package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +7 -7
  675. package/pack/generated/codex/skills/rite-review/SKILL.md +37 -37
  676. package/pack/generated/codex/skills/rite-review/reference/anti-patterns.md +4 -4
  677. package/pack/generated/codex/skills/rite-review/reference/cognitive-load.md +22 -22
  678. package/pack/generated/codex/skills/rite-review/reference/feature-scoped-review.md +2 -2
  679. package/pack/generated/codex/skills/rite-review/reference/five-axis-review.md +8 -8
  680. package/pack/generated/codex/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  681. package/pack/generated/codex/skills/rite-review/reference/performance-checklist.md +14 -14
  682. package/pack/generated/codex/skills/rite-review/reference/security-review.md +9 -9
  683. package/pack/generated/codex/skills/rite-seal/SKILL.md +29 -29
  684. package/pack/generated/codex/skills/rite-seal/reference/anti-patterns.md +8 -8
  685. package/pack/generated/codex/skills/rite-seal/reference/conventions-ledger.md +8 -8
  686. package/pack/generated/codex/skills/rite-seal/reference/final-evidence.md +9 -9
  687. package/pack/generated/codex/skills/rite-seal/reference/go-no-go.md +9 -9
  688. package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +43 -43
  689. package/pack/generated/codex/skills/rite-ship/SKILL.md +15 -15
  690. package/pack/generated/codex/skills/rite-ship/reference/anti-patterns.md +5 -5
  691. package/pack/generated/codex/skills/rite-ship/reference/close-out.md +2 -2
  692. package/pack/generated/codex/skills/rite-ship/reference/design-memory.md +22 -22
  693. package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +10 -10
  694. package/pack/generated/codex/skills/rite-ship/reference/ledger.md +9 -9
  695. package/pack/generated/codex/skills/rite-ship/reference/rollout.md +11 -11
  696. package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +1 -1
  697. package/pack/generated/codex/skills/rite-spec/SKILL.md +48 -48
  698. package/pack/generated/codex/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  699. package/pack/generated/codex/skills/rite-spec/reference/anti-patterns.md +6 -6
  700. package/pack/generated/codex/skills/rite-spec/reference/interview-patterns.md +3 -3
  701. package/pack/generated/codex/skills/rite-spec/reference/investigation.md +21 -21
  702. package/pack/generated/codex/skills/rite-spec/reference/question-protocol.md +9 -9
  703. package/pack/generated/codex/skills/rite-spec/reference/references-intake.md +8 -8
  704. package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +19 -19
  705. package/pack/generated/codex/skills/rite-status/SKILL.md +16 -16
  706. package/pack/generated/codex/skills/rite-temper/SKILL.md +32 -32
  707. package/pack/generated/codex/skills/rite-temper/reference/anti-patterns.md +11 -11
  708. package/pack/generated/codex/skills/rite-temper/reference/review-dimensions.md +20 -20
  709. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +16 -16
  710. package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -10
  711. package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +14 -14
  712. package/pack/generated/codex/skills/rite-vet/SKILL.md +34 -34
  713. package/pack/generated/codex/skills/rite-vet/reference/anti-patterns.md +14 -14
  714. package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +10 -10
  715. package/pack/generated/codex/skills/rite-vet/reference/cross-model.md +9 -9
  716. package/pack/generated/codex/skills/rite-vet/reference/depth.md +14 -14
  717. package/pack/generated/codex/skills/rite-vet/reference/eng-lenses.md +9 -9
  718. package/pack/generated/codex/skills/rite-vet/reference/review-axes.md +28 -28
  719. package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +21 -21
  720. package/package.json +2 -2
  721. package/scripts/build-binaries.sh +1 -1
  722. package/scripts/build-host-artifacts.sh +1 -1
  723. package/scripts/build-release-tarball.sh +1 -1
  724. package/scripts/check-cross-refs.py +8 -8
  725. package/scripts/check-invocation-integrity.py +4 -4
  726. package/scripts/check-no-global-writes.sh +2 -2
  727. package/scripts/check-reply-contract.sh +1 -1
  728. package/scripts/check-rule-uniqueness.sh +2 -2
  729. package/scripts/codex-generate.sh +5 -5
  730. package/scripts/devrites-detect.sh +33 -33
  731. package/scripts/eval-runner.py +7 -7
  732. package/scripts/grade-feature.sh +14 -14
  733. package/scripts/install-lib.sh +2 -2
  734. package/scripts/pin.sh +12 -12
  735. package/scripts/run-behavioral-evals.sh +12 -12
  736. package/scripts/run-evals.sh +1 -1
  737. package/scripts/run-outcome-evals.sh +12 -12
  738. package/scripts/scan-pack-security.py +4 -4
  739. package/scripts/scan-supply-chain-iocs.py +7 -7
  740. package/scripts/skills-inventory.mjs +7 -8
  741. package/scripts/sync-version.sh +2 -2
  742. package/scripts/validate-workflow-security.py +12 -6
  743. package/scripts/validate-workspace-schema.py +2 -2
  744. package/scripts/validate.sh +7 -7
@@ -12,16 +12,16 @@ This is the Codex mirror of a DevRites skill. In Codex:
12
12
 
13
13
  - Load DevRites engineering standards from `.agents/skills/devrites-lib/reference/standards/`. Read `.agents/skills/devrites-lib/reference/standards/core.md` before workflow work, then load the other `.agents/skills/devrites-lib/reference/standards/*.md` files exactly when this skill asks for them.
14
14
  - Use the installed `devrites-engine` binary as the canonical runtime helper surface for orientation, gates, and state mutation.
15
- - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
16
- - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review** an inline pass shares the calling context and is weaker evidence.
15
+ - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here: Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
16
+ - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review**: an inline pass shares the calling context and is weaker evidence.
17
17
  - Codex project hooks are installed in `.codex/hooks.json`. Review and trust them with `/hooks` before relying on hook enforcement.
18
- - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
18
+ - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers: NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
19
19
 
20
20
 
21
- # $rite-learn the cross-feature learning loop
21
+ # $rite-learn: the cross-feature learning loop
22
22
 
23
23
  Recurring corrections, dismissed review findings, timeline decisions, and health dips are durable
24
- signal. **Capture is automatic** `$rite-seal` appends lessons to `.devrites/learnings.md` on every
24
+ signal. **Capture is automatic**: `$rite-seal` appends lessons to `.devrites/learnings.md` on every
25
25
  GO (step 9a), while the engine can keep `.devrites/timeline.jsonl`,
26
26
  `.devrites/health-history.jsonl`, and per-feature review fingerprints as supporting evidence. The
27
27
  review skills load the learning ledger **before** a fan-out, so a dismissed-finding class stops
@@ -29,22 +29,22 @@ being re-flagged without anyone running a command. The system learns as it ships
29
29
 
30
30
  `$rite-learn` is the periodic **review + promote** pass on that auto-populated ledger: cluster the
31
31
  signal across features and decide which recurring lessons graduate into a project rule. **Propose,
32
- never impose** promotion is the human's call, which is why it stays a deliberate command rather
32
+ never impose**: promotion is the human's call, which is why it stays a deliberate command rather
33
33
  than firing on its own.
34
34
 
35
35
  Read-mostly. It reads the auto-populated ledger + the archive; it writes only `.devrites/learnings.md`
36
- (consolidation, via `devrites-engine learnings`) and drafts proposed rule/ledger edits for the user to confirm
36
+ (consolidation, via `devrites-engine learnings`) and drafts proposed rule/ledger edits for the user to confirm:
37
37
  it never edits source or rule files on its own.
38
38
 
39
39
  ## Modes
40
40
 
41
- - `$rite-learn` or `$rite-learn --mine` **mine + propose** (the default).
42
- - `$rite-learn "<lesson>"` **record one lesson** directly to the ledger and stop.
41
+ - `$rite-learn` or `$rite-learn --mine`: **mine + propose** (the default).
42
+ - `$rite-learn "<lesson>"`: **record one lesson** directly to the ledger and stop.
43
43
 
44
44
  ## Workflow (mine + propose)
45
45
 
46
46
  1. **Gather the signal.** Start from the **auto-populated ledger** `.devrites/learnings.md` (seal
47
- appends to it on every GO step 9a), then run `devrites-engine learnings mine` over the archive (it clusters
47
+ appends to it on every GO: step 9a), then run `devrites-engine learnings mine` over the archive (it clusters
48
48
  repeated finding / decision / drift phrases across shipped
49
49
  features) to surface cross-feature patterns the per-feature entries don't show on their own:
50
50
  ```bash
@@ -54,38 +54,38 @@ it never edits source or rule files on its own.
54
54
  `.devrites/work/*/review-fingerprints.jsonl` as supporting evidence when they exist; do not
55
55
  promote from those traces without the same repeated-feature threshold.
56
56
  2. **Cluster + name.** Group the recurring corrections into candidate lessons. A candidate needs
57
- **≥2 occurrences across distinct features** one-offs are noise, not a pattern. Name the
57
+ **≥2 occurrences across distinct features**: one-offs are noise, not a pattern. Name the
58
58
  pattern in one specific sentence (the specificity rule from `prose-style.md` applies: a lesson
59
59
  you could swap onto any project says nothing).
60
60
  **Completion:** every candidate cites two distinct features, except a single deliberate
61
61
  rejected direction with its durable reason.
62
62
  3. **Classify each candidate** into its durable home:
63
- - **project rule** a craft/standard that belongs in a `.agents/skills/devrites-lib/reference/standards/*` file or `CLAUDE.md`.
64
- - **project principle** a recurring correction that is really a *non-negotiable invariant*
63
+ - **project rule:** a craft/standard that belongs in a `.agents/skills/devrites-lib/reference/standards/*` file or `CLAUDE.md`.
64
+ - **project principle:** a recurring correction that is really a *non-negotiable invariant*
65
65
  (not just an idiom or a craft standard): graduate it to `.devrites/principles.md`
66
- ([`principles.md`](../devrites-lib/reference/standards/principles.md)). This is the **trusted, gating** layer higher
67
- stakes than a rule so `$rite-learn` **drafts** the principle + a dated Governance entry for
66
+ ([`principles.md`](../devrites-lib/reference/standards/principles.md)). This is the **trusted, gating** layer (higher
67
+ stakes than a rule) so `$rite-learn` **drafts** the principle + a dated Governance entry for
68
68
  the human to confirm; it never writes a principle silently.
69
- - **conventions-ledger entry** a proven project idiom for `.devrites/conventions.md`.
70
- - **dismissed-finding class** a pattern reviewers keep flagging that is *intentional here*;
69
+ - **conventions-ledger entry:** a proven project idiom for `.devrites/conventions.md`.
70
+ - **dismissed-finding class:** a pattern reviewers keep flagging that is *intentional here*;
71
71
  recording it stops the recurring false positive (`learnings.md`, loaded pre-fan-out).
72
- - **rejected direction** an approach or product direction weighed and ruled out with a
72
+ - **rejected direction:** an approach or product direction weighed and ruled out with a
73
73
  reason that outlives one feature; recording it (tag `rejected-direction`) stops ideation
74
74
  skills (`$rite-pressure-test`, `$rite-pov`) from re-proposing it. Exempt from the
75
- ≥2-occurrence rule one deliberate rejection is the whole pattern.
76
- - **drop** not durable; let it go.
75
+ ≥2-occurrence rule: one deliberate rejection is the whole pattern.
76
+ - **drop:** not durable; let it go.
77
77
  4. **Propose, don't impose.** Present the candidates with their evidence (which features, how many
78
- times, the proposed home) via `AskUserQuestion` the human picks which to promote. Never
78
+ times, the proposed home) via `AskUserQuestion`: the human picks which to promote. Never
79
79
  promote a lesson to a rule silently; an unproven "lesson" hardened into a rule is its own slop.
80
80
  **Completion:** every candidate is explicitly accepted, rejected, or deferred by the human.
81
81
  5. **Record the accepted.** For each the user accepts, append it with `devrites-engine learnings add <slug>
82
82
  "<lesson>" <tag>` (`tag` ∈ `rule | convention | dismiss`). If the user approves a **rule**,
83
83
  **principle**, or **ledger** promotion, draft the exact edit and let the user confirm it through
84
- the normal flow `$rite-learn` writes the ledger, not the rule or principle files. A
84
+ the normal flow: `$rite-learn` writes the ledger, not the rule or principle files. A
85
85
  **principle** promotion is the highest-stakes of these: draft the `.devrites/principles.md` entry
86
- **plus its dated Governance line**, and let the human confirm before it lands a principle is a
86
+ **plus its dated Governance line**, and let the human confirm before it lands: a principle is a
87
87
  gate, so it is amended deliberately, never auto-written. **Amendment ripple:** a confirmed
88
- add/change/retire of a principle has a blast radius grep its `P#` (and its key nouns) across
88
+ add/change/retire of a principle has a blast radius: grep its `P#` (and its key nouns) across
89
89
  `.devrites/` and every open `.devrites/work/*/` workspace, and append to the same dated
90
90
  Governance entry one line per referencing artifact: *still-aligned* or *needs-follow-up (what)*.
91
91
  An open plan that bakes in the now-retired or now-tightened invariant is a `needs-follow-up`
@@ -99,11 +99,11 @@ The review skills (`$rite-review`, `$rite-seal`) read `.devrites/learnings.md` b
99
99
  out: a **dismissed-finding class** suppresses the recurring false positive; a **proven
100
100
  convention** raises the bar. The ideation skills (`$rite-pressure-test`, `$rite-pov`) read the
101
101
  **rejected-direction** entries before proposing, so a ruled-out direction returns only with new
102
- evidence against its recorded why. The ledger is an **untrusted prior** a fresh observation of the
102
+ evidence against its recorded why. The ledger is an **untrusted prior**: a fresh observation of the
103
103
  live code always overrides a ledger entry (see `.agents/skills/devrites-lib/reference/standards/security.md`). Confidence in a
104
104
  recorded lesson never raises its authority.
105
105
 
106
- A **project principle** (`.devrites/principles.md`) is the opposite layer prescriptive,
106
+ A **project principle** (`.devrites/principles.md`) is the opposite layer: prescriptive,
107
107
  trusted, and **gating**. Promoting a lesson there is a deliberate amendment, not a prior the next
108
108
  fan-out can override: a violation becomes a blocking finding, not a suppressed false positive.
109
109
  That asymmetry is why principle promotion is human-confirmed and dated, never auto-written.
@@ -11,13 +11,13 @@ This is the Codex mirror of a DevRites skill. In Codex:
11
11
 
12
12
  - Load DevRites engineering standards from `.agents/skills/devrites-lib/reference/standards/`. Read `.agents/skills/devrites-lib/reference/standards/core.md` before workflow work, then load the other `.agents/skills/devrites-lib/reference/standards/*.md` files exactly when this skill asks for them.
13
13
  - Use the installed `devrites-engine` binary as the canonical runtime helper surface for orientation, gates, and state mutation.
14
- - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
- - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review** an inline pass shares the calling context and is weaker evidence.
14
+ - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here: Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
+ - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review**: an inline pass shares the calling context and is weaker evidence.
16
16
  - Codex project hooks are installed in `.codex/hooks.json`. Review and trust them with `/hooks` before relying on hook enforcement.
17
- - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
17
+ - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers: NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
18
18
 
19
19
 
20
- # $rite-plan (re)plan an active feature
20
+ # $rite-plan: (re)plan an active feature
21
21
 
22
22
  Reshape the plan when reality and the plan disagree. **Read the active workspace
23
23
  first.** If `.devrites/ACTIVE` is empty or its workspace is missing, stop and tell the
@@ -29,17 +29,17 @@ editing source code.
29
29
  Pull `development-workflow.md` via `Read` when reshaping slice cadence or DoD criteria.
30
30
 
31
31
  ## Operating rules
32
- - Spec is living, not sacred but never plan around a known-wrong assumption silently.
32
+ - Spec is living, not sacred, but never plan around a known-wrong assumption silently.
33
33
  - If a change alters product behavior, scope, architecture, data model, UX, security,
34
34
  or migration risk → **ask the user first** (use the Spec Drift Guard question format).
35
35
  - Keep each slice small enough for one focused build → prove cycle.
36
- - **Slice count is derived, never dictated** reslice when a slice fails the sizing rule
36
+ - **Slice count is derived, never dictated:** reslice when a slice fails the sizing rule
37
37
  (multiple "and"s, can't build+prove in one cycle), not to hit a user-named tally. A
38
38
  requested count is a hint at most; slice logically and explain if it differs. See
39
39
  [`reference/slicing.md`](reference/slicing.md) ("How many slices?").
40
40
  - **Size by complexity, order by dependency.** A slice carries a `Complexity: N/5` score (from
41
41
  `$rite-define`); a slice scoring **>3** is a reslice trigger unless its inline reason justifies
42
- the irreducible complexity. Honor each slice's `depends_on:` the next *buildable* slice is the
42
+ the irreducible complexity. Honor each slice's `depends_on:`: the next *buildable* slice is the
43
43
  lowest pending one whose dependencies are all built (keeps one-slice-at-a-time correct, not parallel).
44
44
 
45
45
  ## Workflow
@@ -47,35 +47,35 @@ Pull `development-workflow.md` via `Read` when reshaping slice cadence or DoD cr
47
47
  Then run `devrites-engine preamble` for deterministic workspace orientation.
48
48
  1. Read `spec.md`, `plan.md`, `tasks.md`, `state.md`, `drift.md`, and the current
49
49
  `git diff` (if a repo). Read `decisions.md` and `assumptions.md`. If a code-intelligence
50
- index is available `codebase-memory-mcp` first, cross-checked with `codegraph`
50
+ index is available: `codebase-memory-mcp` first, cross-checked with `codegraph`
51
51
  (`.codegraph/` / `codegraph_*` tools) + `graphify` (`graphify-out/`), else standard methods
52
- (LSP / `Read`/`Grep`/`Glob`); see `.agents/skills/devrites-lib/reference/standards/tooling.md` —
52
+ (LSP / `Read`/`Grep`/`Glob`); see `.agents/skills/devrites-lib/reference/standards/tooling.md`:
53
53
  prefer it for structural questions (what calls X, what would
54
54
  changing Y break) over reading whole files, to keep planning context lean. For an external
55
55
  dependency's current API surface, consult context7 if available.
56
56
  2. **Pick the mode** (`$ARGUMENTS` or infer):
57
- - **decompose** first/again break the feature into vertical slices.
58
- - **reslice** a slice is too large; split into thinner end-to-end slices.
59
- - **repair** a Spec Drift Guard event; fold the resolution into plan + tasks.
60
- - **reorder** fix the dependency order.
61
- - **split** separate backend/frontend contracts (see `devrites-api-interface`).
62
- - **unblock** a verification failed; re-route around the blocker.
63
- - **course-correct** a deliberate mid-build *pivot* (the user changed their mind), distinct
57
+ - **decompose:** first/again break the feature into vertical slices.
58
+ - **reslice:** a slice is too large; split into thinner end-to-end slices.
59
+ - **repair:** a Spec Drift Guard event; fold the resolution into plan + tasks.
60
+ - **reorder:** fix the dependency order.
61
+ - **split:** separate backend/frontend contracts (see `devrites-api-interface`).
62
+ - **unblock:** a verification failed; re-route around the blocker.
63
+ - **course-correct:** a deliberate mid-build *pivot* (the user changed their mind), distinct
64
64
  from accidental drift: classify the change, assess its impact across the remaining slices,
65
65
  decide rollback vs forward-fix, and update `spec.md` + `plan.md` + `tasks.md` + `decisions.md`
66
66
  atomically. An acceptance/behavior change still goes through the user first. When the plan
67
67
  names an `MVP cut`, offer it as the retreat option: falling back to the cut is a pre-agreed
68
68
  scope, not a new negotiation.
69
- - **revise** apply a requested planning-artifact revision and reconcile existing artifacts in
69
+ - **revise:** apply a requested planning-artifact revision and reconcile existing artifacts in
70
70
  any direction; propose the file edit set first, confirm each file before writing, and **never
71
- edit source code**. **Gate first revise or new?** Same intent? >50% of existing scope
71
+ edit source code**. **Gate first: revise or new?** Same intent? >50% of existing scope
72
72
  survives? original *not* completable without this? Two "no"s → new work: recommend
73
73
  sealing/shipping the current workspace (MVP cut if named) then `$rite-spec` for the new
74
74
  intent, and stop. Revise preserves context; a new workspace provides clarity.
75
75
  See [replan-and-repair](reference/replan-and-repair.md) for each mode's steps.
76
- 3. Reason about dependencies [dependency-graph](reference/dependency-graph.md).
76
+ 3. Reason about dependencies: [dependency-graph](reference/dependency-graph.md).
77
77
  **Completion:** the slice graph is cycle-free and every dependency names an existing slice.
78
- 4. Re-slice using vertical-slice rules [slicing](reference/slicing.md) and
78
+ 4. Re-slice using vertical-slice rules: [slicing](reference/slicing.md) and
79
79
  [task-breakdown](reference/task-breakdown.md). Prefer thin, shippable, verifiable.
80
80
  **Completion:** every slice is independently shippable/provable or carries an irreducibility reason.
81
81
  5. Update `plan.md`, `tasks.md`, `state.md`, and append rationale to `decisions.md`.
@@ -83,17 +83,17 @@ Pull `development-workflow.md` via `Read` when reshaping slice cadence or DoD cr
83
83
  6. If product behavior/acceptance criteria change, confirm with the user before writing.
84
84
  **Completion:** the change is classified, and every behavior/acceptance change has explicit
85
85
  confirmation recorded before the artifacts are updated.
86
- 7. **Done when** every slice is sized (builds + proves in one cycle; no slice scoring >3
86
+ 7. **Done when:** every slice is sized (builds + proves in one cycle; no slice scoring >3
87
87
  left unjustified), the dependency order is acyclic, every `drift.md` entry you stopped for
88
88
  is marked resolved, revised artifacts agree with each other, no source files changed in
89
89
  `revise` mode, and behavior-change-vs-not is confirmed (`no`, or asked + answered).
90
- If any check fails, loop back don't hand off a half-reshaped plan.
90
+ If any check fails, loop back: don't hand off a half-reshaped plan.
91
91
 
92
- > **Mid-flight discipline.** When tempted to change product behavior without asking, absorb drift silently, or skip the user see [`anti-patterns`](reference/anti-patterns.md). Load it the moment you reach for the excuse.
92
+ > **Mid-flight discipline.** When tempted to change product behavior without asking, absorb drift silently, or skip the user: see [`anti-patterns`](reference/anti-patterns.md). Load it the moment you reach for the excuse.
93
93
 
94
94
  ## Output
95
95
 
96
- **Progress first** run `devrites-engine progress`, then use the shared completion reply contract
96
+ **Progress first**: run `devrites-engine progress`, then use the shared completion reply contract
97
97
  ([`devrites-lib/reference/reply-contract.md`](../devrites-lib/reference/reply-contract.md)).
98
98
  Default success shape:
99
99
  ```
@@ -1,4 +1,4 @@
1
- # rite-plan anti-patterns
1
+ # rite-plan: anti-patterns
2
2
 
3
3
  Load this when standing a non-trivial re-plan decision, or when the agent
4
4
  feels reluctance toward asking the user before a behavior change.
@@ -9,7 +9,7 @@ Pack-wide rationalizations + red flags: see [standards/anti-patterns.md](../../d
9
9
 
10
10
  | Excuse | Rebuttal |
11
11
  |---|---|
12
- | "User didn't ask for a re-plan." | A Spec Drift Guard event *is* a re-plan trigger ask is courtesy, the route is automatic. |
12
+ | "User didn't ask for a re-plan." | A Spec Drift Guard event *is* a re-plan trigger: ask is courtesy, the route is automatic. |
13
13
  | "I can fix the slice mid-build, no need to update tasks." | `tasks.md` is the contract `$rite-build` reads. A fix that isn't there isn't visible to the next phase. |
14
14
  | "Reordering slices is cosmetic." | Dependency order controls risk discovery; risk-first wins because it surfaces blockers early. |
15
15
  | "This drift is small enough to absorb silently." | Silent drift = unrecorded decision = future "why does this work?" debugging session. |
@@ -20,5 +20,5 @@ Pack-wide rationalizations + red flags: see [standards/anti-patterns.md](../../d
20
20
  - About to change product behavior, acceptance, or scope without asking the user.
21
21
  - `drift.md` entry unresolved while planning the next slice.
22
22
  - A "mode" invented that isn't one of `decompose / reslice / repair / reorder / split / unblock`.
23
- - Slices reordered without updating dependency notes order changed, rationale didn't.
23
+ - Slices reordered without updating dependency notes: order changed, rationale didn't.
24
24
  - Repairing a drift event by silently widening the spec rather than narrowing the plan.
@@ -16,7 +16,7 @@ SLICE-006 (config) -> independent
16
16
  ```
17
17
 
18
18
  ## Within a tier: risk-first
19
- Among slices that are equally unblocked, do the **riskiest** first the one most
19
+ Among slices that are equally unblocked, do the **riskiest** first: the one most
20
20
  likely to invalidate the plan (new integration, uncertain library behavior, migration).
21
21
  Finding drift early is cheap; finding it at seal time is not.
22
22
 
@@ -8,7 +8,7 @@ First (or fresh) breakdown into vertical slices. Use `task-breakdown.md` +
8
8
 
9
9
  ## reslice
10
10
  A slice proved too large (couldn't build+prove in one cycle, or its goal has multiple
11
- "and"s). Split into thinner end-to-end slices, preserving acceptance coverage split
11
+ "and"s). Split into thinner end-to-end slices, preserving acceptance coverage: split
12
12
  **by the sizing rule, not to a target count**. Update `tasks.md`; renumber; fix
13
13
  dependency edges.
14
14
 
@@ -20,7 +20,7 @@ A drift event stopped the build. Steps:
20
20
  reality. Adjust acceptance criteria if they were wrong.
21
21
  4. Mark the `drift.md` entry **resolved** with the resolution + date.
22
22
  5. Resume at the corrected slice.
23
- Never repair by quietly deleting the inconvenient requirement if behavior changes,
23
+ Never repair by quietly deleting the inconvenient requirement, if behavior changes,
24
24
  that was a user question.
25
25
 
26
26
  ## reorder
@@ -29,7 +29,7 @@ re-sort risk-first within tiers, update `plan.md`'s implementation order.
29
29
 
30
30
  ## split (backend/frontend contract)
31
31
  A slice couples two sides too tightly. Define the contract first (shape, status codes,
32
- errors `devrites-api-interface`), then split into a backend slice (can land with a
32
+ errors: `devrites-api-interface`), then split into a backend slice (can land with a
33
33
  stub consumer) and a frontend slice (can land against a mock/real contract).
34
34
 
35
35
  ## unblock
@@ -25,41 +25,41 @@ A slice is the right size when it:
25
25
 
26
26
  Too big if: it touches many unrelated files, or you can't name its single observable outcome.
27
27
  **The "and" test:** if the slice's *name* needs an "and" ("create **and** list tasks"), it's two
28
- slices split on the "and". → reslice.
28
+ slices: split on the "and". → reslice.
29
29
 
30
30
  Sizing isn't cosmetic. An agent builds a small or medium slice reliably in one pass but drifts on
31
31
  an outsized one, which is why a slice over `Complexity: 3/5` reslices (the `tasks.md` slice format
32
32
  in [`rite-define`](../../rite-define/SKILL.md)). Push every slice to the smallest cut that still
33
33
  stands alone end-to-end.
34
34
 
35
- ## How many slices? derive, don't dictate
35
+ ## How many slices?: derive, don't dictate
36
36
  The slice **count is an output, not an input.** It falls out of the work: one slice per
37
37
  independently-shippable vertical increment that satisfies one (or a tight group of)
38
- acceptance criteria and passes the sizing test above. A 2-criterion feature is 12 slices;
38
+ acceptance criteria and passes the sizing test above. A 2-criterion feature is 1-2 slices;
39
39
  a 12-criterion feature is however many thin end-to-end cuts those 12 need.
40
40
 
41
41
  - **Never slice to a target number.** Don't pad a small feature into "5 slices" or
42
42
  compress a large one into "3" because a figure was named.
43
43
  - **A user-supplied count is a hint at most.** If the user says "do it in 4", slice the
44
44
  work logically first; if your honest decomposition differs, present the logical count
45
- and *why*, then let them redirect don't silently force their number.
45
+ and *why*, then let them redirect: don't silently force their number.
46
46
  - **Re-size by the rule, not the tally** (`$rite-plan reslice`): split a slice because it
47
47
  failed the sizing test, not to hit a count.
48
48
 
49
- Not to be confused with `.devrites/AFK` `max_slices` — that's an AFK *iteration budget*
49
+ Not to be confused with `.devrites/AFK` `max_slices`. That's an AFK *iteration budget*
50
50
  capping how many slices the unattended loop builds before it stops, **not** the plan's
51
51
  decomposition. The plan always holds exactly the slices the work needs; `max_slices` only
52
52
  limits how many run unattended.
53
53
 
54
54
  ## First slice
55
- Make slice 1 the **thinnest useful end-to-end path** it flushes out integration and
55
+ Make slice 1 the **thinnest useful end-to-end path**. It flushes out integration and
56
56
  convention surprises early, while changes are cheap.
57
57
 
58
- **Risk-first exception.** When the biggest risk is a technical *unknown* "will this library
59
- even do X?", "can we hit the latency target?" let slice 1 (or a throwaway spike ahead of it)
58
+ **Risk-first exception.** When the biggest risk is a technical *unknown*: "will this library
59
+ even do X?", "can we hit the latency target?": let slice 1 (or a throwaway spike ahead of it)
60
60
  prove that unknown, even if it isn't the thinnest user-facing path. Fail the risky bet first,
61
61
  while pivoting is still cheap.
62
62
 
63
63
  ## Slice independence
64
64
  Order by dependency, but minimize coupling. A slice that needs three other slices first
65
- is a smell look for a thinner cut that stands alone.
65
+ is a smell: look for a thinner cut that stands alone.
@@ -24,10 +24,10 @@ This reference owns decomposition; the shared schema owns field names and meanin
24
24
  ## Keep it honest
25
25
  - **Interfaces prevent cross-slice drift.** A slice-wright sees only its own contract; the
26
26
  `Interfaces` line is how it learns the names and types neighboring slices use. A function
27
- called `clearLayers()` in slice 3 and `clearFullLayers()` in slice 7 is a planning bug
27
+ called `clearLayers()` in slice 3 and `clearFullLayers()` in slice 7 is a planning bug:
28
28
  name shared symbols once, here.
29
- - Don't pre-write code in the task describe the outcome, not the implementation.
29
+ - Don't pre-write code in the task: describe the outcome, not the implementation.
30
30
  - Don't bundle "while we're here" work into a slice. That's scope creep; log it as a
31
31
  follow-up instead.
32
- - Don't slice to a target number the count comes from the capabilities + the sizing
32
+ - Don't slice to a target number: the count comes from the capabilities + the sizing
33
33
  rule (`slicing.md`), not a figure anyone named.
@@ -11,18 +11,18 @@ This is the Codex mirror of a DevRites skill. In Codex:
11
11
 
12
12
  - Load DevRites engineering standards from `.agents/skills/devrites-lib/reference/standards/`. Read `.agents/skills/devrites-lib/reference/standards/core.md` before workflow work, then load the other `.agents/skills/devrites-lib/reference/standards/*.md` files exactly when this skill asks for them.
13
13
  - Use the installed `devrites-engine` binary as the canonical runtime helper surface for orientation, gates, and state mutation.
14
- - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
- - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review** an inline pass shares the calling context and is weaker evidence.
14
+ - When this skill asks for a DevRites specialist or writer agent, **explicitly** spawn the matching Codex custom agent from `.codex/agents/devrites-*.toml` through Codex subagents (`spawn_agent`), then wait for its result and reconcile it as the skill instructs. Do not do the review inline just because the instruction to spawn is embedded here: Codex under-fires embedded spawn/skill instructions (openai/codex #23496), so treat the spawn as required, not optional.
15
+ - The independence of a fresh-context subagent is the point. If Codex genuinely cannot spawn subagents in the current surface, run the documented inline fallback and **label the result an inline fallback, not an independent review**: an inline pass shares the calling context and is weaker evidence.
16
16
  - Codex project hooks are installed in `.codex/hooks.json`. Review and trust them with `/hooks` before relying on hook enforcement.
17
- - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
17
+ - When this skill asks a HITL question via `AskUserQuestion`: Codex's equivalent (`request_user_input`) exists only in Plan mode. Outside Plan mode, render the option set as a plain numbered list in chat and **end the turn** so the human answers: NEVER silently pick an option yourself; auto-picking is AFK's contract, gated by the `.devrites/AFK` sentinel.
18
18
 
19
19
 
20
- # $rite-polish finish before review
20
+ # $rite-polish: finish before review
21
21
 
22
22
  The "finish" phase. **Always** code-polishes; **and** runs UI normalize +
23
23
  design polish when the feature touches UI. Self-review the work to ship
24
24
  quality *before* handing it to `$rite-review`. The two-phase split (code,
25
- UI) lives in `reference/code.md` and `reference/ui.md` read each on demand,
25
+ UI) lives in `reference/code.md` and `reference/ui.md`: read each on demand,
26
26
  don't load both up front.
27
27
 
28
28
  ## Operating rules
@@ -30,7 +30,7 @@ don't load both up front.
30
30
  - **Functionality complete first.** Polish runs after `$rite-prove` (full
31
31
  feature proven).
32
32
  - Feature scope only.
33
- - For UI: **NEVER polish without normalizing first** decoration on drift is
33
+ - For UI: **NEVER polish without normalizing first**: decoration on drift is
34
34
  banned.
35
35
 
36
36
  ## Orchestration
@@ -42,7 +42,7 @@ don't load both up front.
42
42
  Then run `devrites-engine preamble` for deterministic workspace orientation.
43
43
  1. **Read** `state.md`, `touched-files.md`, and the `git diff` for the active
44
44
  workspace (or `$ARGUMENTS` if a target was given).
45
- 2. **Detect UI scope** UI is touched if the diff or `touched-files.md`
45
+ 2. **Detect UI scope:** UI is touched if the diff or `touched-files.md`
46
46
  contains any of: `.tsx`, `.jsx`, `.vue`, `.svelte`, `.html`, `.css`,
47
47
  `.scss`, `.sass`, `.less`, `.styl`, component dirs (`components/`,
48
48
  `pages/`, `routes/`, `app/`, `views/`, `screens/`), Storybook stories,
@@ -55,29 +55,29 @@ don't load both up front.
55
55
  `design-brief.md` if present (the UX/UI contract `devrites-ux-shape` shaped at spec and
56
56
  `devrites-frontend-craft` refined while building) so the polish honors the agreed
57
57
  direction + states. **Read the `## Visual Verdict` table in `browser-evidence.md` if present:
58
- its `FAIL` and `PARTIAL` rows are the normalize/quality-bar worklist** fix the root cause of
58
+ its `FAIL` and `PARTIAL` rows are the normalize/quality-bar worklist**: fix the root cause of
59
59
  each (a missing state, an off-token CTA, an anti-slop hit), don't decorate around it. Then run
60
60
  **Phase 3 (normalize)** → **Phase 4 (UI polish)**. Honor argument modes:
61
- - `bolder | quieter | distill | harden` passed to Phase 4 as the
61
+ - `bolder | quieter | distill | harden`: passed to Phase 4 as the
62
62
  emphasis dial.
63
- - `normalize-only` run Phase 3 and stop (no Phase 4).
64
- 5. **Re-verify after any code edit** polish edits code, so the proof from
63
+ - `normalize-only`: run Phase 3 and stop (no Phase 4).
64
+ 5. **Re-verify after any code edit:** polish edits code, so the proof from
65
65
  `$rite-prove` no longer post-dates it. Run the relevant fast checks (the
66
66
  targeted tests for the touched files + typecheck/lint; browser re-check if UI
67
67
  changed) and record a **`Re-verification:`** line in `polish-report.md`. A
68
68
  polish that changed code without a green re-verification isn't finished.
69
- 6. **Aggregate output** both phases append to the single `polish-report.md`.
69
+ 6. **Aggregate output:** both phases append to the single `polish-report.md`.
70
70
 
71
71
  ## Refinement modes
72
72
 
73
73
  When the user (or your own assessment) names a direction the UI should move,
74
- pass it through to Phase 4. Modes don't bypass normalize + quality-bar work
74
+ pass it through to Phase 4. Modes don't bypass normalize + quality-bar work:
75
75
  they shape the polish *after* the system is aligned. See `reference/ui.md` for
76
76
  the mode table.
77
77
 
78
78
  > **Mid-flight discipline.** When tempted to polish UI without normalize, cite
79
79
  > clean lint as proof of quality, skip Phase 2 on a backend diff, or delete a
80
- > Chesterton's Fence see [anti-patterns](reference/anti-patterns.md).
80
+ > Chesterton's Fence: see [anti-patterns](reference/anti-patterns.md).
81
81
 
82
82
  ## Output → `polish-report.md`
83
83
 
@@ -1,4 +1,4 @@
1
- # rite-polish anti-patterns
1
+ # rite-polish: anti-patterns
2
2
 
3
3
  Load this when standing a non-trivial polish decision, or when tempted to
4
4
  skip normalize, polish without Chesterton's Fence, or cite clean lint/build
@@ -12,11 +12,11 @@ Pack-wide rationalizations + red flags (incl. lint-pass-as-quality): see
12
12
  | Excuse | Rebuttal |
13
13
  |---|---|
14
14
  | "Tests pass; the feature is done." | Tests don't measure ship-quality, design drift, anti-slop, or backend polish. |
15
- | "UI looks fine to me." | Must align to the design system + meet CWV/WCAG 2.2 not match a personal taste. |
16
- | "Code is simple enough; no need to audit." | Measure first. If there's no hotspot, that's fine but record "no hotspots found", don't skip silently. |
17
- | "It's a small UI change; polish without normalize is fine." | **NO** decoration on drift is banned. Phase 3 runs before Phase 4, always. |
18
- | "Backend looks OK; skip Phase 2." | If the diff touched BE, Phase 2 runs error responses, logging hygiene, queries, anti-slop. |
19
- | "Fewer lines is simpler, so this is done." | The bar is the comprehension test, not line count: would a new reader understand it *faster* than the original? A cryptic one-liner fails it. Fewer-but-slower is churn revert it. |
15
+ | "UI looks fine to me." | Must align to the design system + meet CWV/WCAG 2.2, not match a personal taste. |
16
+ | "Code is simple enough; no need to audit." | Measure first. If there's no hotspot, that's fine, but record "no hotspots found", don't skip silently. |
17
+ | "It's a small UI change; polish without normalize is fine." | **NO**: decoration on drift is banned. Phase 3 runs before Phase 4, always. |
18
+ | "Backend looks OK; skip Phase 2." | If the diff touched BE, Phase 2 runs: error responses, logging hygiene, queries, anti-slop. |
19
+ | "Fewer lines is simpler, so this is done." | The bar is the comprehension test, not line count: would a new reader understand it *faster* than the original? A cryptic one-liner fails it. Fewer-but-slower is churn: revert it. |
20
20
 
21
21
  ## Red Flags
22
22
 
@@ -24,7 +24,7 @@ Pack-wide rationalizations + red flags (incl. lint-pass-as-quality): see
24
24
  - No browser evidence saved for a UI polish.
25
25
  - Code polish ran without naming a single technique (guard clauses, Extract Method, ...).
26
26
  - Backend was touched but `polish-report.md` shows no Phase 2 section.
27
- - A "simplification" that changes observable behavior — that's not behavior-preserving.
27
+ - A "simplification" that changes observable behavior. That's not behavior-preserving.
28
28
  - Reading a Chesterton's Fence as "looks dead" and deleting without explaining what it guards.
29
- - Simplifying, reflowing, or "tidying" a block marked `devrites:keep` / `simplify-ignore` the marker is an explicit fence; leave it in place.
29
+ - Simplifying, reflowing, or "tidying" a block marked `devrites:keep` / `simplify-ignore`: the marker is an explicit fence; leave it in place.
30
30
  - Hand-editing a >500-line simplification that a codemod / AST transform should have applied uniformly.
@@ -1,6 +1,6 @@
1
1
  # Backend polish (when backend touched)
2
2
 
3
- Runs as Phase 2 of `$rite-polish` when the feature touches server-side code handlers /
3
+ Runs as Phase 2 of `$rite-polish` when the feature touches server-side code: handlers /
4
4
  controllers / services / routes / models / migrations / queries / jobs / workers / auth /
5
5
  schemas. Polishes the **server side** to ship-quality before review, the way UI normalize
6
6
  + polish does for the client side.
@@ -17,17 +17,17 @@ schemas. Polishes the **server side** to ship-quality before review, the way UI
17
17
 
18
18
  ### Error handling (consistent + meaningful)
19
19
  - [ ] **Consistent error response shape** across endpoints (e.g. an RFC 7807 problem
20
- document or the project's existing convention). One shape not three.
20
+ document or the project's existing convention). One shape, not three.
21
21
  - [ ] **Correct HTTP / protocol status codes** (4xx for client errors, 5xx for server
22
22
  errors; not 200 with `{ error: ... }`).
23
23
  - [ ] **Custom error classes** (or equivalent) so callers can distinguish error kinds.
24
- - [ ] **Fail closed** on auth/permission/transaction errors deny + roll back; never
24
+ - [ ] **Fail closed** on auth/permission/transaction errors: deny + roll back; never
25
25
  default to allow or partial commit (`error-handling.md`, `security.md`).
26
- - [ ] **Narrow `catch`** no blanket `catch (e) {}` swallows. If you catch, recover or
26
+ - [ ] **Narrow `catch`**: no blanket `catch (e) {}` swallows. If you catch, recover or
27
27
  rethrow with context.
28
28
 
29
29
  ### Logging hygiene
30
- - [ ] **Structured logs** (key/value or JSON) with **context** request id, user/actor
30
+ - [ ] **Structured logs** (key/value or JSON) with **context**: request id, user/actor
31
31
  id, operation, duration.
32
32
  - [ ] Log the **events that matter**: failures, access violations, validation rejections,
33
33
  retries, auth events.
@@ -36,22 +36,22 @@ schemas. Polishes the **server side** to ship-quality before review, the way UI
36
36
  - [ ] No `console.log` / debug prints left in. No noisy "got here" lines.
37
37
 
38
38
  ### Data & queries
39
- - [ ] **No N+1** fetch in batches / use joins or includes.
40
- - [ ] **No unbounded result sets** pagination/limits where data can grow.
39
+ - [ ] **No N+1**: fetch in batches / use joins or includes.
40
+ - [ ] **No unbounded result sets**: pagination/limits where data can grow.
41
41
  - [ ] **Parameterized queries** only; never string-built SQL/shell/HTML.
42
42
  - [ ] **Indexes** exist for new query patterns (or recorded as a follow-up if the project
43
43
  adds them by migration).
44
- - [ ] **Transaction boundaries** are right one logical write = one transaction; rollback
44
+ - [ ] **Transaction boundaries** are right: one logical write = one transaction; rollback
45
45
  on error; no partial commits.
46
46
  - [ ] Don't return more fields than the caller needs.
47
47
 
48
48
  ### API contract
49
49
  - [ ] Response shape matches the contract the spec set (and what the UI / consumers
50
- expect match against `references/` if any).
50
+ expect: match against `references/` if any).
51
51
  - [ ] **Idempotency** where applicable (PUT/DELETE; retry-safe POSTs with idempotency
52
52
  keys).
53
53
  - [ ] **Pagination, sorting, filtering** consistent with neighboring endpoints.
54
- - [ ] **Validation at the boundary** type/length/format/range on untrusted input;
54
+ - [ ] **Validation at the boundary**: type/length/format/range on untrusted input;
55
55
  reject what doesn't match (see `security.md` three-tier).
56
56
 
57
57
  ### Performance (measure first)
@@ -67,14 +67,14 @@ schemas. Polishes the **server side** to ship-quality before review, the way UI
67
67
  - [ ] No leftover `TODO`s without an owner/issue.
68
68
  - [ ] **Migrations** are reversible where reasonable; destructive ones have rollback notes.
69
69
 
70
- ### Anti-slop (code patterns see `anti-ai-slop.md`)
70
+ ### Anti-slop (code patterns: see `anti-ai-slop.md`)
71
71
  - [ ] No over-defensive null/length checks layered redundantly.
72
72
  - [ ] No useless wrapper functions ("`function getUser(id) { return User.find(id); }`").
73
73
  - [ ] No generic AI naming (`process_data`, `handle_thing`, `do_it`).
74
74
  - [ ] No "robust" code that catches everything and hides bugs.
75
- - [ ] Didn't go **beyond the spec** implemented what the spec asked, no extras.
75
+ - [ ] Didn't go **beyond the spec**: implemented what the spec asked, no extras.
76
76
 
77
77
  ## Rules
78
78
  - Feature scope only. Don't refactor unrelated server code.
79
79
  - Re-prove after changes: targeted tests + a real request/response observation.
80
- - A polish change that breaks a test isn't behavior-preserving revert and reconsider.
80
+ - A polish change that breaks a test isn't behavior-preserving: revert and reconsider.
@@ -6,14 +6,14 @@ in `polish-report.md`).
6
6
 
7
7
  ## Required when a browser can run
8
8
  - Screenshots of the polished UI at the target viewports (375 / 768 / 1280 as relevant).
9
- **Open each screenshot and describe what's actually visible** a path is not proof.
9
+ **Open each screenshot and describe what's visible**: a path is not proof.
10
10
  - All key interaction states captured or exercised: hover, focus, active, disabled,
11
11
  loading, empty, error, success.
12
- - Console clean (no errors/warnings) captured.
13
- - No layout shift on load observed.
12
+ - Console clean (no errors/warnings): captured.
13
+ - No layout shift on load: observed.
14
14
  - Reduced-motion behavior checked if motion was added.
15
15
  - **Design references**: if the spec saved references in `.devrites/work/<slug>/references/`,
16
- compare the polished UI against them does it match the agreed target? Note any diffs.
16
+ compare the polished UI against them: does it match the agreed target? Note any diffs.
17
17
 
18
18
  ## Before/after
19
19
  Where polish changed something visible, capture a **before/after** pair. The pair is the