@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.
- package/README.md +735 -537
- package/agents/ez-architect-agent.md +267 -0
- package/agents/ez-backend-agent.md +303 -0
- package/agents/ez-chief-strategist.md +271 -0
- package/agents/ez-codebase-mapper.md +770 -770
- package/agents/ez-context-manager.md +319 -0
- package/agents/ez-debugger.md +1255 -1255
- package/agents/ez-design-expert.md +347 -0
- package/agents/ez-devops-agent.md +331 -0
- package/agents/ez-executor.md +487 -487
- package/agents/ez-frontend-agent.md +322 -0
- package/agents/ez-phase-researcher.md +553 -553
- package/agents/ez-planner.md +1307 -1307
- package/agents/ez-product-engineer.md +435 -0
- package/agents/ez-project-researcher.md +629 -629
- package/agents/ez-qa-agent.md +320 -0
- package/agents/ez-release-agent.md +333 -333
- package/agents/ez-requirements-agent.md +377 -377
- package/agents/ez-roadmapper.md +650 -650
- package/agents/ez-technical-writer.md +551 -0
- package/agents/ez-ux-expert.md +393 -0
- package/agents/ez-verifier.md +579 -579
- package/bin/guards/autonomy-guard.cjs +346 -0
- package/bin/guards/context-budget-guard.cjs +278 -0
- package/bin/guards/hallucination-guard.cjs +380 -0
- package/bin/guards/hidden-state-guard.cjs +182 -0
- package/bin/guards/team-overhead-guard.cjs +266 -0
- package/bin/guards/tool-sprawl-guard.cjs +271 -0
- package/bin/lib/analytics/analytics-collector.cjs +86 -0
- package/bin/lib/analytics/analytics-reporter.cjs +130 -0
- package/bin/lib/analytics/cohort-analyzer.cjs +138 -0
- package/bin/lib/analytics/funnel-analyzer.cjs +147 -0
- package/bin/lib/analytics/nps-tracker.cjs +147 -0
- package/bin/lib/archetype-detector.cjs +289 -0
- package/bin/lib/assistant-adapter.cjs +361 -0
- package/bin/lib/audit-exec.cjs +175 -0
- package/bin/lib/auth.cjs +176 -0
- package/bin/lib/backup-service.cjs +422 -0
- package/bin/lib/bdd-validator.cjs +622 -0
- package/bin/lib/business-flow-mapper.cjs +429 -0
- package/bin/lib/circuit-breaker.cjs +276 -0
- package/bin/lib/code-complexity-analyzer.cjs +360 -0
- package/bin/lib/codebase-analyzer.cjs +241 -0
- package/bin/lib/commands.cjs +691 -0
- package/bin/lib/config.cjs +236 -0
- package/bin/lib/constraint-extractor.cjs +526 -0
- package/bin/lib/content-scanner.cjs +238 -0
- package/bin/lib/context-cache.cjs +154 -0
- package/bin/lib/context-compressor.cjs +102 -0
- package/bin/lib/context-deduplicator.cjs +105 -0
- package/bin/lib/context-errors.cjs +78 -0
- package/bin/lib/context-manager.cjs +338 -0
- package/bin/lib/context-metadata-tracker.cjs +140 -0
- package/bin/lib/context-relevance-scorer.cjs +99 -0
- package/bin/lib/core.cjs +507 -0
- package/bin/lib/cost-alerts.cjs +174 -0
- package/bin/lib/cost-tracker.cjs +275 -0
- package/bin/lib/crash-recovery.cjs +220 -0
- package/bin/lib/dependency-graph.cjs +319 -0
- package/bin/lib/deploy/deploy-audit-log.cjs +76 -0
- package/bin/lib/deploy/deploy-detector.cjs +69 -0
- package/bin/lib/deploy/deploy-env-manager.cjs +109 -0
- package/bin/lib/deploy/deploy-health-check.cjs +88 -0
- package/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
- package/bin/lib/deploy/deploy-rollback.cjs +72 -0
- package/bin/lib/deploy/deploy-runner.cjs +97 -0
- package/bin/lib/deploy/deploy-status.cjs +74 -0
- package/bin/lib/discussion-synthesizer.cjs +439 -0
- package/bin/lib/error-cache.cjs +114 -0
- package/bin/lib/error-registry.cjs +177 -0
- package/bin/lib/file-access.cjs +207 -0
- package/bin/lib/file-lock.cjs +236 -0
- package/bin/lib/finops/budget-enforcer.cjs +126 -0
- package/bin/lib/finops/cost-reporter.cjs +132 -0
- package/bin/lib/finops/finops-analyzer.cjs +112 -0
- package/bin/lib/finops/spot-manager.cjs +118 -0
- package/bin/lib/framework-detector.cjs +396 -0
- package/bin/lib/frontmatter.cjs +313 -0
- package/bin/lib/fs-utils.cjs +153 -0
- package/bin/lib/gate-executor.cjs +272 -0
- package/bin/lib/gates/README.md +374 -0
- package/bin/lib/gates/gate-01-requirement.cjs +303 -0
- package/bin/lib/gates/gate-02-architecture.cjs +555 -0
- package/bin/lib/gates/gate-03-code.cjs +635 -0
- package/bin/lib/gates/gate-04-security.cjs +829 -0
- package/bin/lib/git-errors.cjs +83 -0
- package/bin/lib/git-utils.cjs +321 -0
- package/bin/lib/git-workflow-engine.cjs +1157 -0
- package/bin/lib/health-check.cjs +227 -0
- package/bin/lib/index.cjs +279 -0
- package/bin/lib/init.cjs +725 -0
- package/bin/lib/lock-logger.cjs +194 -0
- package/bin/lib/lock-state.cjs +263 -0
- package/bin/lib/lockfile-validator.cjs +227 -0
- package/bin/lib/log-rotation.cjs +71 -0
- package/bin/lib/logger.cjs +125 -0
- package/bin/lib/memory-compression.cjs +256 -0
- package/bin/lib/milestone.cjs +247 -0
- package/bin/lib/model-provider.cjs +241 -0
- package/bin/lib/package-manager-detector.cjs +203 -0
- package/bin/lib/package-manager-executor.cjs +385 -0
- package/bin/lib/package-manager-service.cjs +216 -0
- package/bin/lib/perf/api-monitor.cjs +88 -0
- package/bin/lib/perf/db-optimizer.cjs +78 -0
- package/bin/lib/perf/frontend-performance.cjs +56 -0
- package/bin/lib/perf/perf-analyzer.cjs +77 -0
- package/bin/lib/perf/perf-baseline.cjs +102 -0
- package/bin/lib/perf/perf-reporter.cjs +117 -0
- package/bin/lib/perf/regression-detector.cjs +92 -0
- package/bin/lib/phase.cjs +963 -0
- package/bin/lib/planning-write.cjs +123 -0
- package/bin/lib/project-reporter.cjs +565 -0
- package/bin/lib/quality-gate.cjs +332 -0
- package/bin/lib/quality-metrics.cjs +324 -0
- package/bin/lib/recovery-manager.cjs +98 -0
- package/bin/lib/release-validator.cjs +617 -0
- package/bin/lib/retry.cjs +119 -0
- package/bin/lib/roadmap.cjs +309 -0
- package/bin/lib/safe-exec.cjs +173 -0
- package/bin/lib/safe-path.cjs +130 -0
- package/bin/lib/security-errors.cjs +62 -0
- package/bin/lib/session-chain.cjs +304 -0
- package/bin/lib/session-errors.cjs +81 -0
- package/bin/lib/session-export.cjs +251 -0
- package/bin/lib/session-import.cjs +262 -0
- package/bin/lib/session-manager.cjs +280 -0
- package/bin/lib/skill-context.cjs +148 -0
- package/bin/lib/skill-matcher.cjs +236 -0
- package/bin/lib/skill-registry.cjs +360 -0
- package/bin/lib/skill-resolver.cjs +449 -0
- package/bin/lib/skill-triggers.cjs +90 -0
- package/bin/lib/skill-validator.cjs +270 -0
- package/bin/lib/skill-versioning.cjs +355 -0
- package/bin/lib/stack-detector.cjs +399 -0
- package/bin/lib/state.cjs +736 -0
- package/bin/lib/tech-debt-analyzer.cjs +309 -0
- package/bin/lib/temp-file.cjs +239 -0
- package/bin/lib/template.cjs +223 -0
- package/bin/lib/test-file-lock.cjs +112 -0
- package/bin/lib/test-graceful.cjs +93 -0
- package/bin/lib/test-logger.cjs +60 -0
- package/bin/lib/test-safe-exec.cjs +38 -0
- package/bin/lib/test-safe-path.cjs +33 -0
- package/bin/lib/test-temp-file.cjs +125 -0
- package/bin/lib/tier-manager.cjs +428 -0
- package/bin/lib/timeout-exec.cjs +63 -0
- package/bin/lib/tradeoff-analyzer.cjs +284 -0
- package/bin/lib/url-fetch.cjs +170 -0
- package/bin/lib/verify.cjs +863 -0
- package/bin/update.js +217 -214
- package/commands/deploy.cjs +53 -0
- package/commands/ez/add-tests.md +41 -41
- package/commands/ez/audit-milestone.md +36 -36
- package/commands/ez/complete-milestone.md +136 -136
- package/commands/ez/discuss-phase.md +90 -90
- package/commands/ez/execute-phase.md +52 -52
- package/commands/ez/help.md +22 -22
- package/commands/ez/map-codebase.md +71 -71
- package/commands/ez/new-milestone.md +44 -44
- package/commands/ez/new-project.md +51 -42
- package/commands/ez/plan-phase.md +53 -53
- package/commands/ez/progress.md +36 -36
- package/commands/ez/quick.md +45 -45
- package/commands/ez/resume-work.md +40 -40
- package/commands/ez/run-phase.md +580 -0
- package/commands/ez/settings.md +36 -36
- package/commands/ez/update.md +37 -37
- package/commands/ez/verify-work.md +402 -38
- package/commands/health-check.cjs +44 -0
- package/commands/rollback.cjs +47 -0
- package/ez-agents/bin/ez-tools.cjs +599 -2
- package/ez-agents/bin/guards/autonomy-guard.cjs +346 -0
- package/ez-agents/bin/guards/context-budget-guard.cjs +247 -0
- package/ez-agents/bin/guards/hallucination-guard.cjs +271 -0
- package/ez-agents/bin/guards/hidden-state-guard.cjs +182 -0
- package/ez-agents/bin/guards/team-overhead-guard.cjs +266 -0
- package/ez-agents/bin/guards/tool-sprawl-guard.cjs +271 -0
- package/ez-agents/bin/lib/analytics/analytics-collector.cjs +86 -0
- package/ez-agents/bin/lib/analytics/analytics-reporter.cjs +130 -0
- package/ez-agents/bin/lib/analytics/cohort-analyzer.cjs +138 -0
- package/ez-agents/bin/lib/analytics/funnel-analyzer.cjs +147 -0
- package/ez-agents/bin/lib/analytics/nps-tracker.cjs +147 -0
- package/ez-agents/bin/lib/archetype-detector.cjs +289 -0
- package/ez-agents/bin/lib/audit-exec.cjs +166 -167
- package/ez-agents/bin/lib/auth.cjs +176 -176
- package/ez-agents/bin/lib/backup-service.cjs +422 -0
- package/ez-agents/bin/lib/bdd-validator.cjs +622 -622
- package/ez-agents/bin/lib/business-flow-mapper.cjs +429 -0
- package/ez-agents/bin/lib/code-complexity-analyzer.cjs +360 -0
- package/ez-agents/bin/lib/codebase-analyzer.cjs +241 -0
- package/ez-agents/bin/lib/commands.cjs +685 -685
- package/ez-agents/bin/lib/config.cjs +41 -1
- package/ez-agents/bin/lib/constraint-extractor.cjs +526 -0
- package/ez-agents/bin/lib/content-scanner.cjs +238 -238
- package/ez-agents/bin/lib/context-cache.cjs +154 -154
- package/ez-agents/bin/lib/context-errors.cjs +71 -71
- package/ez-agents/bin/lib/context-manager.cjs +220 -220
- package/ez-agents/bin/lib/core.cjs +507 -512
- package/ez-agents/bin/lib/cost-tracker.cjs +243 -0
- package/ez-agents/bin/lib/crash-recovery.cjs +172 -0
- package/ez-agents/bin/lib/dependency-graph.cjs +319 -0
- package/ez-agents/bin/lib/deploy/deploy-audit-log.cjs +76 -0
- package/ez-agents/bin/lib/deploy/deploy-detector.cjs +69 -0
- package/ez-agents/bin/lib/deploy/deploy-env-manager.cjs +109 -0
- package/ez-agents/bin/lib/deploy/deploy-health-check.cjs +88 -0
- package/ez-agents/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
- package/ez-agents/bin/lib/deploy/deploy-rollback.cjs +72 -0
- package/ez-agents/bin/lib/deploy/deploy-runner.cjs +97 -0
- package/ez-agents/bin/lib/deploy/deploy-status.cjs +74 -0
- package/ez-agents/bin/lib/file-access.cjs +207 -207
- package/ez-agents/bin/lib/finops/budget-enforcer.cjs +126 -0
- package/ez-agents/bin/lib/finops/cost-reporter.cjs +132 -0
- package/ez-agents/bin/lib/finops/finops-analyzer.cjs +112 -0
- package/ez-agents/bin/lib/finops/spot-manager.cjs +118 -0
- package/ez-agents/bin/lib/framework-detector.cjs +396 -0
- package/ez-agents/bin/lib/frontmatter.cjs +3 -1
- package/ez-agents/bin/lib/gates/README.md +374 -0
- package/ez-agents/bin/lib/gates/gate-01-requirement.cjs +303 -0
- package/ez-agents/bin/lib/gates/gate-02-architecture.cjs +555 -0
- package/ez-agents/bin/lib/gates/gate-03-code.cjs +635 -0
- package/ez-agents/bin/lib/gates/gate-04-security.cjs +829 -0
- package/ez-agents/bin/lib/git-errors.cjs +83 -83
- package/ez-agents/bin/lib/git-utils.cjs +321 -321
- package/ez-agents/bin/lib/git-workflow-engine.cjs +1157 -1157
- package/ez-agents/bin/lib/health-check.cjs +162 -162
- package/ez-agents/bin/lib/index.cjs +2 -8
- package/ez-agents/bin/lib/init.cjs +0 -2
- package/ez-agents/bin/lib/lockfile-validator.cjs +227 -227
- package/ez-agents/bin/lib/log-rotation.cjs +71 -0
- package/ez-agents/bin/lib/logger.cjs +22 -47
- package/ez-agents/bin/lib/memory-compression.cjs +256 -256
- package/ez-agents/bin/lib/package-manager-detector.cjs +203 -203
- package/ez-agents/bin/lib/package-manager-executor.cjs +385 -385
- package/ez-agents/bin/lib/package-manager-service.cjs +216 -216
- package/ez-agents/bin/lib/perf/api-monitor.cjs +88 -0
- package/ez-agents/bin/lib/perf/db-optimizer.cjs +78 -0
- package/ez-agents/bin/lib/perf/frontend-performance.cjs +56 -0
- package/ez-agents/bin/lib/perf/perf-analyzer.cjs +77 -0
- package/ez-agents/bin/lib/perf/perf-baseline.cjs +102 -0
- package/ez-agents/bin/lib/perf/perf-reporter.cjs +117 -0
- package/ez-agents/bin/lib/perf/regression-detector.cjs +92 -0
- package/ez-agents/bin/lib/project-reporter.cjs +502 -0
- package/ez-agents/bin/lib/quality-gate.cjs +332 -0
- package/ez-agents/bin/lib/recovery-manager.cjs +98 -0
- package/ez-agents/bin/lib/release-validator.cjs +617 -614
- package/ez-agents/bin/lib/security-errors.cjs +62 -0
- package/ez-agents/bin/lib/session-chain.cjs +304 -304
- package/ez-agents/bin/lib/session-errors.cjs +81 -81
- package/ez-agents/bin/lib/session-export.cjs +251 -251
- package/ez-agents/bin/lib/session-import.cjs +262 -262
- package/ez-agents/bin/lib/session-manager.cjs +280 -280
- package/ez-agents/bin/lib/skill-context.cjs +148 -0
- package/ez-agents/bin/lib/skill-matcher.cjs +236 -0
- package/ez-agents/bin/lib/skill-registry.cjs +341 -0
- package/ez-agents/bin/lib/skill-resolver.cjs +449 -0
- package/ez-agents/bin/lib/skill-triggers.cjs +90 -0
- package/ez-agents/bin/lib/skill-validator.cjs +270 -0
- package/ez-agents/bin/lib/skill-versioning.cjs +355 -0
- package/ez-agents/bin/lib/stack-detector.cjs +399 -0
- package/ez-agents/bin/lib/tech-debt-analyzer.cjs +309 -0
- package/ez-agents/bin/lib/tier-manager.cjs +428 -428
- package/ez-agents/bin/lib/tradeoff-analyzer.cjs +284 -0
- package/ez-agents/bin/lib/url-fetch.cjs +170 -170
- package/ez-agents/bin/lib/verify.cjs +863 -863
- package/ez-agents/references/decimal-phase-calculation.md +65 -65
- package/ez-agents/references/git-integration.md +248 -248
- package/ez-agents/references/git-planning-commit.md +38 -38
- package/ez-agents/references/metrics-schema.md +118 -118
- package/ez-agents/references/model-profile-resolution.md +34 -34
- package/ez-agents/references/model-profiles.md +93 -93
- package/ez-agents/references/phase-argument-parsing.md +61 -61
- package/ez-agents/references/planning-config.md +340 -340
- package/ez-agents/references/tier-strategy.md +103 -103
- package/ez-agents/references/ui-brand.md +160 -160
- package/ez-agents/references/verification-patterns.md +612 -612
- package/ez-agents/templates/DEBUG.md +164 -164
- package/ez-agents/templates/UAT.md +247 -247
- package/ez-agents/templates/agent-output-format.md +404 -0
- package/ez-agents/templates/bdd-feature.md +173 -173
- package/ez-agents/templates/codebase/architecture.md +255 -255
- package/ez-agents/templates/codebase/structure.md +285 -285
- package/ez-agents/templates/copilot-instructions.md +7 -7
- package/ez-agents/templates/debug-subagent-prompt.md +91 -91
- package/ez-agents/templates/discovery.md +146 -146
- package/ez-agents/templates/discussion.md +68 -68
- package/ez-agents/templates/handoff-protocol.md +294 -0
- package/ez-agents/templates/incident-runbook.md +205 -205
- package/ez-agents/templates/mode-workflow-templates.md +301 -0
- package/ez-agents/templates/phase-prompt.md +610 -610
- package/ez-agents/templates/planner-subagent-prompt.md +117 -117
- package/ez-agents/templates/project.md +184 -184
- package/ez-agents/templates/release-checklist.md +136 -133
- package/ez-agents/templates/research.md +552 -552
- package/ez-agents/templates/rollback-plan.md +201 -201
- package/ez-agents/templates/security-user-setup.md +244 -0
- package/ez-agents/templates/skill-validation-rules.md +476 -0
- package/ez-agents/templates/state.md +180 -176
- package/ez-agents/templates/summary-complex.md +59 -59
- package/ez-agents/tests/gates/gate-01-02.test.cjs +812 -0
- package/ez-agents/tests/gates/gate-03-04.test.cjs +762 -0
- package/ez-agents/tests/gates/gate-05-validator.test.cjs +145 -0
- package/ez-agents/tests/gates/gate-06-docs-validator.test.cjs +244 -0
- package/ez-agents/tests/gates/gate-07-release-validator.test.cjs +219 -0
- package/ez-agents/tests/guards/context-budget-guard.test.cjs +145 -0
- package/ez-agents/tests/guards/edge-case-guards.test.cjs +238 -0
- package/ez-agents/tests/guards/hallucination-guard.test.cjs +124 -0
- package/ez-agents/workflows/audit-milestone.md +1 -1
- package/ez-agents/workflows/autonomous.md +844 -844
- package/ez-agents/workflows/complete-milestone.md +1 -1
- package/ez-agents/workflows/discuss-phase.md +1 -1
- package/ez-agents/workflows/execute-phase.md +124 -3
- package/ez-agents/workflows/help.md +42 -181
- package/ez-agents/workflows/hotfix.md +291 -291
- package/ez-agents/workflows/new-milestone.md +713 -713
- package/ez-agents/workflows/new-project.md +1089 -1107
- package/ez-agents/workflows/plan-phase.md +0 -40
- package/ez-agents/workflows/release.md +253 -253
- package/ez-agents/workflows/resume-session.md +215 -215
- package/ez-agents/workflows/run-phase.md +531 -0
- package/ez-agents/workflows/settings.md +2 -35
- package/hooks/dist/ez-check-update.js +81 -81
- package/hooks/dist/ez-context-monitor.js +148 -141
- package/hooks/dist/ez-statusline.js +115 -115
- package/package.json +78 -71
- package/scripts/fix-qwen-installation.js +144 -144
- package/agents/ez-integration-checker.md +0 -443
- package/agents/ez-nyquist-auditor.md +0 -176
- package/agents/ez-observer-agent.md +0 -260
- package/agents/ez-plan-checker.md +0 -706
- package/agents/ez-research-synthesizer.md +0 -247
- package/agents/ez-scrum-master-agent.md +0 -242
- package/agents/ez-tech-lead-agent.md +0 -267
- package/agents/ez-ui-auditor.md +0 -439
- package/agents/ez-ui-checker.md +0 -300
- package/agents/ez-ui-researcher.md +0 -353
- package/commands/ez/add-phase.md +0 -43
- package/commands/ez/add-todo.md +0 -47
- package/commands/ez/arch-review.md +0 -102
- package/commands/ez/auth.md +0 -87
- package/commands/ez/autonomous.md +0 -41
- package/commands/ez/check-todos.md +0 -45
- package/commands/ez/cleanup.md +0 -18
- package/commands/ez/debug.md +0 -168
- package/commands/ez/export-session.md +0 -79
- package/commands/ez/gather-requirements.md +0 -117
- package/commands/ez/git-workflow.md +0 -72
- package/commands/ez/health.md +0 -22
- package/commands/ez/hotfix.md +0 -120
- package/commands/ez/import-session.md +0 -82
- package/commands/ez/insert-phase.md +0 -32
- package/commands/ez/join-discord.md +0 -18
- package/commands/ez/list-phase-assumptions.md +0 -46
- package/commands/ez/list-sessions.md +0 -96
- package/commands/ez/package-manager.md +0 -316
- package/commands/ez/pause-work.md +0 -38
- package/commands/ez/plan-milestone-gaps.md +0 -34
- package/commands/ez/preflight.md +0 -79
- package/commands/ez/reapply-patches.md +0 -124
- package/commands/ez/release.md +0 -153
- package/commands/ez/remove-phase.md +0 -31
- package/commands/ez/research-phase.md +0 -190
- package/commands/ez/resume.md +0 -107
- package/commands/ez/set-profile.md +0 -34
- package/commands/ez/standup.md +0 -85
- package/commands/ez/stats.md +0 -18
- package/commands/ez/ui-phase.md +0 -34
- package/commands/ez/ui-review.md +0 -32
- package/commands/ez/validate-phase.md +0 -35
- package/ez-agents/bin/lib/metrics-tracker.cjs +0 -406
- package/ez-agents/templates/UI-SPEC.md +0 -100
- package/ez-agents/templates/VALIDATION.md +0 -76
- package/ez-agents/templates/context.md +0 -352
- package/ez-agents/templates/verification-report.md +0 -322
- package/ez-agents/workflows/arch-review.md +0 -54
- package/ez-agents/workflows/export-session.md +0 -255
- package/ez-agents/workflows/gather-requirements.md +0 -206
- package/ez-agents/workflows/import-session.md +0 -303
- package/ez-agents/workflows/research-phase.md +0 -74
- package/ez-agents/workflows/standup.md +0 -64
- package/ez-agents/workflows/ui-phase.md +0 -290
- package/ez-agents/workflows/ui-review.md +0 -157
- package/ez-agents/workflows/validate-phase.md +0 -167
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Run a Tech Lead architecture review on phase plans. Reads phase PLAN.md files and checks for pattern drift, technical debt, security issues, and design conflicts.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<process>
|
|
6
|
-
|
|
7
|
-
## 1. Initialize
|
|
8
|
-
|
|
9
|
-
Parse $ARGUMENTS for phase number.
|
|
10
|
-
|
|
11
|
-
```bash
|
|
12
|
-
INIT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" init plan-phase "$PHASE")
|
|
13
|
-
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
Extract: `phase_dir`, `phase_number`, `phase_name`, `planner_model`.
|
|
17
|
-
|
|
18
|
-
## 2. Validate
|
|
19
|
-
|
|
20
|
-
Check phase directory and plans exist. If no PLAN.md found: error "No plans found for phase {N}. Run /ez:plan-phase first."
|
|
21
|
-
|
|
22
|
-
## 3. Spawn Tech Lead Review
|
|
23
|
-
|
|
24
|
-
Display:
|
|
25
|
-
```
|
|
26
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
27
|
-
EZ ► ARCH REVIEW — Phase {N}: {Name}
|
|
28
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
Task(
|
|
33
|
-
prompt="Review architecture of Phase {phase_number}: {phase_name}.
|
|
34
|
-
Read all PLAN.md files in {phase_dir}.
|
|
35
|
-
Check: pattern consistency, technical debt, security, cross-phase conflicts, dependencies.
|
|
36
|
-
Report: BLOCKERS (must fix), WARNINGS (should fix), ADVISORY (consider).
|
|
37
|
-
Output: ## Tech Lead Review: Phase {N} — {status}",
|
|
38
|
-
subagent_type="ez-tech-lead-agent",
|
|
39
|
-
model="{planner_model}"
|
|
40
|
-
)
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## 4. Present Results
|
|
44
|
-
|
|
45
|
-
Display agent output directly. If BLOCKER found: highlight "Fix before /ez:execute-phase". If APPROVE: confirm safe to execute.
|
|
46
|
-
|
|
47
|
-
</process>
|
|
48
|
-
|
|
49
|
-
<success_criteria>
|
|
50
|
-
- [ ] Phase validated
|
|
51
|
-
- [ ] Tech lead agent spawned
|
|
52
|
-
- [ ] Findings presented with severity
|
|
53
|
-
- [ ] Clear go/no-go for execution
|
|
54
|
-
</success_criteria>
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
# Workflow: export-session
|
|
2
|
-
|
|
3
|
-
**Purpose:** Export session data for model handoff or archival
|
|
4
|
-
|
|
5
|
-
**Related Commands:** `/ez:export-session`
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Workflow Steps
|
|
10
|
-
|
|
11
|
-
### 1. Parameters
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
session_id: string (default: 'last')
|
|
15
|
-
format: 'markdown' | 'json' (default: 'markdown')
|
|
16
|
-
output_path: string (default: auto-generated)
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### 2. Resolve Session
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
SessionManager mgr = new SessionManager();
|
|
23
|
-
|
|
24
|
-
if (session_id === 'last') {
|
|
25
|
-
session = mgr.getLastSession();
|
|
26
|
-
if (!session) {
|
|
27
|
-
throw error("No sessions found");
|
|
28
|
-
}
|
|
29
|
-
session_id = session.metadata.session_id;
|
|
30
|
-
} else {
|
|
31
|
-
session = mgr.loadSession(session_id);
|
|
32
|
-
if (!session) {
|
|
33
|
-
throw error(`Session not found: ${session_id}`);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
logger.info('Exporting session', { session_id });
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### 3. Validate Format
|
|
41
|
-
|
|
42
|
-
```
|
|
43
|
-
if (!['markdown', 'json'].includes(format)) {
|
|
44
|
-
throw error("Format must be 'markdown' or 'json'");
|
|
45
|
-
}
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### 4. Generate Output Path
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
if (!output_path) {
|
|
52
|
-
ext = format === 'markdown' ? 'md' : 'json';
|
|
53
|
-
output_path = `.planning/sessions/export-${session_id}.${ext}`;
|
|
54
|
-
}
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### 5. Export
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
SessionExport exporter = new SessionExport(mgr);
|
|
61
|
-
|
|
62
|
-
try {
|
|
63
|
-
result = exporter.exportToFile(session_id, format, output_path);
|
|
64
|
-
} catch (SessionExportError err) {
|
|
65
|
-
logger.error('Export failed', { session_id, format, error: err.message });
|
|
66
|
-
throw error(`Export failed: ${err.message}`);
|
|
67
|
-
}
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### 6. Verify Output
|
|
71
|
-
|
|
72
|
-
```
|
|
73
|
-
if (!fs.existsSync(output_path)) {
|
|
74
|
-
throw error("Export verification failed: File not created");
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const stats = fs.statSync(output_path);
|
|
78
|
-
if (stats.size === 0) {
|
|
79
|
-
throw error("Export verification failed: File is empty");
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
logger.info('Export verified', { path: output_path, size: stats.size });
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
### 7. Log Success
|
|
86
|
-
|
|
87
|
-
```
|
|
88
|
-
logger.info('Session exported', {
|
|
89
|
-
session_id,
|
|
90
|
-
format,
|
|
91
|
-
output_path,
|
|
92
|
-
size: stats.size
|
|
93
|
-
});
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
### 8. Return Result
|
|
97
|
-
|
|
98
|
-
```
|
|
99
|
-
return {
|
|
100
|
-
success: true,
|
|
101
|
-
path: output_path,
|
|
102
|
-
format: format,
|
|
103
|
-
size: stats.size
|
|
104
|
-
};
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
## Output Format Examples
|
|
110
|
-
|
|
111
|
-
### Markdown Export
|
|
112
|
-
```markdown
|
|
113
|
-
# Session Export: session-20260319-143052
|
|
114
|
-
|
|
115
|
-
**Exported:** 2026-03-19T15:45:00.000Z
|
|
116
|
-
**Model:** qwen
|
|
117
|
-
**Phase:** 18
|
|
118
|
-
**Plan:** 18
|
|
119
|
-
**Duration:** 1h 15m
|
|
120
|
-
|
|
121
|
-
---
|
|
122
|
-
|
|
123
|
-
## Session Summary
|
|
124
|
-
|
|
125
|
-
**Objective:** Implement session memory and model continuity
|
|
126
|
-
|
|
127
|
-
**Completed:**
|
|
128
|
-
- Task 1: Create session error classes
|
|
129
|
-
- Task 2: Create session manager
|
|
130
|
-
|
|
131
|
-
**Incomplete:**
|
|
132
|
-
- Task 3: Create session export module
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
## Key Decisions
|
|
137
|
-
|
|
138
|
-
1. **Use timestamp-based session IDs**
|
|
139
|
-
- Rationale: Easy to sort and identify
|
|
140
|
-
- Status: Implemented
|
|
141
|
-
|
|
142
|
-
---
|
|
143
|
-
|
|
144
|
-
## File Changes
|
|
145
|
-
|
|
146
|
-
| File | Action | Reason |
|
|
147
|
-
|------|--------|--------|
|
|
148
|
-
| ez-agents/bin/lib/session-errors.cjs | created | Error classes |
|
|
149
|
-
| ez-agents/bin/lib/session-manager.cjs | created | Core module |
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
## Open Questions
|
|
154
|
-
|
|
155
|
-
None
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
|
-
## Blockers/Concerns
|
|
160
|
-
|
|
161
|
-
None
|
|
162
|
-
|
|
163
|
-
---
|
|
164
|
-
|
|
165
|
-
## Recommended Next Actions
|
|
166
|
-
|
|
167
|
-
- Complete session export module implementation
|
|
168
|
-
|
|
169
|
-
---
|
|
170
|
-
|
|
171
|
-
## Session Chain
|
|
172
|
-
|
|
173
|
-
- Previous: session-20260319-120000
|
|
174
|
-
- Current: session-20260319-143052
|
|
175
|
-
- Next: none
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
### JSON Export
|
|
179
|
-
```json
|
|
180
|
-
{
|
|
181
|
-
"export_version": "1.0",
|
|
182
|
-
"exported_at": "2026-03-19T15:45:00.000Z",
|
|
183
|
-
"export_format": "json",
|
|
184
|
-
"session": {
|
|
185
|
-
"metadata": {
|
|
186
|
-
"session_id": "session-20260319-143052",
|
|
187
|
-
"session_version": "1.0",
|
|
188
|
-
"started_at": "2026-03-19T14:30:52.000Z",
|
|
189
|
-
"ended_at": "2026-03-19T15:45:00.000Z",
|
|
190
|
-
"model": "qwen",
|
|
191
|
-
"phase": 18,
|
|
192
|
-
"plan": 18,
|
|
193
|
-
"status": "completed",
|
|
194
|
-
"session_chain": ["session-20260319-120000"],
|
|
195
|
-
"token_usage": {
|
|
196
|
-
"input": 50000,
|
|
197
|
-
"output": 30000,
|
|
198
|
-
"total": 80000
|
|
199
|
-
}
|
|
200
|
-
},
|
|
201
|
-
"context": {
|
|
202
|
-
"transcript": "...",
|
|
203
|
-
"tasks": [],
|
|
204
|
-
"decisions": [],
|
|
205
|
-
"file_changes": [],
|
|
206
|
-
"open_questions": [],
|
|
207
|
-
"blockers": []
|
|
208
|
-
},
|
|
209
|
-
"state": {
|
|
210
|
-
"current_phase": 18,
|
|
211
|
-
"current_plan": 18,
|
|
212
|
-
"incomplete_tasks": [],
|
|
213
|
-
"last_action": "Task 2 complete",
|
|
214
|
-
"next_recommended_action": "Continue with Task 3"
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
---
|
|
221
|
-
|
|
222
|
-
## Error Handling
|
|
223
|
-
|
|
224
|
-
### Session Not Found
|
|
225
|
-
```
|
|
226
|
-
if (!session) {
|
|
227
|
-
throw error(`Session not found: ${session_id}`);
|
|
228
|
-
}
|
|
229
|
-
```
|
|
230
|
-
|
|
231
|
-
### Invalid Format
|
|
232
|
-
```
|
|
233
|
-
if (!['markdown', 'json'].includes(format)) {
|
|
234
|
-
throw error(`Unsupported export format: ${format}`);
|
|
235
|
-
}
|
|
236
|
-
```
|
|
237
|
-
|
|
238
|
-
### Write Failure
|
|
239
|
-
```
|
|
240
|
-
try {
|
|
241
|
-
safePlanningWriteSync(output_path, content);
|
|
242
|
-
} catch (err) {
|
|
243
|
-
logger.error('Write failed', { path: output_path, error: err.message });
|
|
244
|
-
throw error(`Failed to write export file: ${err.message}`);
|
|
245
|
-
}
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
---
|
|
249
|
-
|
|
250
|
-
## Related Files
|
|
251
|
-
|
|
252
|
-
- `ez-agents/bin/lib/session-manager.cjs` - Session loading
|
|
253
|
-
- `ez-agents/bin/lib/session-export.cjs` - Export logic
|
|
254
|
-
- `ez-agents/bin/lib/planning-write.cjs` - Safe file writes
|
|
255
|
-
- `.planning/sessions/` - Output directory
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Orchestrate BDD requirements gathering for a phase. Spawns ez-requirements-agent to interview user, produce .feature files, validate INVEST, and create acceptance criteria documents.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<process>
|
|
6
|
-
|
|
7
|
-
## 1. Initialize
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
INIT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" init plan-phase "${PHASE}" 2>/dev/null || echo '{}')
|
|
11
|
-
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
Parse JSON for: `phase_number`, `phase_name`, `phase_dir`, `padded_phase`, `phase_slug`, `context_path`, `requirements_path`, `state_path`, `roadmap_path`.
|
|
15
|
-
|
|
16
|
-
**If `.planning/` missing:** Error — run `/ez:new-project` first.
|
|
17
|
-
|
|
18
|
-
## 2. Parse Arguments
|
|
19
|
-
|
|
20
|
-
Extract from $ARGUMENTS:
|
|
21
|
-
- Phase number (integer or decimal like `3.1`)
|
|
22
|
-
- `--auto` flag — skip interactive interview, derive from context
|
|
23
|
-
|
|
24
|
-
**If no phase number:** Detect next unplanned phase from roadmap.
|
|
25
|
-
|
|
26
|
-
## 3. Check Phase Exists
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
PHASE_INFO=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" roadmap get-phase "${PHASE}")
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**If not found:** Error — phase does not exist in ROADMAP.md.
|
|
33
|
-
|
|
34
|
-
Display:
|
|
35
|
-
```
|
|
36
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
37
|
-
EZ ► GATHERING REQUIREMENTS — Phase {X}: {Name}
|
|
38
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## 4. Check Existing .feature Files
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
ls specs/features/ 2>/dev/null
|
|
45
|
-
find specs/features/ -name "*.feature" 2>/dev/null | wc -l
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
**If .feature files exist for this phase:**
|
|
49
|
-
|
|
50
|
-
Check `.planning/phases/{phase_dir}/{phase_num}-ACCEPTANCE-CRITERIA.md`.
|
|
51
|
-
|
|
52
|
-
If exists, ask:
|
|
53
|
-
1. "Regenerate — replace existing requirements" → Clear old files, re-gather
|
|
54
|
-
2. "Extend — add more scenarios" → Append mode
|
|
55
|
-
3. "View existing" → Display ACCEPTANCE-CRITERIA.md and exit
|
|
56
|
-
|
|
57
|
-
**If no .feature files:** Proceed to step 5.
|
|
58
|
-
|
|
59
|
-
## 5. Spawn ez-requirements-agent
|
|
60
|
-
|
|
61
|
-
```
|
|
62
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
63
|
-
◆ Spawning requirements agent...
|
|
64
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
Requirements prompt:
|
|
68
|
-
|
|
69
|
-
```markdown
|
|
70
|
-
<objective>
|
|
71
|
-
Gather BDD requirements for Phase {phase_number}: {phase_name}.
|
|
72
|
-
Mode: {interactive | auto}
|
|
73
|
-
</objective>
|
|
74
|
-
|
|
75
|
-
<files_to_read>
|
|
76
|
-
- {state_path} (Project State)
|
|
77
|
-
- {roadmap_path} (Roadmap — phase goal and requirements)
|
|
78
|
-
- {requirements_path} (Existing requirements)
|
|
79
|
-
- {context_path} (USER DECISIONS from /ez:discuss-phase, if exists)
|
|
80
|
-
</files_to_read>
|
|
81
|
-
|
|
82
|
-
<phase_info>
|
|
83
|
-
Phase: {phase_number}
|
|
84
|
-
Name: {phase_name}
|
|
85
|
-
Goal: {goal from ROADMAP}
|
|
86
|
-
Phase directory: {phase_dir}
|
|
87
|
-
Padded phase: {padded_phase}
|
|
88
|
-
</phase_info>
|
|
89
|
-
|
|
90
|
-
<mode>
|
|
91
|
-
{If --auto:}
|
|
92
|
-
AUTO MODE: Do NOT ask the user questions. Derive all requirements from:
|
|
93
|
-
1. ROADMAP.md phase goal and description
|
|
94
|
-
2. CONTEXT.md locked decisions (if exists)
|
|
95
|
-
3. Existing REQUIREMENTS.md entries for this phase
|
|
96
|
-
|
|
97
|
-
{If interactive:}
|
|
98
|
-
INTERACTIVE MODE: Conduct a focused interview with the user.
|
|
99
|
-
- Group questions into batches of 3-4 at a time
|
|
100
|
-
- Confirm understanding after each batch before proceeding
|
|
101
|
-
- Focus on observable behavior, not implementation
|
|
102
|
-
</mode>
|
|
103
|
-
|
|
104
|
-
<project_instructions>
|
|
105
|
-
Read ./CLAUDE.md if exists — follow project-specific guidelines.
|
|
106
|
-
Check .claude/skills/ or .agents/skills/ — apply skill rules to requirements scope.
|
|
107
|
-
</project_instructions>
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
```
|
|
111
|
-
Task(
|
|
112
|
-
prompt=requirements_prompt,
|
|
113
|
-
subagent_type="ez-requirements-agent",
|
|
114
|
-
model="{planner_model from init}"
|
|
115
|
-
)
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
## 6. Handle Agent Return
|
|
119
|
-
|
|
120
|
-
**`## REQUIREMENTS GATHERED`:**
|
|
121
|
-
|
|
122
|
-
Display:
|
|
123
|
-
```
|
|
124
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
125
|
-
EZ ► REQUIREMENTS COMPLETE ✓
|
|
126
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
127
|
-
|
|
128
|
-
{agent summary}
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
Continue to step 7.
|
|
132
|
-
|
|
133
|
-
**`## REQUIREMENTS BLOCKED`:**
|
|
134
|
-
|
|
135
|
-
Display blocker details. Offer:
|
|
136
|
-
1. "Provide more context about the phase goal"
|
|
137
|
-
2. "Use --auto mode to derive from existing context"
|
|
138
|
-
3. "Skip requirements for this phase"
|
|
139
|
-
|
|
140
|
-
## 7. Validate BDD Output
|
|
141
|
-
|
|
142
|
-
```bash
|
|
143
|
-
# Check .feature files were created
|
|
144
|
-
FEATURE_COUNT=$(find specs/features/ -name "*.feature" 2>/dev/null | wc -l)
|
|
145
|
-
|
|
146
|
-
# Validate structure
|
|
147
|
-
node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" bdd validate specs/features/ 2>/dev/null || true
|
|
148
|
-
|
|
149
|
-
# Check ACCEPTANCE-CRITERIA.md exists
|
|
150
|
-
ls .planning/phases/${PHASE_DIR}/*-ACCEPTANCE-CRITERIA.md 2>/dev/null
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
Report findings:
|
|
154
|
-
```
|
|
155
|
-
Validation:
|
|
156
|
-
✓ {N} .feature file(s) created
|
|
157
|
-
✓ INVEST: {score}/6 dimensions pass
|
|
158
|
-
✓ MoSCoW: {must} must / {should} should / {could} could / {wont} wont
|
|
159
|
-
✓ ACCEPTANCE-CRITERIA.md created
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
If INVEST score < 5, warn: "User stories may need refinement before planning — run `/ez:gather-requirements {phase}` again."
|
|
163
|
-
|
|
164
|
-
## 8. Present Final Status
|
|
165
|
-
|
|
166
|
-
```
|
|
167
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
168
|
-
EZ ► PHASE {X} REQUIREMENTS ✓
|
|
169
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
170
|
-
|
|
171
|
-
**Phase {X}: {Name}**
|
|
172
|
-
Feature files: {N}
|
|
173
|
-
Scenarios: {M} total ({must} @must / {should} @should / {could} @could)
|
|
174
|
-
INVEST: {score}/6
|
|
175
|
-
|
|
176
|
-
───────────────────────────────────────────────────────────────
|
|
177
|
-
|
|
178
|
-
## ▶ Next Up
|
|
179
|
-
|
|
180
|
-
**Plan Phase {X}** — create implementation plans cross-checked against BDD specs
|
|
181
|
-
|
|
182
|
-
/ez:plan-phase {X}
|
|
183
|
-
|
|
184
|
-
<sub>/clear first → fresh context window</sub>
|
|
185
|
-
|
|
186
|
-
───────────────────────────────────────────────────────────────
|
|
187
|
-
|
|
188
|
-
**Also available:**
|
|
189
|
-
- cat specs/features/{domain}/*.feature — review scenarios
|
|
190
|
-
- cat .planning/phases/{phase-dir}/{phase}-ACCEPTANCE-CRITERIA.md — review acceptance criteria
|
|
191
|
-
- /ez:discuss-phase {X} — capture design decisions first (if not done)
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
</process>
|
|
195
|
-
|
|
196
|
-
<success_criteria>
|
|
197
|
-
- [ ] Phase validated against roadmap
|
|
198
|
-
- [ ] Existing .feature files checked
|
|
199
|
-
- [ ] ez-requirements-agent spawned with correct mode and file paths
|
|
200
|
-
- [ ] .feature files created in specs/features/
|
|
201
|
-
- [ ] Every scenario has MoSCoW + tier tags
|
|
202
|
-
- [ ] INVEST validation run
|
|
203
|
-
- [ ] ACCEPTANCE-CRITERIA.md exists in phase directory
|
|
204
|
-
- [ ] REQUIREMENTS-BDD.md updated
|
|
205
|
-
- [ ] User sees summary with scenario counts and next steps
|
|
206
|
-
</success_criteria>
|