devrites 7.1.2 → 7.2.1

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 (297) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +9 -4
  3. package/docs/dsh.md +85 -0
  4. package/engine/internal/devritespaths/paths.go +2 -0
  5. package/engine/internal/hostpack/hostpack.go +29 -5
  6. package/engine/internal/install/apply.go +14 -2
  7. package/engine/internal/install/install.go +7 -3
  8. package/engine/internal/install/merge.go +1 -0
  9. package/engine/internal/install/preflight.go +9 -2
  10. package/engine/internal/install/update.go +1 -1
  11. package/engine/internal/lib/dispatch_packet.go +1 -1
  12. package/pack/generated/README.md +3 -1
  13. package/pack/generated/dsh/AGENTS.md +27 -0
  14. package/pack/generated/dsh/agents/devrites-code-reviewer.md +180 -0
  15. package/pack/generated/dsh/agents/devrites-devex-reviewer.md +137 -0
  16. package/pack/generated/dsh/agents/devrites-doubt-reviewer.md +100 -0
  17. package/pack/generated/dsh/agents/devrites-evidence-scout.md +93 -0
  18. package/pack/generated/dsh/agents/devrites-frontend-reviewer.md +139 -0
  19. package/pack/generated/dsh/agents/devrites-performance-reviewer.md +142 -0
  20. package/pack/generated/dsh/agents/devrites-plan-drafter.md +113 -0
  21. package/pack/generated/dsh/agents/devrites-plan-reviewer.md +167 -0
  22. package/pack/generated/dsh/agents/devrites-proof-runner.md +101 -0
  23. package/pack/generated/dsh/agents/devrites-retrospector.md +82 -0
  24. package/pack/generated/dsh/agents/devrites-security-auditor.md +146 -0
  25. package/pack/generated/dsh/agents/devrites-simplifier-reviewer.md +113 -0
  26. package/pack/generated/dsh/agents/devrites-slice-wright.md +240 -0
  27. package/pack/generated/dsh/agents/devrites-spec-reviewer.md +105 -0
  28. package/pack/generated/dsh/agents/devrites-strategy-reviewer.md +109 -0
  29. package/pack/generated/dsh/agents/devrites-test-analyst.md +110 -0
  30. package/pack/generated/dsh/agents/devrites-upgrade-planner.md +107 -0
  31. package/pack/generated/dsh/agents/fast-builder.md +92 -0
  32. package/pack/generated/dsh/agents/fast-checker.md +61 -0
  33. package/pack/generated/dsh/agents/fast-critic.md +71 -0
  34. package/pack/generated/dsh/agents/fast-planner.md +95 -0
  35. package/pack/generated/dsh/agents/overhaul-backend-engineer.md +70 -0
  36. package/pack/generated/dsh/agents/overhaul-boundary.md +64 -0
  37. package/pack/generated/dsh/agents/overhaul-craft.md +85 -0
  38. package/pack/generated/dsh/agents/overhaul-frontend-engineer.md +73 -0
  39. package/pack/generated/dsh/agents/overhaul-implementer.md +72 -0
  40. package/pack/generated/dsh/agents/overhaul-recon.md +77 -0
  41. package/pack/generated/dsh/agents/overhaul-specialist.md +67 -0
  42. package/pack/generated/dsh/agents/overhaul-verifier.md +73 -0
  43. package/pack/generated/dsh/runtime/codebase-memory.patch.yml +16 -0
  44. package/pack/generated/dsh/runtime/cordis.patch.yml +1762 -0
  45. package/pack/generated/dsh/runtime/specialist.mjs +85 -0
  46. package/pack/generated/dsh/skills/devrites-api-interface/SKILL.md +65 -0
  47. package/pack/generated/dsh/skills/devrites-audit/SKILL.md +60 -0
  48. package/pack/generated/dsh/skills/devrites-browser-proof/SKILL.md +109 -0
  49. package/pack/generated/dsh/skills/devrites-browser-proof/reference/browser-performance.md +19 -0
  50. package/pack/generated/dsh/skills/devrites-browser-proof/reference/visual-verdict.md +38 -0
  51. package/pack/generated/dsh/skills/devrites-debug-recovery/SKILL.md +119 -0
  52. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
  53. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +41 -0
  54. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/hypotheses.md +23 -0
  55. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
  56. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/regression-test.md +33 -0
  57. package/pack/generated/dsh/skills/devrites-debug-recovery/reference/trace.md +25 -0
  58. package/pack/generated/dsh/skills/devrites-doubt/SKILL.md +83 -0
  59. package/pack/generated/dsh/skills/devrites-frontend-craft/SKILL.md +89 -0
  60. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/craft.md +63 -0
  61. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/design-references.md +120 -0
  62. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
  63. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/quality-standards.md +286 -0
  64. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
  65. package/pack/generated/dsh/skills/devrites-frontend-craft/reference/shape.md +61 -0
  66. package/pack/generated/dsh/skills/devrites-interview/SKILL.md +107 -0
  67. package/pack/generated/dsh/skills/devrites-lib/SKILL.md +98 -0
  68. package/pack/generated/dsh/skills/devrites-lib/reference/candidate-integrity.md +59 -0
  69. package/pack/generated/dsh/skills/devrites-lib/reference/intent-map.md +86 -0
  70. package/pack/generated/dsh/skills/devrites-lib/reference/orchestration-profiles.md +48 -0
  71. package/pack/generated/dsh/skills/devrites-lib/reference/parallel-dispatch.md +184 -0
  72. package/pack/generated/dsh/skills/devrites-lib/reference/reply-contract.md +123 -0
  73. package/pack/generated/dsh/skills/devrites-lib/reference/standards/README.md +70 -0
  74. package/pack/generated/dsh/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +32 -0
  75. package/pack/generated/dsh/skills/devrites-lib/reference/standards/afk-hitl.md +467 -0
  76. package/pack/generated/dsh/skills/devrites-lib/reference/standards/agents.md +231 -0
  77. package/pack/generated/dsh/skills/devrites-lib/reference/standards/anti-patterns.md +50 -0
  78. package/pack/generated/dsh/skills/devrites-lib/reference/standards/architecture-health.md +64 -0
  79. package/pack/generated/dsh/skills/devrites-lib/reference/standards/assumption-checkpoints.md +42 -0
  80. package/pack/generated/dsh/skills/devrites-lib/reference/standards/audit-coverage.md +107 -0
  81. package/pack/generated/dsh/skills/devrites-lib/reference/standards/browser-proof-checklist.md +37 -0
  82. package/pack/generated/dsh/skills/devrites-lib/reference/standards/ci-cd.md +62 -0
  83. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-index.md +111 -0
  84. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-navigation.md +69 -0
  85. package/pack/generated/dsh/skills/devrites-lib/reference/standards/code-review.md +178 -0
  86. package/pack/generated/dsh/skills/devrites-lib/reference/standards/coding-style.md +53 -0
  87. package/pack/generated/dsh/skills/devrites-lib/reference/standards/context-hygiene.md +136 -0
  88. package/pack/generated/dsh/skills/devrites-lib/reference/standards/core.md +202 -0
  89. package/pack/generated/dsh/skills/devrites-lib/reference/standards/data-integrity.md +144 -0
  90. package/pack/generated/dsh/skills/devrites-lib/reference/standards/debug-recovery.md +42 -0
  91. package/pack/generated/dsh/skills/devrites-lib/reference/standards/definition-of-done.md +25 -0
  92. package/pack/generated/dsh/skills/devrites-lib/reference/standards/deprecation.md +49 -0
  93. package/pack/generated/dsh/skills/devrites-lib/reference/standards/developer-experience.md +128 -0
  94. package/pack/generated/dsh/skills/devrites-lib/reference/standards/development-workflow.md +31 -0
  95. package/pack/generated/dsh/skills/devrites-lib/reference/standards/documentation.md +55 -0
  96. package/pack/generated/dsh/skills/devrites-lib/reference/standards/duplicate-code.md +129 -0
  97. package/pack/generated/dsh/skills/devrites-lib/reference/standards/edge-case-trace.md +94 -0
  98. package/pack/generated/dsh/skills/devrites-lib/reference/standards/elicitation.md +114 -0
  99. package/pack/generated/dsh/skills/devrites-lib/reference/standards/error-handling.md +49 -0
  100. package/pack/generated/dsh/skills/devrites-lib/reference/standards/gates.md +159 -0
  101. package/pack/generated/dsh/skills/devrites-lib/reference/standards/git-workflow.md +51 -0
  102. package/pack/generated/dsh/skills/devrites-lib/reference/standards/glossary.md +40 -0
  103. package/pack/generated/dsh/skills/devrites-lib/reference/standards/hooks.md +41 -0
  104. package/pack/generated/dsh/skills/devrites-lib/reference/standards/integration-reliability.md +121 -0
  105. package/pack/generated/dsh/skills/devrites-lib/reference/standards/loop-operations.md +123 -0
  106. package/pack/generated/dsh/skills/devrites-lib/reference/standards/observability.md +90 -0
  107. package/pack/generated/dsh/skills/devrites-lib/reference/standards/one-shot-actions.md +105 -0
  108. package/pack/generated/dsh/skills/devrites-lib/reference/standards/patterns.md +70 -0
  109. package/pack/generated/dsh/skills/devrites-lib/reference/standards/performance.md +88 -0
  110. package/pack/generated/dsh/skills/devrites-lib/reference/standards/principles.md +56 -0
  111. package/pack/generated/dsh/skills/devrites-lib/reference/standards/prose-style.md +127 -0
  112. package/pack/generated/dsh/skills/devrites-lib/reference/standards/release/ship-checklist.md +12 -0
  113. package/pack/generated/dsh/skills/devrites-lib/reference/standards/repository-topology.md +82 -0
  114. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/README.md +28 -0
  115. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ci-workflows.md +50 -0
  116. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/default.md +42 -0
  117. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/go.md +47 -0
  118. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/python.md +46 -0
  119. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/react.md +55 -0
  120. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/shell.md +40 -0
  121. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/stack-profile.md +155 -0
  122. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review/ts-js.md +74 -0
  123. package/pack/generated/dsh/skills/devrites-lib/reference/standards/review-checklist.md +14 -0
  124. package/pack/generated/dsh/skills/devrites-lib/reference/standards/security-checklist.md +30 -0
  125. package/pack/generated/dsh/skills/devrites-lib/reference/standards/security.md +283 -0
  126. package/pack/generated/dsh/skills/devrites-lib/reference/standards/skill-authoring.md +269 -0
  127. package/pack/generated/dsh/skills/devrites-lib/reference/standards/spec-grammar.md +214 -0
  128. package/pack/generated/dsh/skills/devrites-lib/reference/standards/test-proof-checklist.md +18 -0
  129. package/pack/generated/dsh/skills/devrites-lib/reference/standards/testing.md +295 -0
  130. package/pack/generated/dsh/skills/devrites-lib/reference/standards/tooling.md +125 -0
  131. package/pack/generated/dsh/skills/devrites-lib/reference/standards/verification-methods.md +143 -0
  132. package/pack/generated/dsh/skills/devrites-lib/reference/standards/windows.md +60 -0
  133. package/pack/generated/dsh/skills/devrites-lib/reference/standards/workflow-artifacts.md +435 -0
  134. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
  135. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
  136. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
  137. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
  138. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
  139. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
  140. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
  141. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
  142. package/pack/generated/dsh/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
  143. package/pack/generated/dsh/skills/devrites-lib/reference/workspace-artifact-schema.md +312 -0
  144. package/pack/generated/dsh/skills/devrites-prose-craft/SKILL.md +81 -0
  145. package/pack/generated/dsh/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
  146. package/pack/generated/dsh/skills/devrites-prose-craft/reference/examples.md +136 -0
  147. package/pack/generated/dsh/skills/devrites-prose-craft/reference/structures.md +196 -0
  148. package/pack/generated/dsh/skills/devrites-source-driven/SKILL.md +54 -0
  149. package/pack/generated/dsh/skills/devrites-ux-shape/SKILL.md +135 -0
  150. package/pack/generated/dsh/skills/devrites-ux-shape/reference/brief-template.md +108 -0
  151. package/pack/generated/dsh/skills/devrites-ux-shape/reference/visual-direction-probe.md +50 -0
  152. package/pack/generated/dsh/skills/overhaul/SKILL.md +221 -0
  153. package/pack/generated/dsh/skills/overhaul/references/audit-domains.md +390 -0
  154. package/pack/generated/dsh/skills/overhaul/references/lifecycle.md +314 -0
  155. package/pack/generated/dsh/skills/overhaul/references/orchestration.md +291 -0
  156. package/pack/generated/dsh/skills/overhaul/references/records.md +203 -0
  157. package/pack/generated/dsh/skills/overhaul/references/repair-and-measurement.md +310 -0
  158. package/pack/generated/dsh/skills/overhaul/references/review-and-report.md +139 -0
  159. package/pack/generated/dsh/skills/overhaul/references/scope-and-safety.md +233 -0
  160. package/pack/generated/dsh/skills/overhaul/references/scoring.md +261 -0
  161. package/pack/generated/dsh/skills/overhaul/references/stack-profiles.md +316 -0
  162. package/pack/generated/dsh/skills/rite/SKILL.md +157 -0
  163. package/pack/generated/dsh/skills/rite/reference/menu.md +49 -0
  164. package/pack/generated/dsh/skills/rite-adopt/SKILL.md +64 -0
  165. package/pack/generated/dsh/skills/rite-adopt/reference/adoption.md +25 -0
  166. package/pack/generated/dsh/skills/rite-adopt/reference/anti-patterns.md +19 -0
  167. package/pack/generated/dsh/skills/rite-autocomplete/SKILL.md +167 -0
  168. package/pack/generated/dsh/skills/rite-autocomplete/reference/decision-policy.md +44 -0
  169. package/pack/generated/dsh/skills/rite-autocomplete/reference/lookahead.md +50 -0
  170. package/pack/generated/dsh/skills/rite-autocomplete/reference/loop.md +164 -0
  171. package/pack/generated/dsh/skills/rite-autocomplete/reference/stop-conditions.md +118 -0
  172. package/pack/generated/dsh/skills/rite-build/SKILL.md +126 -0
  173. package/pack/generated/dsh/skills/rite-build/reference/afk-discipline.md +153 -0
  174. package/pack/generated/dsh/skills/rite-build/reference/anti-patterns.md +27 -0
  175. package/pack/generated/dsh/skills/rite-build/reference/checkpoint-protocol.md +115 -0
  176. package/pack/generated/dsh/skills/rite-build/reference/checkpoint.md +79 -0
  177. package/pack/generated/dsh/skills/rite-build/reference/frontend-trigger.md +39 -0
  178. package/pack/generated/dsh/skills/rite-build/reference/one-slice-cycle.md +57 -0
  179. package/pack/generated/dsh/skills/rite-build/reference/output.md +29 -0
  180. package/pack/generated/dsh/skills/rite-build/reference/parallel-batch.md +260 -0
  181. package/pack/generated/dsh/skills/rite-build/reference/phase-contract.md +130 -0
  182. package/pack/generated/dsh/skills/rite-build/reference/spec-drift-guard.md +91 -0
  183. package/pack/generated/dsh/skills/rite-build/reference/tdd.md +27 -0
  184. package/pack/generated/dsh/skills/rite-build/reference/wright-dispatch.md +198 -0
  185. package/pack/generated/dsh/skills/rite-clarify/SKILL.md +104 -0
  186. package/pack/generated/dsh/skills/rite-clarify/reference/anti-patterns.md +24 -0
  187. package/pack/generated/dsh/skills/rite-clarify/reference/decision-coverage.md +56 -0
  188. package/pack/generated/dsh/skills/rite-converge/SKILL.md +167 -0
  189. package/pack/generated/dsh/skills/rite-converge/reference/anti-patterns.md +35 -0
  190. package/pack/generated/dsh/skills/rite-converge/reference/convergence-assessment.md +70 -0
  191. package/pack/generated/dsh/skills/rite-customize/SKILL.md +64 -0
  192. package/pack/generated/dsh/skills/rite-define/SKILL.md +203 -0
  193. package/pack/generated/dsh/skills/rite-define/reference/anti-patterns.md +26 -0
  194. package/pack/generated/dsh/skills/rite-define/reference/gates.md +160 -0
  195. package/pack/generated/dsh/skills/rite-define/reference/plan-template.md +153 -0
  196. package/pack/generated/dsh/skills/rite-doctor/SKILL.md +107 -0
  197. package/pack/generated/dsh/skills/rite-dogfood/SKILL.md +57 -0
  198. package/pack/generated/dsh/skills/rite-explain/SKILL.md +154 -0
  199. package/pack/generated/dsh/skills/rite-explain/reference/intake.md +89 -0
  200. package/pack/generated/dsh/skills/rite-fast/SKILL.md +185 -0
  201. package/pack/generated/dsh/skills/rite-fast/reference/artifacts.md +107 -0
  202. package/pack/generated/dsh/skills/rite-fast/reference/check-and-triage.md +51 -0
  203. package/pack/generated/dsh/skills/rite-frame/SKILL.md +119 -0
  204. package/pack/generated/dsh/skills/rite-frame/reference/failure-modes.md +66 -0
  205. package/pack/generated/dsh/skills/rite-handoff/SKILL.md +117 -0
  206. package/pack/generated/dsh/skills/rite-handoff/reference/handoff-template.md +56 -0
  207. package/pack/generated/dsh/skills/rite-harness/SKILL.md +76 -0
  208. package/pack/generated/dsh/skills/rite-harness/reference/feature-map.md +60 -0
  209. package/pack/generated/dsh/skills/rite-learn/SKILL.md +107 -0
  210. package/pack/generated/dsh/skills/rite-plan/SKILL.md +215 -0
  211. package/pack/generated/dsh/skills/rite-plan/reference/anti-patterns.md +34 -0
  212. package/pack/generated/dsh/skills/rite-plan/reference/dependency-graph.md +48 -0
  213. package/pack/generated/dsh/skills/rite-plan/reference/replan-and-repair.md +114 -0
  214. package/pack/generated/dsh/skills/rite-plan/reference/slicing.md +187 -0
  215. package/pack/generated/dsh/skills/rite-plan/reference/task-breakdown.md +50 -0
  216. package/pack/generated/dsh/skills/rite-polish/SKILL.md +128 -0
  217. package/pack/generated/dsh/skills/rite-polish/reference/adr-promotion.md +11 -0
  218. package/pack/generated/dsh/skills/rite-polish/reference/anti-ai-slop.md +210 -0
  219. package/pack/generated/dsh/skills/rite-polish/reference/anti-patterns.md +30 -0
  220. package/pack/generated/dsh/skills/rite-polish/reference/backend-polish.md +80 -0
  221. package/pack/generated/dsh/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
  222. package/pack/generated/dsh/skills/rite-polish/reference/code.md +87 -0
  223. package/pack/generated/dsh/skills/rite-polish/reference/design-memory.md +117 -0
  224. package/pack/generated/dsh/skills/rite-polish/reference/design-system-discovery.md +8 -0
  225. package/pack/generated/dsh/skills/rite-polish/reference/harden-checklist.md +110 -0
  226. package/pack/generated/dsh/skills/rite-polish/reference/ledger.md +67 -0
  227. package/pack/generated/dsh/skills/rite-polish/reference/ui.md +146 -0
  228. package/pack/generated/dsh/skills/rite-pov/SKILL.md +71 -0
  229. package/pack/generated/dsh/skills/rite-pr-feedback/SKILL.md +61 -0
  230. package/pack/generated/dsh/skills/rite-pressure-test/SKILL.md +76 -0
  231. package/pack/generated/dsh/skills/rite-prototype/SKILL.md +106 -0
  232. package/pack/generated/dsh/skills/rite-prove/SKILL.md +151 -0
  233. package/pack/generated/dsh/skills/rite-prove/reference/acceptance-proof.md +88 -0
  234. package/pack/generated/dsh/skills/rite-prove/reference/anti-patterns.md +25 -0
  235. package/pack/generated/dsh/skills/rite-prove/reference/browser-proof.md +51 -0
  236. package/pack/generated/dsh/skills/rite-prove/reference/failure-triage.md +53 -0
  237. package/pack/generated/dsh/skills/rite-prove/reference/proof-ladder.md +39 -0
  238. package/pack/generated/dsh/skills/rite-prove/reference/test-command-discovery.md +36 -0
  239. package/pack/generated/dsh/skills/rite-quick/SKILL.md +97 -0
  240. package/pack/generated/dsh/skills/rite-resolve/SKILL.md +113 -0
  241. package/pack/generated/dsh/skills/rite-resolve/reference/answer-protocol.md +129 -0
  242. package/pack/generated/dsh/skills/rite-review/SKILL.md +190 -0
  243. package/pack/generated/dsh/skills/rite-review/reference/anti-patterns.md +32 -0
  244. package/pack/generated/dsh/skills/rite-review/reference/cognitive-load.md +90 -0
  245. package/pack/generated/dsh/skills/rite-review/reference/feature-scoped-review.md +26 -0
  246. package/pack/generated/dsh/skills/rite-review/reference/five-axis-review.md +66 -0
  247. package/pack/generated/dsh/skills/rite-review/reference/nielsen-heuristics.md +126 -0
  248. package/pack/generated/dsh/skills/rite-review/reference/performance-checklist.md +99 -0
  249. package/pack/generated/dsh/skills/rite-review/reference/performance-review.md +14 -0
  250. package/pack/generated/dsh/skills/rite-review/reference/security-review.md +44 -0
  251. package/pack/generated/dsh/skills/rite-seal/SKILL.md +99 -0
  252. package/pack/generated/dsh/skills/rite-seal/reference/anti-patterns.md +29 -0
  253. package/pack/generated/dsh/skills/rite-seal/reference/final-evidence.md +41 -0
  254. package/pack/generated/dsh/skills/rite-seal/reference/go-no-go.md +32 -0
  255. package/pack/generated/dsh/skills/rite-seal/reference/output.md +5 -0
  256. package/pack/generated/dsh/skills/rite-seal/reference/phase-contract.md +56 -0
  257. package/pack/generated/dsh/skills/rite-seal/reference/risk-and-rollback.md +56 -0
  258. package/pack/generated/dsh/skills/rite-seal/reference/seal-template.md +32 -0
  259. package/pack/generated/dsh/skills/rite-ship/SKILL.md +101 -0
  260. package/pack/generated/dsh/skills/rite-ship/reference/anti-patterns.md +28 -0
  261. package/pack/generated/dsh/skills/rite-ship/reference/close-out.md +69 -0
  262. package/pack/generated/dsh/skills/rite-ship/reference/git-ship.md +128 -0
  263. package/pack/generated/dsh/skills/rite-ship/reference/rollout.md +62 -0
  264. package/pack/generated/dsh/skills/rite-ship/reference/ship-template.md +40 -0
  265. package/pack/generated/dsh/skills/rite-spec/SKILL.md +169 -0
  266. package/pack/generated/dsh/skills/rite-spec/reference/acceptance-criteria.md +31 -0
  267. package/pack/generated/dsh/skills/rite-spec/reference/ai-spec-template.md +40 -0
  268. package/pack/generated/dsh/skills/rite-spec/reference/anti-patterns.md +27 -0
  269. package/pack/generated/dsh/skills/rite-spec/reference/interview-patterns.md +56 -0
  270. package/pack/generated/dsh/skills/rite-spec/reference/investigation.md +83 -0
  271. package/pack/generated/dsh/skills/rite-spec/reference/question-protocol.md +36 -0
  272. package/pack/generated/dsh/skills/rite-spec/reference/references-intake.md +62 -0
  273. package/pack/generated/dsh/skills/rite-spec/reference/spec-checklists.md +89 -0
  274. package/pack/generated/dsh/skills/rite-spec/reference/spec-template.md +160 -0
  275. package/pack/generated/dsh/skills/rite-spec/reference/state-workspace.md +240 -0
  276. package/pack/generated/dsh/skills/rite-status/SKILL.md +74 -0
  277. package/pack/generated/dsh/skills/rite-temper/SKILL.md +137 -0
  278. package/pack/generated/dsh/skills/rite-temper/reference/anti-patterns.md +30 -0
  279. package/pack/generated/dsh/skills/rite-temper/reference/review-dimensions.md +66 -0
  280. package/pack/generated/dsh/skills/rite-temper/reference/scope-modes.md +52 -0
  281. package/pack/generated/dsh/skills/rite-temper/reference/significance.md +55 -0
  282. package/pack/generated/dsh/skills/rite-temper/reference/strategy-template.md +101 -0
  283. package/pack/generated/dsh/skills/rite-upgrade/SKILL.md +142 -0
  284. package/pack/generated/dsh/skills/rite-vet/SKILL.md +242 -0
  285. package/pack/generated/dsh/skills/rite-vet/reference/anti-patterns.md +43 -0
  286. package/pack/generated/dsh/skills/rite-vet/reference/artifacts.md +248 -0
  287. package/pack/generated/dsh/skills/rite-vet/reference/cross-model.md +19 -0
  288. package/pack/generated/dsh/skills/rite-vet/reference/depth.md +59 -0
  289. package/pack/generated/dsh/skills/rite-vet/reference/eng-lenses.md +48 -0
  290. package/pack/generated/dsh/skills/rite-vet/reference/review-axes.md +210 -0
  291. package/pack/generated/dsh/skills/rite-watch-pr/SKILL.md +87 -0
  292. package/pack/generated/dsh/skills/rite-zoom-out/SKILL.md +76 -0
  293. package/package.json +3 -1
  294. package/scripts/build-host-artifacts.sh +6 -2
  295. package/scripts/dsh-generate.py +165 -0
  296. package/scripts/dsh-specialist.mjs +85 -0
  297. package/scripts/install-lib.sh +3 -1
@@ -0,0 +1,390 @@
1
+ # Audit domains: the floor, not the ceiling
2
+
3
+ ## Contents
4
+
5
+ - [Applicability matrix](#applicability-matrix)
6
+ - [Correctness and data integrity](#correctness-and-data-integrity)
7
+ - [Database, queries, migrations and storage](#database-queries-migrations-and-storage)
8
+ - [Concurrency, caching, retries and distributed reliability](#concurrency-caching-retries-and-distributed-reliability)
9
+ - [Security, privacy and trust boundaries](#security-privacy-and-trust-boundaries)
10
+ - [Architecture, maintainability and anti-slop](#architecture-maintainability-and-anti-slop)
11
+ - [Over-engineering and dead weight](#over-engineering-and-dead-weight)
12
+ - [Tests and verification quality](#tests-and-verification-quality)
13
+ - [Dependencies and supply chain](#dependencies-and-supply-chain)
14
+ - [Backend performance](#backend-performance)
15
+ - [Frontend engineering](#frontend-engineering)
16
+ - [Frontend craft, interaction and accessibility](#frontend-craft-interaction-and-accessibility)
17
+ - [Classifying frontend guidance](#classifying-frontend-guidance)
18
+ - [Cross-layer contracts](#cross-layer-contracts)
19
+ - [Public API and developer experience](#public-api-and-developer-experience)
20
+ - [Documentation](#documentation)
21
+ - [Operations and project-specific extensions](#operations-and-project-specific-extensions)
22
+
23
+ ## Applicability matrix
24
+
25
+ Before a review shard starts, build the matrix domain × component × lane × active
26
+ profile and record it in `coverage.json` `applicability[]` (`domain` as one of the
27
+ eight [score keys](scoring.md#audit-sections-and-score-domains), `component`, `lane`,
28
+ `state`, `reason`, `receipts[]`). Each cell is `applicable` (reviewed under the
29
+ correct semantics), `not-applicable` (with a reason and evidence), or `blocked` (with
30
+ the missing capability). Missing expertise, tools or browser access is `blocked`,
31
+ never `not-applicable`. Extend the matrix for discovered stacks, risks and
32
+ requirements. Every item below is a question to answer with evidence, not a finding
33
+ to assume. A cell is closed only by an admitted receipt that lists its domain in
34
+ `domains_checked`; a cell with no such receipt is not checked, never clean, and
35
+ `G-COVERAGE` cannot pass over it.
36
+
37
+ ## Correctness and data integrity
38
+
39
+ Check: business invariants across API, service, job, database and UI; validation
40
+ versus normalization; null, empty and missing as distinct; boundaries and
41
+ off-by-one; precision, overflow, currency, units and rounding; locale, time zones,
42
+ DST and clocks; exhaustive enum, union and state-machine handling;
43
+ authorization-sensitive defaults; partial implementations, stubbed success and fake
44
+ integrations; unreachable flows; TODOs in required behavior; silently ignored
45
+ errors; dead code; schema/application disagreement; serialization and version drift;
46
+ undocumented behavior changes.
47
+
48
+ Trace reads and writes through the whole use case. Prove uniqueness, referential
49
+ integrity, tenant scoping, ordering, pagination, deletion and retention, and
50
+ invariants under failure and concurrency, not only the happy path. Identify the
51
+ authoritative contract; when code, docs and tests disagree, ask.
52
+
53
+ ## Database, queries, migrations and storage
54
+
55
+ Check: N+1 and repeated queries; over-fetching; unbounded results; joins and
56
+ cardinality; fan-out; pagination strategy; aggregates, sorting, filtering;
57
+ parameterization; query shape and planner estimates; indexes and selectivity; lock
58
+ duration; connection pools; transaction scope and isolation; deadlocks; stale
59
+ replicas and read-after-write needs; backfills; large-table and mixed-version
60
+ migrations; constraints; rollback.
61
+
62
+ Judge indexes by cost and benefit: never recommend one from a filter alone, never
63
+ treat every sequential scan as a bug, and weigh realistic cardinality and skew, the
64
+ engine and version, read/write mix, write amplification, storage, maintenance and
65
+ deployment locks (for example PostgreSQL `CREATE INDEX CONCURRENTLY` cannot run in a
66
+ transaction and needs a failed-build cleanup). Measure app-visible latency and query
67
+ count as well as plans. `EXPLAIN ANALYZE` executes the statement: use it only in an
68
+ authorized disposable environment.
69
+
70
+ ## Concurrency, caching, retries and distributed reliability
71
+
72
+ Check: check-then-act races; lost updates; write skew; stale reads; ABA and TOCTOU
73
+ where relevant; lock ordering; atomicity; cancellation; leaked tasks, goroutines or
74
+ threads; shared mutable state; async context; transaction retry boundaries; cache
75
+ keys and invalidation; tenant-aware caches; stampedes; stale authorization
76
+ decisions; duplicate and out-of-order messages; idempotency key scope and expiry;
77
+ atomic side-effect recording; poison jobs; queue starvation and backpressure; retry
78
+ amplification; timeout budgets; jitter; circuit breaking; recovery after partial
79
+ completion.
80
+
81
+ Prove interleavings deterministically with barriers or a controllable scheduler,
82
+ never arbitrary sleeps. Distinguish data races from logical races; a race detector
83
+ covers only the first. Retries must preserve intent and handle outcomes unknown to
84
+ the caller; never retry non-idempotent work indiscriminately.
85
+
86
+ ## Security, privacy and trust boundaries
87
+
88
+ Map assets, entry points, principals, privileges, tenants, trust transitions and
89
+ sensitive outputs first. Then check as applicable: authentication, authorization and
90
+ ownership checks; session and token lifetimes; credentials; injection; path
91
+ traversal; uploads; deserialization; SSRF; XSS; CSRF; CORS; browser messaging; cache
92
+ poisoning; request framing; cryptographic misuse; unsafe defaults; resource
93
+ exhaustion; sensitive logs; privacy and data lifecycle; local IPC; CI/build
94
+ permissions; IaC and container configuration; supply-chain entry points.
95
+
96
+ For AI-facing software add: untrusted retrieved, repository or tool content; prompt
97
+ injection; model-output validation; tool authorization and approval binding (tool,
98
+ full arguments, requester, target, expiry — a retry or resumed session must not
99
+ authorize a changed or duplicate side effect); RAG poisoning; excessive privileges;
100
+ agent state poisoning; secret exfiltration paths. A guardrail prompt is not a
101
+ security boundary.
102
+
103
+ A confirmed finding shows the lower-trust principal, the input, the boundary crossed,
104
+ the affected resource and the concrete effect, traced entry point → propagation →
105
+ sink. A missing defense-in-depth layer is hardening, not an exploit. Validate only in
106
+ authorized local or test scope. Map to CWE (base or variant level, pinned list
107
+ version) or an ASVS requirement (`v5.0.0-x.y.z` style) only after looking the ID up;
108
+ `unmapped` is an honest outcome, and no CWE↔ASVS link may be inferred.
109
+
110
+ ## Architecture, maintainability and anti-slop
111
+
112
+ Check: real dependency direction and cycles; responsibility boundaries; hidden
113
+ globals; duplicated sources of truth; over-centralized modules; abstraction leakage;
114
+ expensive coupling; error semantics; resource ownership; unsafe casts and type
115
+ escapes; broad catches; shotgun changes; superficial wrappers; cargo-cult patterns;
116
+ speculative infrastructure; copy-paste divergence; placeholder code;
117
+ performance-obscuring indirection. Complexity without a current need has its own
118
+ floor in [Over-engineering and dead weight](#over-engineering-and-dead-weight).
119
+
120
+ A refactor needs a concrete defect, inconsistency, maintenance cost or measurable
121
+ risk. Never rewrite working idiomatic code toward a personal style. Similar-looking
122
+ code is a lead, not proof of one abstraction: verify behavior before consolidating.
123
+ Never remove defensive checks, audit logs, comments explaining invariants,
124
+ intentional compatibility layers or legal notices as "slop". "Slop" means an
125
+ observable defect or unhelpful prose, never a claim about who wrote the code.
126
+ Prose clean-up applies only to approved docs, comments or report text and must keep
127
+ facts, terminology, identifiers and meaning. No UI or copy change rides on a backend
128
+ approval.
129
+
130
+ ## Over-engineering and dead weight
131
+
132
+ Code that serves no current requirement still costs reading, testing, securing and
133
+ migrating. Agent-written code shows these patterns more often — larger patches, more
134
+ duplicated blocks, fewer reuses of existing helpers — but authorship is never
135
+ evidence: check every codebase the same way. Tag each candidate with its cheapest cut:
136
+
137
+ - `delete`: unreferenced code, exports, routes, flags, config keys and environment
138
+ variables; scratch and debug files, commented-out blocks, leftover debug output;
139
+ parameters and options every caller leaves at the default; compatibility shims,
140
+ aliases and "legacy" branches for forms that never shipped; features and edge-case
141
+ paths no requirement, caller or test needs.
142
+ - `yagni`: an interface, abstract base or protocol with one implementation (fakes
143
+ count); a factory, builder, registry or plugin system with one product; a type
144
+ parameter used with one type; a strategy, hook or options bag nobody varies; a
145
+ layer that only passes data along; configuration or a flag whose value never
146
+ differs across real deployments.
147
+ - `reuse`: a near-duplicate of a helper, type or pattern that already exists under
148
+ another name. Search by what the code does, not by its name.
149
+ - `stdlib` / `native`: hand-written code that the standard library, the platform
150
+ (HTML, CSS, database constraints, the runtime) or an installed dependency already
151
+ provides. Name the replacement and the version that has it.
152
+ - `dependency`: a package used for a few lines, a manifest entry nothing imports, two
153
+ packages doing one job, or a name that does not resolve on its registry
154
+ (hallucinated or typosquat risk: route to security).
155
+ - `shrink`: wrappers that only delegate; single-use helpers whose name says no more
156
+ than their body; checks for states the types or an internal caller already exclude;
157
+ the same validation repeated across internal layers; broad catches and
158
+ success-shaped fallbacks that hide failure; retries, timeouts or circuit breakers
159
+ around local work, or nested retry layers; caching without a measurement; one error
160
+ logged at every layer; comments and docstrings that restate the code.
161
+
162
+ Evidence for each candidate: the population count (implementations, callers,
163
+ non-default arguments, importers, values across deploy configuration) with tool,
164
+ scope and file count reconciled with `git ls-files`, covering tests, reflection and
165
+ string dispatch, dependency injection, generated code, entry points (CLI, handlers,
166
+ plugins, serverless), public exports and external consumers; history (`git log -S`)
167
+ showing whether the form shipped or the value ever varied; the lines and dependencies
168
+ removable; and the concrete cost. Dead-code, unused-dependency and clone tools yield
169
+ candidates, not findings; token clone detectors miss renamed copies, so a low
170
+ duplication figure proves nothing.
171
+
172
+ Never flag: validation at trust boundaries (user input, network, files,
173
+ deserialization, environment, IPC) — generated code misses these more often than it
174
+ repeats them; exported, published or persisted contracts and their documented
175
+ migration windows; test seams that tests use; real plural implementations, including
176
+ fakes and plugins; audit, security and compliance logging; caching, retries or
177
+ low-level code backed by a linked measurement, incident or SLO; decisions recorded in
178
+ an ADR (report a mismatch with the ADR instead); refactoring and tests that make
179
+ change easier; a single smoke test or assertion self-check. When nobody can say why
180
+ code exists, check its history and owners before proposing removal.
181
+
182
+ Severity follows consequence: most cuts are low or medium `maintainability`.
183
+ Duplicated logic that can diverge on money, authorization, tenancy or time is a
184
+ correctness finding; a swallowed error is correctness or reliability; an unresolvable
185
+ dependency is security.
186
+
187
+ ## Tests and verification quality
188
+
189
+ Check assertion strength, observable behavior, unhappy paths, boundaries, state
190
+ transitions, retries, races, idempotency, time dependence, migrations, rollback,
191
+ compatibility, tenant and security isolation, service contracts, flakiness and test
192
+ isolation. Mocks must not remove the database, network or concurrency behavior the
193
+ defect lives in. Confirm tests are discovered and actually run. Detect flakiness by rerunning, in
194
+ random order with a recorded seed (`go test -shuffle=on -count=N`, `pytest -p
195
+ randomly`, Jest `--randomize`): a test that fails then passes on unchanged code is
196
+ flaky and cannot serve as an oracle; order dependence is its most common cause.
197
+ Flag tautological
198
+ tests (asserting what a mock returns, or only "not null"), mocks of internal
199
+ collaborators or of the unit under test, near-duplicate tests that differ by one
200
+ literal, and production code special-cased to pass a test.
201
+
202
+ Line and branch coverage locate gaps; they never prove correctness. Use focused
203
+ mutation testing, property-based tests, fuzzing, differential checks or fault
204
+ injection where they fit; keep counterexamples and seeds; inspect surviving mutants
205
+ and account for equivalent or invalid mutants and tool limits. Never write tests
206
+ that merely restate the implementation.
207
+
208
+ ## Dependencies and supply chain
209
+
210
+ Inventory direct and transitive **resolved** versions, their runtime/build/test
211
+ roles, origins, licenses, support and end-of-life status, advisories, deprecated
212
+ APIs, provenance, integrity and install scripts, plus the unused, redundant or
213
+ unresolvable entries named under [Over-engineering and dead weight](#over-engineering-and-dead-weight). Verify the latest compatible and
214
+ the latest upstream versions separately against official registries, releases and
215
+ advisories at run time; "newer" alone justifies nothing.
216
+
217
+ For serious candidates compare keep, minimal patch, compatible upgrade, major
218
+ upgrade, replacement and removal on behavior and API differences, maturity, platform
219
+ support, maintenance, migration cost, transitive risk, bundle/startup/runtime
220
+ effect, licensing, rollback and tests. Consider "no change" seriously; stars and
221
+ novelty are not evidence. Use OSV or the ecosystem's advisory tooling; an advisory
222
+ match is not proven reachability, and a reachability tool that cannot prove use does
223
+ not prove safety. Unavailable advisory access is `UNKNOWN`. OpenSSF Scorecard
224
+ informs supply-chain practice only. Any dependency change needs plan approval; no
225
+ blind force-upgrades or blanket churn.
226
+
227
+ ## Backend performance
228
+
229
+ Profile algorithms and hot paths, database, IO and network behavior, allocation and
230
+ GC, CPU contention, event-loop blocking, thread and connection pools, fan-out,
231
+ serialization, compression, cold start, batch behavior, memory leaks, cache hit and
232
+ miss behavior, throughput at fixed latency and error SLOs, and tail latency under
233
+ expected and overload traffic. Measure real work with representative data and
234
+ concurrency; a microbenchmark win is never a proportional application claim. Track
235
+ CPU, memory, IO, cost and correctness trade-offs next to latency, and keep
236
+ degradation and recovery behavior intact. Methods: [`repair-and-measurement.md`](repair-and-measurement.md#performance-measurement).
237
+
238
+ ## Frontend engineering
239
+
240
+ Review real source semantics under the active client profiles:
241
+
242
+ - **Components and state:** ownership, state placement, derived versus duplicated
243
+ state, render purity, lifecycle cleanup, stable identities, effect or reactivity
244
+ misuse, subscription/timer/resource leaks, stale closures, navigation and URL
245
+ state, deep links, back/forward, and the line between reusable UI and business
246
+ logic. Async UI state should be a discriminated union or state machine, not
247
+ independent booleans.
248
+ - **Data flow:** request ownership, waterfalls, duplicate fetches, cache keys and
249
+ invalidation, stale results arriving out of order (a cancellation signal alone is
250
+ not a stale-response guard), cancellation, optimistic updates and rollback, double
251
+ submission, offline and reconnect, auth and tenant transitions, error propagation,
252
+ retries, client/server disagreement.
253
+ - **Trust:** untrusted HTML, URLs and messages; sanitization versus output encoding;
254
+ secrets or server-only modules reachable from client bundles; sensitive state in
255
+ local persistence; CSP and integrity; client-only authorization illusions;
256
+ server-to-client serialization carrying unused or sensitive fields; mutable
257
+ module-level state shared across server requests.
258
+ - **Performance:** bundle and chunk cost, critical rendering path, hydration and
259
+ streaming, long tasks, scheduling, unnecessary work, large tables and lists,
260
+ layout thrash, memory/CPU/frame budgets. Check the real build mode and compiler or
261
+ framework optimizations before proposing memoization, virtualization or caching;
262
+ a memoization change needs profiler evidence, and removing existing memoization
263
+ under an optimizing compiler needs tests first.
264
+ - **Tests:** component, integration and end-to-end tests that observe behavior, cover
265
+ asynchronous ordering and error states, assert something real and are discovered
266
+ and run. Native clients use their platform harness, not a forced DOM test.
267
+
268
+ ## Frontend craft, interaction and accessibility
269
+
270
+ The craft role ([`overhaul-craft`](../../../agents/overhaul-craft.md)) examines the existing brief and
271
+ design system, hierarchy, typography, spacing, density, tokens, theming, semantics,
272
+ focus, keyboard operation, touch and pointer, zoom and reflow, responsive or native
273
+ layout, localization and long or RTL content; every UI state (loading, empty, error,
274
+ partial, stale, offline, disabled, pending, permission-denied, success, conflict,
275
+ destructive) including transitions and interruption; actionable feedback and
276
+ recovery without inventing product copy or business decisions; motion purpose,
277
+ interruptibility and reduced-motion behavior.
278
+
279
+ Two frontend verdicts stay separate: engineering/behavior/performance assurance, and
280
+ design/interaction/accessibility evidence. A beautiful screenshot cannot pass a
281
+ broken state machine; passing API tests cannot clear an inaccessible UI. Subjective
282
+ visual direction is a human decision, never a number.
283
+
284
+ For web targets report LCP, INP, CLS, TTFB and critical-journey timings with
285
+ field/lab labels; Lighthouse TBT is not INP and CLS is not latency. Missing field
286
+ data is "unavailable", never "passing". Native, desktop and game targets use
287
+ platform frame and interaction measures. Automated accessibility checks cover a
288
+ subset of criteria, not conformance; prefer native semantics and verify keyboard,
289
+ focus and relevant assistive-technology behavior. ARIA alone does not implement a
290
+ widget. The WCAG 2.2 AA target-size floor is 24 CSS px (SC 2.5.8); larger values are
291
+ advisory. A visual snapshot update is a proposed changed expectation, never automatic
292
+ approval of a regression.
293
+
294
+ ## Classifying frontend guidance
295
+
296
+ Upstream design skills conflict with each other and with product brands. Record every
297
+ frontend check as exactly one of: engineering requirement; accessibility or platform
298
+ requirement; approved design-system constraint; optional aesthetic proposal. Only the
299
+ first three can fail a control; aesthetic proposals earn no security, correctness or
300
+ score credit. A generic visual cue (a font, a palette, a card grid, a plain table,
301
+ an eyebrow label) is a lead that needs a concrete mismatch with the product brief,
302
+ usability, accessibility or the accepted design system before it is a defect. Never
303
+ import palette, font or radius bans, marketing layouts, compulsory animation
304
+ libraries, default React or Tailwind assumptions, automatic redesigns, foreign
305
+ scoring formulas, or another skill's stop and permission rules. Prefer current
306
+ official semantics and accessibility evidence plus accepted product constraints when
307
+ sources disagree; ask the user about material design choices, new UI libraries or
308
+ major restructuring.
309
+
310
+ ## Cross-layer contracts
311
+
312
+ The boundary role ([`overhaul-boundary`](../../../agents/overhaul-boundary.md)) owns the live graph of
313
+ API operations, events and messages, server actions, IPC/FFI, shared models,
314
+ generated clients and the critical journeys consuming them, and checks both
315
+ producer and consumer: schema, version, enum and nullability; numeric, ID and date
316
+ precision; pagination, order and filter semantics; auth and error behavior; retries
317
+ and idempotency; cache freshness; tenant scoping; timeouts and cancellation;
318
+ deployment compatibility. Compile-time shared types do not prove runtime conformance;
319
+ a mock written from the frontend's expectations does not prove compatibility; a
320
+ schema-generated test does not prove domain correctness or the final UI journey.
321
+ Contract and fuzz tests may send mutating requests: run them only against isolated
322
+ systems with authorization. When a producer or consumer is out of reach, separate
323
+ documented or observed contract evidence from unverifiable internals. A coordinated
324
+ interface change needs one reconciled contract revision, explicit write owners,
325
+ ordered tasks and approval.
326
+
327
+ ## Public API and developer experience
328
+
329
+ For libraries, SDKs, CLIs, plugins and configuration consumed outside the repository:
330
+
331
+ - **Compatibility:** diff the exported surface against the last release with the
332
+ ecosystem's checker (`gorelease` or `apidiff`, `cargo-semver-checks`, `griffe
333
+ check`, api-extractor with publint and `attw`, japicmp); a breaking change needs a
334
+ major version or a documented migration. `gorelease` does not fail on `v0`
335
+ modules; report their breaking changes anyway.
336
+ - **CLI:** data on stdout and diagnostics on stderr; exit 0 only on success, with
337
+ distinct non-zero codes for usage and runtime errors; `--help` and `--version`;
338
+ machine-readable output where scripts consume it; no color when not a TTY or when
339
+ `NO_COLOR` is set; never prompt without a TTY, and a flag for every prompt.
340
+ - **Errors:** name the cause and the offending value, the constraint, and how to fix
341
+ it; no stack trace as the only message; never rely on color alone.
342
+ - **Configuration:** documented precedence (flags, environment, project, user,
343
+ system); unknown keys rejected with a suggestion; a validate command or dry run.
344
+
345
+ Each claim gets an executed check: the compatibility diff, `cmd --json` parsing,
346
+ `NO_COLOR=1 cmd` containing no escape codes, a bad argument giving a non-zero exit
347
+ with empty stdout, golden tests on error text.
348
+
349
+ ## Documentation
350
+
351
+ Inventoried docs are reviewed, not skipped. Check that install, setup and quick-start
352
+ commands run on a clean checkout; examples compile or run (Go `Example` tests,
353
+ doctests, `cargo test --doc`); generated references (CLI help, OpenAPI, config
354
+ schemas) match a fresh regeneration with no diff (`cog --check`, `mdox fmt --check`,
355
+ `git diff --exit-code`); documented flags, endpoints and settings exist in code and
356
+ the reverse; local links and anchors resolve (`lychee --offline`). Wrong docs that
357
+ send a user down a broken path are findings with the same severity rules as code.
358
+
359
+ ## Operations and project-specific extensions
360
+
361
+ For every long-running service, check with a fault test where possible:
362
+
363
+ - **Signals:** structured logs carrying the trace or correlation ID from the inbound
364
+ `traceparent` to outbound calls and jobs; RED metrics per endpoint and USE metrics
365
+ per resource under stable OpenTelemetry semantic-convention names; no secrets,
366
+ tokens or personal data in logs, spans or metrics; bounded metric cardinality.
367
+ - **Health:** liveness checks only the process, never a dependency; readiness checks
368
+ what serving needs; a startup probe covers slow boot. Stop the database: readiness
369
+ fails, liveness stays up.
370
+ - **Shutdown:** on SIGTERM readiness fails first, in-flight work drains and consumers
371
+ stop fetching, all within the platform's grace period.
372
+ - **Timeouts and retries:** every outbound call has connect and total timeouts from
373
+ the caller's deadline; retries are bounded, jittered, at one layer, only for
374
+ idempotent work; queues and concurrency are bounded.
375
+ - **Configuration:** from environment or mounted files, never secrets in the
376
+ repository or image; a missing required setting fails startup and names it.
377
+ - **Change safety:** rollback or roll-forward path, staged rollout, feature-flag
378
+ kill switches with owners and removal dates, expand-and-contract migrations with
379
+ lock and statement timeouts (squawk, `atlas migrate lint`), version skew between
380
+ old and new instances.
381
+ - **Recovery:** backups proven by a restore that queries data against RTO and RPO;
382
+ alerts on symptoms and SLO burn, each with a runbook; SLOs on user-visible
383
+ behavior; CPU and memory requests and a memory limit.
384
+
385
+ Also check deployment order, configuration drift, resilience and diagnosability.
386
+ Add language- or domain-specific extensions when applicable: memory ownership and
387
+ FFI, native sanitizers, embedded constraints, GPU and frame budgets, numerical, data
388
+ and ML reproducibility, regulated or safety requirements. An unfamiliar domain is
389
+ `blocked` until researched ([`stack-profiles.md`](stack-profiles.md#unknown-stack-procedure)),
390
+ never silently labeled safe.