@howlil/ez-agents 3.5.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/README.md +735 -537
  2. package/agents/ez-architect-agent.md +267 -0
  3. package/agents/ez-backend-agent.md +303 -0
  4. package/agents/ez-chief-strategist.md +271 -0
  5. package/agents/ez-codebase-mapper.md +770 -770
  6. package/agents/ez-context-manager.md +319 -0
  7. package/agents/ez-debugger.md +1255 -1255
  8. package/agents/ez-design-expert.md +347 -0
  9. package/agents/ez-devops-agent.md +331 -0
  10. package/agents/ez-executor.md +487 -487
  11. package/agents/ez-frontend-agent.md +322 -0
  12. package/agents/ez-phase-researcher.md +553 -553
  13. package/agents/ez-planner.md +1307 -1307
  14. package/agents/ez-product-engineer.md +435 -0
  15. package/agents/ez-project-researcher.md +629 -629
  16. package/agents/ez-qa-agent.md +320 -0
  17. package/agents/ez-release-agent.md +333 -333
  18. package/agents/ez-requirements-agent.md +377 -377
  19. package/agents/ez-roadmapper.md +650 -650
  20. package/agents/ez-technical-writer.md +551 -0
  21. package/agents/ez-ux-expert.md +393 -0
  22. package/agents/ez-verifier.md +579 -579
  23. package/bin/guards/autonomy-guard.cjs +346 -0
  24. package/bin/guards/context-budget-guard.cjs +278 -0
  25. package/bin/guards/hallucination-guard.cjs +380 -0
  26. package/bin/guards/hidden-state-guard.cjs +182 -0
  27. package/bin/guards/team-overhead-guard.cjs +266 -0
  28. package/bin/guards/tool-sprawl-guard.cjs +271 -0
  29. package/bin/lib/analytics/analytics-collector.cjs +86 -0
  30. package/bin/lib/analytics/analytics-reporter.cjs +130 -0
  31. package/bin/lib/analytics/cohort-analyzer.cjs +138 -0
  32. package/bin/lib/analytics/funnel-analyzer.cjs +147 -0
  33. package/bin/lib/analytics/nps-tracker.cjs +147 -0
  34. package/bin/lib/archetype-detector.cjs +289 -0
  35. package/bin/lib/assistant-adapter.cjs +361 -0
  36. package/bin/lib/audit-exec.cjs +175 -0
  37. package/bin/lib/auth.cjs +176 -0
  38. package/bin/lib/backup-service.cjs +422 -0
  39. package/bin/lib/bdd-validator.cjs +622 -0
  40. package/bin/lib/business-flow-mapper.cjs +429 -0
  41. package/bin/lib/circuit-breaker.cjs +276 -0
  42. package/bin/lib/code-complexity-analyzer.cjs +360 -0
  43. package/bin/lib/codebase-analyzer.cjs +241 -0
  44. package/bin/lib/commands.cjs +691 -0
  45. package/bin/lib/config.cjs +236 -0
  46. package/bin/lib/constraint-extractor.cjs +526 -0
  47. package/bin/lib/content-scanner.cjs +238 -0
  48. package/bin/lib/context-cache.cjs +154 -0
  49. package/bin/lib/context-compressor.cjs +102 -0
  50. package/bin/lib/context-deduplicator.cjs +105 -0
  51. package/bin/lib/context-errors.cjs +78 -0
  52. package/bin/lib/context-manager.cjs +338 -0
  53. package/bin/lib/context-metadata-tracker.cjs +140 -0
  54. package/bin/lib/context-relevance-scorer.cjs +99 -0
  55. package/bin/lib/core.cjs +507 -0
  56. package/bin/lib/cost-alerts.cjs +174 -0
  57. package/bin/lib/cost-tracker.cjs +275 -0
  58. package/bin/lib/crash-recovery.cjs +220 -0
  59. package/bin/lib/dependency-graph.cjs +319 -0
  60. package/bin/lib/deploy/deploy-audit-log.cjs +76 -0
  61. package/bin/lib/deploy/deploy-detector.cjs +69 -0
  62. package/bin/lib/deploy/deploy-env-manager.cjs +109 -0
  63. package/bin/lib/deploy/deploy-health-check.cjs +88 -0
  64. package/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
  65. package/bin/lib/deploy/deploy-rollback.cjs +72 -0
  66. package/bin/lib/deploy/deploy-runner.cjs +97 -0
  67. package/bin/lib/deploy/deploy-status.cjs +74 -0
  68. package/bin/lib/discussion-synthesizer.cjs +439 -0
  69. package/bin/lib/error-cache.cjs +114 -0
  70. package/bin/lib/error-registry.cjs +177 -0
  71. package/bin/lib/file-access.cjs +207 -0
  72. package/bin/lib/file-lock.cjs +236 -0
  73. package/bin/lib/finops/budget-enforcer.cjs +126 -0
  74. package/bin/lib/finops/cost-reporter.cjs +132 -0
  75. package/bin/lib/finops/finops-analyzer.cjs +112 -0
  76. package/bin/lib/finops/spot-manager.cjs +118 -0
  77. package/bin/lib/framework-detector.cjs +396 -0
  78. package/bin/lib/frontmatter.cjs +313 -0
  79. package/bin/lib/fs-utils.cjs +153 -0
  80. package/bin/lib/gate-executor.cjs +272 -0
  81. package/bin/lib/gates/README.md +374 -0
  82. package/bin/lib/gates/gate-01-requirement.cjs +303 -0
  83. package/bin/lib/gates/gate-02-architecture.cjs +555 -0
  84. package/bin/lib/gates/gate-03-code.cjs +635 -0
  85. package/bin/lib/gates/gate-04-security.cjs +829 -0
  86. package/bin/lib/git-errors.cjs +83 -0
  87. package/bin/lib/git-utils.cjs +321 -0
  88. package/bin/lib/git-workflow-engine.cjs +1157 -0
  89. package/bin/lib/health-check.cjs +227 -0
  90. package/bin/lib/index.cjs +279 -0
  91. package/bin/lib/init.cjs +725 -0
  92. package/bin/lib/lock-logger.cjs +194 -0
  93. package/bin/lib/lock-state.cjs +263 -0
  94. package/bin/lib/lockfile-validator.cjs +227 -0
  95. package/bin/lib/log-rotation.cjs +71 -0
  96. package/bin/lib/logger.cjs +125 -0
  97. package/bin/lib/memory-compression.cjs +256 -0
  98. package/bin/lib/milestone.cjs +247 -0
  99. package/bin/lib/model-provider.cjs +241 -0
  100. package/bin/lib/package-manager-detector.cjs +203 -0
  101. package/bin/lib/package-manager-executor.cjs +385 -0
  102. package/bin/lib/package-manager-service.cjs +216 -0
  103. package/bin/lib/perf/api-monitor.cjs +88 -0
  104. package/bin/lib/perf/db-optimizer.cjs +78 -0
  105. package/bin/lib/perf/frontend-performance.cjs +56 -0
  106. package/bin/lib/perf/perf-analyzer.cjs +77 -0
  107. package/bin/lib/perf/perf-baseline.cjs +102 -0
  108. package/bin/lib/perf/perf-reporter.cjs +117 -0
  109. package/bin/lib/perf/regression-detector.cjs +92 -0
  110. package/bin/lib/phase.cjs +963 -0
  111. package/bin/lib/planning-write.cjs +123 -0
  112. package/bin/lib/project-reporter.cjs +565 -0
  113. package/bin/lib/quality-gate.cjs +332 -0
  114. package/bin/lib/quality-metrics.cjs +324 -0
  115. package/bin/lib/recovery-manager.cjs +98 -0
  116. package/bin/lib/release-validator.cjs +617 -0
  117. package/bin/lib/retry.cjs +119 -0
  118. package/bin/lib/roadmap.cjs +309 -0
  119. package/bin/lib/safe-exec.cjs +173 -0
  120. package/bin/lib/safe-path.cjs +130 -0
  121. package/bin/lib/security-errors.cjs +62 -0
  122. package/bin/lib/session-chain.cjs +304 -0
  123. package/bin/lib/session-errors.cjs +81 -0
  124. package/bin/lib/session-export.cjs +251 -0
  125. package/bin/lib/session-import.cjs +262 -0
  126. package/bin/lib/session-manager.cjs +280 -0
  127. package/bin/lib/skill-context.cjs +148 -0
  128. package/bin/lib/skill-matcher.cjs +236 -0
  129. package/bin/lib/skill-registry.cjs +360 -0
  130. package/bin/lib/skill-resolver.cjs +449 -0
  131. package/bin/lib/skill-triggers.cjs +90 -0
  132. package/bin/lib/skill-validator.cjs +270 -0
  133. package/bin/lib/skill-versioning.cjs +355 -0
  134. package/bin/lib/stack-detector.cjs +399 -0
  135. package/bin/lib/state.cjs +736 -0
  136. package/bin/lib/tech-debt-analyzer.cjs +309 -0
  137. package/bin/lib/temp-file.cjs +239 -0
  138. package/bin/lib/template.cjs +223 -0
  139. package/bin/lib/test-file-lock.cjs +112 -0
  140. package/bin/lib/test-graceful.cjs +93 -0
  141. package/bin/lib/test-logger.cjs +60 -0
  142. package/bin/lib/test-safe-exec.cjs +38 -0
  143. package/bin/lib/test-safe-path.cjs +33 -0
  144. package/bin/lib/test-temp-file.cjs +125 -0
  145. package/bin/lib/tier-manager.cjs +428 -0
  146. package/bin/lib/timeout-exec.cjs +63 -0
  147. package/bin/lib/tradeoff-analyzer.cjs +284 -0
  148. package/bin/lib/url-fetch.cjs +170 -0
  149. package/bin/lib/verify.cjs +863 -0
  150. package/bin/update.js +217 -214
  151. package/commands/deploy.cjs +53 -0
  152. package/commands/ez/add-tests.md +41 -41
  153. package/commands/ez/audit-milestone.md +36 -36
  154. package/commands/ez/complete-milestone.md +136 -136
  155. package/commands/ez/discuss-phase.md +90 -90
  156. package/commands/ez/execute-phase.md +52 -52
  157. package/commands/ez/help.md +22 -22
  158. package/commands/ez/map-codebase.md +71 -71
  159. package/commands/ez/new-milestone.md +44 -44
  160. package/commands/ez/new-project.md +51 -42
  161. package/commands/ez/plan-phase.md +53 -53
  162. package/commands/ez/progress.md +36 -36
  163. package/commands/ez/quick.md +45 -45
  164. package/commands/ez/resume-work.md +40 -40
  165. package/commands/ez/run-phase.md +580 -0
  166. package/commands/ez/settings.md +36 -36
  167. package/commands/ez/update.md +37 -37
  168. package/commands/ez/verify-work.md +402 -38
  169. package/commands/health-check.cjs +44 -0
  170. package/commands/rollback.cjs +47 -0
  171. package/ez-agents/bin/ez-tools.cjs +599 -2
  172. package/ez-agents/bin/guards/autonomy-guard.cjs +346 -0
  173. package/ez-agents/bin/guards/context-budget-guard.cjs +247 -0
  174. package/ez-agents/bin/guards/hallucination-guard.cjs +271 -0
  175. package/ez-agents/bin/guards/hidden-state-guard.cjs +182 -0
  176. package/ez-agents/bin/guards/team-overhead-guard.cjs +266 -0
  177. package/ez-agents/bin/guards/tool-sprawl-guard.cjs +271 -0
  178. package/ez-agents/bin/lib/analytics/analytics-collector.cjs +86 -0
  179. package/ez-agents/bin/lib/analytics/analytics-reporter.cjs +130 -0
  180. package/ez-agents/bin/lib/analytics/cohort-analyzer.cjs +138 -0
  181. package/ez-agents/bin/lib/analytics/funnel-analyzer.cjs +147 -0
  182. package/ez-agents/bin/lib/analytics/nps-tracker.cjs +147 -0
  183. package/ez-agents/bin/lib/archetype-detector.cjs +289 -0
  184. package/ez-agents/bin/lib/audit-exec.cjs +166 -167
  185. package/ez-agents/bin/lib/auth.cjs +176 -176
  186. package/ez-agents/bin/lib/backup-service.cjs +422 -0
  187. package/ez-agents/bin/lib/bdd-validator.cjs +622 -622
  188. package/ez-agents/bin/lib/business-flow-mapper.cjs +429 -0
  189. package/ez-agents/bin/lib/code-complexity-analyzer.cjs +360 -0
  190. package/ez-agents/bin/lib/codebase-analyzer.cjs +241 -0
  191. package/ez-agents/bin/lib/commands.cjs +685 -685
  192. package/ez-agents/bin/lib/config.cjs +41 -1
  193. package/ez-agents/bin/lib/constraint-extractor.cjs +526 -0
  194. package/ez-agents/bin/lib/content-scanner.cjs +238 -238
  195. package/ez-agents/bin/lib/context-cache.cjs +154 -154
  196. package/ez-agents/bin/lib/context-errors.cjs +71 -71
  197. package/ez-agents/bin/lib/context-manager.cjs +220 -220
  198. package/ez-agents/bin/lib/core.cjs +507 -512
  199. package/ez-agents/bin/lib/cost-tracker.cjs +243 -0
  200. package/ez-agents/bin/lib/crash-recovery.cjs +172 -0
  201. package/ez-agents/bin/lib/dependency-graph.cjs +319 -0
  202. package/ez-agents/bin/lib/deploy/deploy-audit-log.cjs +76 -0
  203. package/ez-agents/bin/lib/deploy/deploy-detector.cjs +69 -0
  204. package/ez-agents/bin/lib/deploy/deploy-env-manager.cjs +109 -0
  205. package/ez-agents/bin/lib/deploy/deploy-health-check.cjs +88 -0
  206. package/ez-agents/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
  207. package/ez-agents/bin/lib/deploy/deploy-rollback.cjs +72 -0
  208. package/ez-agents/bin/lib/deploy/deploy-runner.cjs +97 -0
  209. package/ez-agents/bin/lib/deploy/deploy-status.cjs +74 -0
  210. package/ez-agents/bin/lib/file-access.cjs +207 -207
  211. package/ez-agents/bin/lib/finops/budget-enforcer.cjs +126 -0
  212. package/ez-agents/bin/lib/finops/cost-reporter.cjs +132 -0
  213. package/ez-agents/bin/lib/finops/finops-analyzer.cjs +112 -0
  214. package/ez-agents/bin/lib/finops/spot-manager.cjs +118 -0
  215. package/ez-agents/bin/lib/framework-detector.cjs +396 -0
  216. package/ez-agents/bin/lib/frontmatter.cjs +3 -1
  217. package/ez-agents/bin/lib/gates/README.md +374 -0
  218. package/ez-agents/bin/lib/gates/gate-01-requirement.cjs +303 -0
  219. package/ez-agents/bin/lib/gates/gate-02-architecture.cjs +555 -0
  220. package/ez-agents/bin/lib/gates/gate-03-code.cjs +635 -0
  221. package/ez-agents/bin/lib/gates/gate-04-security.cjs +829 -0
  222. package/ez-agents/bin/lib/git-errors.cjs +83 -83
  223. package/ez-agents/bin/lib/git-utils.cjs +321 -321
  224. package/ez-agents/bin/lib/git-workflow-engine.cjs +1157 -1157
  225. package/ez-agents/bin/lib/health-check.cjs +162 -162
  226. package/ez-agents/bin/lib/index.cjs +2 -8
  227. package/ez-agents/bin/lib/init.cjs +0 -2
  228. package/ez-agents/bin/lib/lockfile-validator.cjs +227 -227
  229. package/ez-agents/bin/lib/log-rotation.cjs +71 -0
  230. package/ez-agents/bin/lib/logger.cjs +22 -47
  231. package/ez-agents/bin/lib/memory-compression.cjs +256 -256
  232. package/ez-agents/bin/lib/package-manager-detector.cjs +203 -203
  233. package/ez-agents/bin/lib/package-manager-executor.cjs +385 -385
  234. package/ez-agents/bin/lib/package-manager-service.cjs +216 -216
  235. package/ez-agents/bin/lib/perf/api-monitor.cjs +88 -0
  236. package/ez-agents/bin/lib/perf/db-optimizer.cjs +78 -0
  237. package/ez-agents/bin/lib/perf/frontend-performance.cjs +56 -0
  238. package/ez-agents/bin/lib/perf/perf-analyzer.cjs +77 -0
  239. package/ez-agents/bin/lib/perf/perf-baseline.cjs +102 -0
  240. package/ez-agents/bin/lib/perf/perf-reporter.cjs +117 -0
  241. package/ez-agents/bin/lib/perf/regression-detector.cjs +92 -0
  242. package/ez-agents/bin/lib/project-reporter.cjs +502 -0
  243. package/ez-agents/bin/lib/quality-gate.cjs +332 -0
  244. package/ez-agents/bin/lib/recovery-manager.cjs +98 -0
  245. package/ez-agents/bin/lib/release-validator.cjs +617 -614
  246. package/ez-agents/bin/lib/security-errors.cjs +62 -0
  247. package/ez-agents/bin/lib/session-chain.cjs +304 -304
  248. package/ez-agents/bin/lib/session-errors.cjs +81 -81
  249. package/ez-agents/bin/lib/session-export.cjs +251 -251
  250. package/ez-agents/bin/lib/session-import.cjs +262 -262
  251. package/ez-agents/bin/lib/session-manager.cjs +280 -280
  252. package/ez-agents/bin/lib/skill-context.cjs +148 -0
  253. package/ez-agents/bin/lib/skill-matcher.cjs +236 -0
  254. package/ez-agents/bin/lib/skill-registry.cjs +341 -0
  255. package/ez-agents/bin/lib/skill-resolver.cjs +449 -0
  256. package/ez-agents/bin/lib/skill-triggers.cjs +90 -0
  257. package/ez-agents/bin/lib/skill-validator.cjs +270 -0
  258. package/ez-agents/bin/lib/skill-versioning.cjs +355 -0
  259. package/ez-agents/bin/lib/stack-detector.cjs +399 -0
  260. package/ez-agents/bin/lib/tech-debt-analyzer.cjs +309 -0
  261. package/ez-agents/bin/lib/tier-manager.cjs +428 -428
  262. package/ez-agents/bin/lib/tradeoff-analyzer.cjs +284 -0
  263. package/ez-agents/bin/lib/url-fetch.cjs +170 -170
  264. package/ez-agents/bin/lib/verify.cjs +863 -863
  265. package/ez-agents/references/decimal-phase-calculation.md +65 -65
  266. package/ez-agents/references/git-integration.md +248 -248
  267. package/ez-agents/references/git-planning-commit.md +38 -38
  268. package/ez-agents/references/metrics-schema.md +118 -118
  269. package/ez-agents/references/model-profile-resolution.md +34 -34
  270. package/ez-agents/references/model-profiles.md +93 -93
  271. package/ez-agents/references/phase-argument-parsing.md +61 -61
  272. package/ez-agents/references/planning-config.md +340 -340
  273. package/ez-agents/references/tier-strategy.md +103 -103
  274. package/ez-agents/references/ui-brand.md +160 -160
  275. package/ez-agents/references/verification-patterns.md +612 -612
  276. package/ez-agents/templates/DEBUG.md +164 -164
  277. package/ez-agents/templates/UAT.md +247 -247
  278. package/ez-agents/templates/agent-output-format.md +404 -0
  279. package/ez-agents/templates/bdd-feature.md +173 -173
  280. package/ez-agents/templates/codebase/architecture.md +255 -255
  281. package/ez-agents/templates/codebase/structure.md +285 -285
  282. package/ez-agents/templates/copilot-instructions.md +7 -7
  283. package/ez-agents/templates/debug-subagent-prompt.md +91 -91
  284. package/ez-agents/templates/discovery.md +146 -146
  285. package/ez-agents/templates/discussion.md +68 -68
  286. package/ez-agents/templates/handoff-protocol.md +294 -0
  287. package/ez-agents/templates/incident-runbook.md +205 -205
  288. package/ez-agents/templates/mode-workflow-templates.md +301 -0
  289. package/ez-agents/templates/phase-prompt.md +610 -610
  290. package/ez-agents/templates/planner-subagent-prompt.md +117 -117
  291. package/ez-agents/templates/project.md +184 -184
  292. package/ez-agents/templates/release-checklist.md +136 -133
  293. package/ez-agents/templates/research.md +552 -552
  294. package/ez-agents/templates/rollback-plan.md +201 -201
  295. package/ez-agents/templates/security-user-setup.md +244 -0
  296. package/ez-agents/templates/skill-validation-rules.md +476 -0
  297. package/ez-agents/templates/state.md +180 -176
  298. package/ez-agents/templates/summary-complex.md +59 -59
  299. package/ez-agents/tests/gates/gate-01-02.test.cjs +812 -0
  300. package/ez-agents/tests/gates/gate-03-04.test.cjs +762 -0
  301. package/ez-agents/tests/gates/gate-05-validator.test.cjs +145 -0
  302. package/ez-agents/tests/gates/gate-06-docs-validator.test.cjs +244 -0
  303. package/ez-agents/tests/gates/gate-07-release-validator.test.cjs +219 -0
  304. package/ez-agents/tests/guards/context-budget-guard.test.cjs +145 -0
  305. package/ez-agents/tests/guards/edge-case-guards.test.cjs +238 -0
  306. package/ez-agents/tests/guards/hallucination-guard.test.cjs +124 -0
  307. package/ez-agents/workflows/audit-milestone.md +1 -1
  308. package/ez-agents/workflows/autonomous.md +844 -844
  309. package/ez-agents/workflows/complete-milestone.md +1 -1
  310. package/ez-agents/workflows/discuss-phase.md +1 -1
  311. package/ez-agents/workflows/execute-phase.md +124 -3
  312. package/ez-agents/workflows/help.md +42 -181
  313. package/ez-agents/workflows/hotfix.md +291 -291
  314. package/ez-agents/workflows/new-milestone.md +713 -713
  315. package/ez-agents/workflows/new-project.md +1089 -1107
  316. package/ez-agents/workflows/plan-phase.md +0 -40
  317. package/ez-agents/workflows/release.md +253 -253
  318. package/ez-agents/workflows/resume-session.md +215 -215
  319. package/ez-agents/workflows/run-phase.md +531 -0
  320. package/ez-agents/workflows/settings.md +2 -35
  321. package/hooks/dist/ez-check-update.js +81 -81
  322. package/hooks/dist/ez-context-monitor.js +148 -141
  323. package/hooks/dist/ez-statusline.js +115 -115
  324. package/package.json +78 -71
  325. package/scripts/fix-qwen-installation.js +144 -144
  326. package/agents/ez-integration-checker.md +0 -443
  327. package/agents/ez-nyquist-auditor.md +0 -176
  328. package/agents/ez-observer-agent.md +0 -260
  329. package/agents/ez-plan-checker.md +0 -706
  330. package/agents/ez-research-synthesizer.md +0 -247
  331. package/agents/ez-scrum-master-agent.md +0 -242
  332. package/agents/ez-tech-lead-agent.md +0 -267
  333. package/agents/ez-ui-auditor.md +0 -439
  334. package/agents/ez-ui-checker.md +0 -300
  335. package/agents/ez-ui-researcher.md +0 -353
  336. package/commands/ez/add-phase.md +0 -43
  337. package/commands/ez/add-todo.md +0 -47
  338. package/commands/ez/arch-review.md +0 -102
  339. package/commands/ez/auth.md +0 -87
  340. package/commands/ez/autonomous.md +0 -41
  341. package/commands/ez/check-todos.md +0 -45
  342. package/commands/ez/cleanup.md +0 -18
  343. package/commands/ez/debug.md +0 -168
  344. package/commands/ez/export-session.md +0 -79
  345. package/commands/ez/gather-requirements.md +0 -117
  346. package/commands/ez/git-workflow.md +0 -72
  347. package/commands/ez/health.md +0 -22
  348. package/commands/ez/hotfix.md +0 -120
  349. package/commands/ez/import-session.md +0 -82
  350. package/commands/ez/insert-phase.md +0 -32
  351. package/commands/ez/join-discord.md +0 -18
  352. package/commands/ez/list-phase-assumptions.md +0 -46
  353. package/commands/ez/list-sessions.md +0 -96
  354. package/commands/ez/package-manager.md +0 -316
  355. package/commands/ez/pause-work.md +0 -38
  356. package/commands/ez/plan-milestone-gaps.md +0 -34
  357. package/commands/ez/preflight.md +0 -79
  358. package/commands/ez/reapply-patches.md +0 -124
  359. package/commands/ez/release.md +0 -153
  360. package/commands/ez/remove-phase.md +0 -31
  361. package/commands/ez/research-phase.md +0 -190
  362. package/commands/ez/resume.md +0 -107
  363. package/commands/ez/set-profile.md +0 -34
  364. package/commands/ez/standup.md +0 -85
  365. package/commands/ez/stats.md +0 -18
  366. package/commands/ez/ui-phase.md +0 -34
  367. package/commands/ez/ui-review.md +0 -32
  368. package/commands/ez/validate-phase.md +0 -35
  369. package/ez-agents/bin/lib/metrics-tracker.cjs +0 -406
  370. package/ez-agents/templates/UI-SPEC.md +0 -100
  371. package/ez-agents/templates/VALIDATION.md +0 -76
  372. package/ez-agents/templates/context.md +0 -352
  373. package/ez-agents/templates/verification-report.md +0 -322
  374. package/ez-agents/workflows/arch-review.md +0 -54
  375. package/ez-agents/workflows/export-session.md +0 -255
  376. package/ez-agents/workflows/gather-requirements.md +0 -206
  377. package/ez-agents/workflows/import-session.md +0 -303
  378. package/ez-agents/workflows/research-phase.md +0 -74
  379. package/ez-agents/workflows/standup.md +0 -64
  380. package/ez-agents/workflows/ui-phase.md +0 -290
  381. package/ez-agents/workflows/ui-review.md +0 -157
  382. package/ez-agents/workflows/validate-phase.md +0 -167
@@ -1,290 +0,0 @@
1
- <purpose>
2
- Generate a UI design contract (UI-SPEC.md) for frontend phases. Orchestrates ez-ui-researcher and ez-ui-checker with a revision loop. Inserts between discuss-phase and plan-phase in the lifecycle.
3
-
4
- UI-SPEC.md locks spacing, typography, color, copywriting, and design system decisions before the planner creates tasks. This prevents design debt caused by ad-hoc styling decisions during execution.
5
- </purpose>
6
-
7
- <required_reading>
8
- @~/.claude/ez-agents/references/ui-brand.md
9
- </required_reading>
10
-
11
- <process>
12
-
13
- ## 1. Initialize
14
-
15
- ```bash
16
- INIT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" init plan-phase "$PHASE")
17
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
18
- ```
19
-
20
- Parse JSON for: `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_context`, `has_research`, `commit_docs`.
21
-
22
- **File paths:** `state_path`, `roadmap_path`, `requirements_path`, `context_path`, `research_path`.
23
-
24
- Resolve UI agent models:
25
-
26
- ```bash
27
- UI_RESEARCHER_MODEL=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model ez-ui-researcher --raw)
28
- UI_CHECKER_MODEL=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model ez-ui-checker --raw)
29
- ```
30
-
31
- Check config:
32
-
33
- ```bash
34
- UI_ENABLED=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" config-get workflow.ui_phase 2>/dev/null || echo "true")
35
- ```
36
-
37
- **If `UI_ENABLED` is `false`:**
38
- ```
39
- UI phase is disabled in config. Enable via /ez:settings.
40
- ```
41
- Exit workflow.
42
-
43
- **If `planning_exists` is false:** Error — run `/ez:new-project` first.
44
-
45
- ## 2. Parse and Validate Phase
46
-
47
- Extract phase number from $ARGUMENTS. If not provided, detect next unplanned phase.
48
-
49
- ```bash
50
- PHASE_INFO=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" roadmap get-phase "${PHASE}")
51
- ```
52
-
53
- **If `found` is false:** Error with available phases.
54
-
55
- ## 3. Check Prerequisites
56
-
57
- **If `has_context` is false:**
58
- ```
59
- No CONTEXT.md found for Phase {N}.
60
- Recommended: run /ez:discuss-phase {N} first to capture design preferences.
61
- Continuing without user decisions — UI researcher will ask all questions.
62
- ```
63
- Continue (non-blocking).
64
-
65
- **If `has_research` is false:**
66
- ```
67
- No RESEARCH.md found for Phase {N}.
68
- Note: stack decisions (component library, styling approach) will be asked during UI research.
69
- ```
70
- Continue (non-blocking).
71
-
72
- ## 4. Check Existing UI-SPEC
73
-
74
- ```bash
75
- UI_SPEC_FILE=$(ls "${PHASE_DIR}"/*-UI-SPEC.md 2>/dev/null | head -1)
76
- ```
77
-
78
- **If exists:** Use AskUserQuestion:
79
- - header: "Existing UI-SPEC"
80
- - question: "UI-SPEC.md already exists for Phase {N}. What would you like to do?"
81
- - options:
82
- - "Update — re-run researcher with existing as baseline"
83
- - "View — display current UI-SPEC and exit"
84
- - "Skip — keep current UI-SPEC, proceed to verification"
85
-
86
- If "View": display file contents, exit.
87
- If "Skip": proceed to step 7 (checker).
88
- If "Update": continue to step 5.
89
-
90
- ## 5. Spawn ez-ui-researcher
91
-
92
- Display:
93
- ```
94
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
95
- EZ ► UI DESIGN CONTRACT — PHASE {N}
96
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
97
-
98
- ◆ Spawning UI researcher...
99
- ```
100
-
101
- Build prompt:
102
-
103
- ```markdown
104
- Read ~/.claude/agents/ez-ui-researcher.md for instructions.
105
-
106
- <objective>
107
- Create UI design contract for Phase {phase_number}: {phase_name}
108
- Answer: "What visual and interaction contracts does this phase need?"
109
- </objective>
110
-
111
- <files_to_read>
112
- - {state_path} (Project State)
113
- - {roadmap_path} (Roadmap)
114
- - {requirements_path} (Requirements)
115
- - {context_path} (USER DECISIONS from /ez:discuss-phase)
116
- - {research_path} (Technical Research — stack decisions)
117
- </files_to_read>
118
-
119
- <output>
120
- Write to: {phase_dir}/{padded_phase}-UI-SPEC.md
121
- Template: ~/.claude/ez-agents/templates/UI-SPEC.md
122
- </output>
123
-
124
- <config>
125
- commit_docs: {commit_docs}
126
- phase_dir: {phase_dir}
127
- padded_phase: {padded_phase}
128
- </config>
129
- ```
130
-
131
- Omit null file paths from `<files_to_read>`.
132
-
133
- ```
134
- Task(
135
- prompt=ui_research_prompt,
136
- subagent_type="ez-ui-researcher",
137
- model="{UI_RESEARCHER_MODEL}",
138
- description="UI Design Contract Phase {N}"
139
- )
140
- ```
141
-
142
- ## 6. Handle Researcher Return
143
-
144
- **If `## UI-SPEC COMPLETE`:**
145
- Display confirmation. Continue to step 7.
146
-
147
- **If `## UI-SPEC BLOCKED`:**
148
- Display blocker details and options. Exit workflow.
149
-
150
- ## 7. Spawn ez-ui-checker
151
-
152
- Display:
153
- ```
154
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
155
- EZ ► VERIFYING UI-SPEC
156
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
157
-
158
- ◆ Spawning UI checker...
159
- ```
160
-
161
- Build prompt:
162
-
163
- ```markdown
164
- Read ~/.claude/agents/ez-ui-checker.md for instructions.
165
-
166
- <objective>
167
- Validate UI design contract for Phase {phase_number}: {phase_name}
168
- Check all 6 dimensions. Return APPROVED or BLOCKED.
169
- </objective>
170
-
171
- <files_to_read>
172
- - {phase_dir}/{padded_phase}-UI-SPEC.md (UI Design Contract — PRIMARY INPUT)
173
- - {context_path} (USER DECISIONS — check compliance)
174
- - {research_path} (Technical Research — check stack alignment)
175
- </files_to_read>
176
-
177
- <config>
178
- ui_safety_gate: {ui_safety_gate config value}
179
- </config>
180
- ```
181
-
182
- ```
183
- Task(
184
- prompt=ui_checker_prompt,
185
- subagent_type="ez-ui-checker",
186
- model="{UI_CHECKER_MODEL}",
187
- description="Verify UI-SPEC Phase {N}"
188
- )
189
- ```
190
-
191
- ## 8. Handle Checker Return
192
-
193
- **If `## UI-SPEC VERIFIED`:**
194
- Display dimension results. Proceed to step 10.
195
-
196
- **If `## ISSUES FOUND`:**
197
- Display blocking issues. Proceed to step 9.
198
-
199
- ## 9. Revision Loop (Max 2 Iterations)
200
-
201
- Track `revision_count` (starts at 0).
202
-
203
- **If `revision_count` < 2:**
204
- - Increment `revision_count`
205
- - Re-spawn ez-ui-researcher with revision context:
206
-
207
- ```markdown
208
- <revision>
209
- The UI checker found issues with the current UI-SPEC.md.
210
-
211
- ### Issues to Fix
212
- {paste blocking issues from checker return}
213
-
214
- Read the existing UI-SPEC.md, fix ONLY the listed issues, re-write the file.
215
- Do NOT re-ask the user questions that are already answered.
216
- </revision>
217
- ```
218
-
219
- - After researcher returns → re-spawn checker (step 7)
220
-
221
- **If `revision_count` >= 2:**
222
- ```
223
- Max revision iterations reached. Remaining issues:
224
-
225
- {list remaining issues}
226
-
227
- Options:
228
- 1. Force approve — proceed with current UI-SPEC (FLAGs become accepted)
229
- 2. Edit manually — open UI-SPEC.md in editor, re-run /ez:ui-phase
230
- 3. Abandon — exit without approving
231
- ```
232
-
233
- Use AskUserQuestion for the choice.
234
-
235
- ## 10. Present Final Status
236
-
237
- Display:
238
- ```
239
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
240
- EZ ► UI-SPEC READY ✓
241
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
242
-
243
- **Phase {N}: {Name}** — UI design contract approved
244
-
245
- Dimensions: 6/6 passed
246
- {If any FLAGs: "Recommendations: {N} (non-blocking)"}
247
-
248
- ───────────────────────────────────────────────────────────────
249
-
250
- ## ▶ Next Up
251
-
252
- **Plan Phase {N}** — planner will use UI-SPEC.md as design context
253
-
254
- `/ez:plan-phase {N}`
255
-
256
- <sub>/clear first → fresh context window</sub>
257
-
258
- ───────────────────────────────────────────────────────────────
259
- ```
260
-
261
- ## 11. Commit (if configured)
262
-
263
- ```bash
264
- node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" commit "docs(${padded_phase}): UI design contract" --files "${PHASE_DIR}/${PADDED_PHASE}-UI-SPEC.md"
265
- ```
266
-
267
- ## 12. Update State
268
-
269
- ```bash
270
- node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" state record-session \
271
- --stopped-at "Phase ${PHASE} UI-SPEC approved" \
272
- --resume-file "${PHASE_DIR}/${PADDED_PHASE}-UI-SPEC.md"
273
- ```
274
-
275
- </process>
276
-
277
- <success_criteria>
278
- - [ ] Config checked (exit if ui_phase disabled)
279
- - [ ] Phase validated against roadmap
280
- - [ ] Prerequisites checked (CONTEXT.md, RESEARCH.md — non-blocking warnings)
281
- - [ ] Existing UI-SPEC handled (update/view/skip)
282
- - [ ] ez-ui-researcher spawned with correct context and file paths
283
- - [ ] UI-SPEC.md created in correct location
284
- - [ ] ez-ui-checker spawned with UI-SPEC.md
285
- - [ ] All 6 dimensions evaluated
286
- - [ ] Revision loop if BLOCKED (max 2 iterations)
287
- - [ ] Final status displayed with next steps
288
- - [ ] UI-SPEC.md committed (if commit_docs enabled)
289
- - [ ] State updated
290
- </success_criteria>
@@ -1,157 +0,0 @@
1
- <purpose>
2
- Retroactive 6-pillar visual audit of implemented frontend code. Standalone command that works on any project — ez-managed or not. Produces scored UI-REVIEW.md with actionable findings.
3
- </purpose>
4
-
5
- <required_reading>
6
- @~/.claude/ez-agents/references/ui-brand.md
7
- </required_reading>
8
-
9
- <process>
10
-
11
- ## 0. Initialize
12
-
13
- ```bash
14
- INIT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" init phase-op "${PHASE_ARG}")
15
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
16
- ```
17
-
18
- Parse: `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `commit_docs`.
19
-
20
- ```bash
21
- UI_AUDITOR_MODEL=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model ez-ui-auditor --raw)
22
- ```
23
-
24
- Display banner:
25
- ```
26
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
27
- EZ ► UI AUDIT — PHASE {N}: {name}
28
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
29
- ```
30
-
31
- ## 1. Detect Input State
32
-
33
- ```bash
34
- SUMMARY_FILES=$(ls "${PHASE_DIR}"/*-SUMMARY.md 2>/dev/null)
35
- UI_SPEC_FILE=$(ls "${PHASE_DIR}"/*-UI-SPEC.md 2>/dev/null | head -1)
36
- UI_REVIEW_FILE=$(ls "${PHASE_DIR}"/*-UI-REVIEW.md 2>/dev/null | head -1)
37
- ```
38
-
39
- **If `SUMMARY_FILES` empty:** Exit — "Phase {N} not executed. Run /ez:execute-phase {N} first."
40
-
41
- **If `UI_REVIEW_FILE` non-empty:** Use AskUserQuestion:
42
- - header: "Existing UI Review"
43
- - question: "UI-REVIEW.md already exists for Phase {N}."
44
- - options:
45
- - "Re-audit — run fresh audit"
46
- - "View — display current review and exit"
47
-
48
- If "View": display file, exit.
49
- If "Re-audit": continue.
50
-
51
- ## 2. Gather Context Paths
52
-
53
- Build file list for auditor:
54
- - All SUMMARY.md files in phase dir
55
- - All PLAN.md files in phase dir
56
- - UI-SPEC.md (if exists — audit baseline)
57
- - CONTEXT.md (if exists — locked decisions)
58
-
59
- ## 3. Spawn ez-ui-auditor
60
-
61
- ```
62
- ◆ Spawning UI auditor...
63
- ```
64
-
65
- Build prompt:
66
-
67
- ```markdown
68
- Read ~/.claude/agents/ez-ui-auditor.md for instructions.
69
-
70
- <objective>
71
- Conduct 6-pillar visual audit of Phase {phase_number}: {phase_name}
72
- {If UI-SPEC exists: "Audit against UI-SPEC.md design contract."}
73
- {If no UI-SPEC: "Audit against abstract 6-pillar standards."}
74
- </objective>
75
-
76
- <files_to_read>
77
- - {summary_paths} (Execution summaries)
78
- - {plan_paths} (Execution plans — what was intended)
79
- - {ui_spec_path} (UI Design Contract — audit baseline, if exists)
80
- - {context_path} (User decisions, if exists)
81
- </files_to_read>
82
-
83
- <config>
84
- phase_dir: {phase_dir}
85
- padded_phase: {padded_phase}
86
- </config>
87
- ```
88
-
89
- Omit null file paths.
90
-
91
- ```
92
- Task(
93
- prompt=ui_audit_prompt,
94
- subagent_type="ez-ui-auditor",
95
- model="{UI_AUDITOR_MODEL}",
96
- description="UI Audit Phase {N}"
97
- )
98
- ```
99
-
100
- ## 4. Handle Return
101
-
102
- **If `## UI REVIEW COMPLETE`:**
103
-
104
- Display score summary:
105
-
106
- ```
107
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
108
- EZ ► UI AUDIT COMPLETE ✓
109
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
110
-
111
- **Phase {N}: {Name}** — Overall: {score}/24
112
-
113
- | Pillar | Score |
114
- |--------|-------|
115
- | Copywriting | {N}/4 |
116
- | Visuals | {N}/4 |
117
- | Color | {N}/4 |
118
- | Typography | {N}/4 |
119
- | Spacing | {N}/4 |
120
- | Experience Design | {N}/4 |
121
-
122
- Top fixes:
123
- 1. {fix}
124
- 2. {fix}
125
- 3. {fix}
126
-
127
- Full review: {path to UI-REVIEW.md}
128
-
129
- ───────────────────────────────────────────────────────────────
130
-
131
- ## ▶ Next
132
-
133
- - `/ez:verify-work {N}` — UAT testing
134
- - `/ez:plan-phase {N+1}` — plan next phase
135
-
136
- <sub>/clear first → fresh context window</sub>
137
-
138
- ───────────────────────────────────────────────────────────────
139
- ```
140
-
141
- ## 5. Commit (if configured)
142
-
143
- ```bash
144
- node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" commit "docs(${padded_phase}): UI audit review" --files "${PHASE_DIR}/${PADDED_PHASE}-UI-REVIEW.md"
145
- ```
146
-
147
- </process>
148
-
149
- <success_criteria>
150
- - [ ] Phase validated
151
- - [ ] SUMMARY.md files found (execution completed)
152
- - [ ] Existing review handled (re-audit/view)
153
- - [ ] ez-ui-auditor spawned with correct context
154
- - [ ] UI-REVIEW.md created in phase directory
155
- - [ ] Score summary displayed to user
156
- - [ ] Next steps presented
157
- </success_criteria>
@@ -1,167 +0,0 @@
1
- <purpose>
2
- Audit Nyquist validation gaps for a completed phase. Generate missing tests. Update VALIDATION.md.
3
- </purpose>
4
-
5
- <required_reading>
6
- @~/.claude/ez-agents/references/ui-brand.md
7
- </required_reading>
8
-
9
- <process>
10
-
11
- ## 0. Initialize
12
-
13
- ```bash
14
- INIT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" init phase-op "${PHASE_ARG}")
15
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
16
- ```
17
-
18
- Parse: `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`.
19
-
20
- ```bash
21
- AUDITOR_MODEL=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model ez-nyquist-auditor --raw)
22
- NYQUIST_CFG=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" config get workflow.nyquist_validation --raw)
23
- ```
24
-
25
- If `NYQUIST_CFG` is `false`: exit with "Nyquist validation is disabled. Enable via /ez:settings."
26
-
27
- Display banner: `EZ > VALIDATE PHASE {N}: {name}`
28
-
29
- ## 1. Detect Input State
30
-
31
- ```bash
32
- VALIDATION_FILE=$(ls "${PHASE_DIR}"/*-VALIDATION.md 2>/dev/null | head -1)
33
- SUMMARY_FILES=$(ls "${PHASE_DIR}"/*-SUMMARY.md 2>/dev/null)
34
- ```
35
-
36
- - **State A** (`VALIDATION_FILE` non-empty): Audit existing
37
- - **State B** (`VALIDATION_FILE` empty, `SUMMARY_FILES` non-empty): Reconstruct from artifacts
38
- - **State C** (`SUMMARY_FILES` empty): Exit — "Phase {N} not executed. Run /ez:execute-phase {N} first."
39
-
40
- ## 2. Discovery
41
-
42
- ### 2a. Read Phase Artifacts
43
-
44
- Read all PLAN and SUMMARY files. Extract: task lists, requirement IDs, key-files changed, verify blocks.
45
-
46
- ### 2b. Build Requirement-to-Task Map
47
-
48
- Per task: `{ task_id, plan_id, wave, requirement_ids, has_automated_command }`
49
-
50
- ### 2c. Detect Test Infrastructure
51
-
52
- State A: Parse from existing VALIDATION.md Test Infrastructure table.
53
- State B: Filesystem scan:
54
-
55
- ```bash
56
- find . -name "pytest.ini" -o -name "jest.config.*" -o -name "vitest.config.*" -o -name "pyproject.toml" 2>/dev/null | head -10
57
- find . \( -name "*.test.*" -o -name "*.spec.*" -o -name "test_*" \) -not -path "*/node_modules/*" 2>/dev/null | head -40
58
- ```
59
-
60
- ### 2d. Cross-Reference
61
-
62
- Match each requirement to existing tests by filename, imports, test descriptions. Record: requirement → test_file → status.
63
-
64
- ## 3. Gap Analysis
65
-
66
- Classify each requirement:
67
-
68
- | Status | Criteria |
69
- |--------|----------|
70
- | COVERED | Test exists, targets behavior, runs green |
71
- | PARTIAL | Test exists, failing or incomplete |
72
- | MISSING | No test found |
73
-
74
- Build: `{ task_id, requirement, gap_type, suggested_test_path, suggested_command }`
75
-
76
- No gaps → skip to Step 6, set `nyquist_compliant: true`.
77
-
78
- ## 4. Present Gap Plan
79
-
80
- Call AskUserQuestion with gap table and options:
81
- 1. "Fix all gaps" → Step 5
82
- 2. "Skip — mark manual-only" → add to Manual-Only, Step 6
83
- 3. "Cancel" → exit
84
-
85
- ## 5. Spawn ez-nyquist-auditor
86
-
87
- ```
88
- Task(
89
- prompt="Read ~/.claude/agents/ez-nyquist-auditor.md for instructions.\n\n" +
90
- "<files_to_read>{PLAN, SUMMARY, impl files, VALIDATION.md}</files_to_read>" +
91
- "<gaps>{gap list}</gaps>" +
92
- "<test_infrastructure>{framework, config, commands}</test_infrastructure>" +
93
- "<constraints>Never modify impl files. Max 3 debug iterations. Escalate impl bugs.</constraints>",
94
- subagent_type="ez-nyquist-auditor",
95
- model="{AUDITOR_MODEL}",
96
- description="Fill validation gaps for Phase {N}"
97
- )
98
- ```
99
-
100
- Handle return:
101
- - `## GAPS FILLED` → record tests + map updates, Step 6
102
- - `## PARTIAL` → record resolved, move escalated to manual-only, Step 6
103
- - `## ESCALATE` → move all to manual-only, Step 6
104
-
105
- ## 6. Generate/Update VALIDATION.md
106
-
107
- **State B (create):**
108
- 1. Read template from `~/.claude/ez-agents/templates/VALIDATION.md`
109
- 2. Fill: frontmatter, Test Infrastructure, Per-Task Map, Manual-Only, Sign-Off
110
- 3. Write to `${PHASE_DIR}/${PADDED_PHASE}-VALIDATION.md`
111
-
112
- **State A (update):**
113
- 1. Update Per-Task Map statuses, add escalated to Manual-Only, update frontmatter
114
- 2. Append audit trail:
115
-
116
- ```markdown
117
- ## Validation Audit {date}
118
- | Metric | Count |
119
- |--------|-------|
120
- | Gaps found | {N} |
121
- | Resolved | {M} |
122
- | Escalated | {K} |
123
- ```
124
-
125
- ## 7. Commit
126
-
127
- ```bash
128
- git add {test_files}
129
- git commit -m "test(phase-${PHASE}): add Nyquist validation tests"
130
-
131
- node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" commit "docs(phase-${PHASE}): add/update validation strategy"
132
- ```
133
-
134
- ## 8. Results + Routing
135
-
136
- **Compliant:**
137
- ```
138
- EZ > PHASE {N} IS NYQUIST-COMPLIANT
139
- All requirements have automated verification.
140
- ▶ Next: /ez:audit-milestone
141
- ```
142
-
143
- **Partial:**
144
- ```
145
- EZ > PHASE {N} VALIDATED (PARTIAL)
146
- {M} automated, {K} manual-only.
147
- ▶ Retry: /ez:validate-phase {N}
148
- ```
149
-
150
- Display `/clear` reminder.
151
-
152
- </process>
153
-
154
- <success_criteria>
155
- - [ ] Nyquist config checked (exit if disabled)
156
- - [ ] Input state detected (A/B/C)
157
- - [ ] State C exits cleanly
158
- - [ ] PLAN/SUMMARY files read, requirement map built
159
- - [ ] Test infrastructure detected
160
- - [ ] Gaps classified (COVERED/PARTIAL/MISSING)
161
- - [ ] User gate with gap table
162
- - [ ] Auditor spawned with complete context
163
- - [ ] All three return formats handled
164
- - [ ] VALIDATION.md created or updated
165
- - [ ] Test files committed separately
166
- - [ ] Results with routing presented
167
- </success_criteria>