@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,247 +1,247 @@
|
|
|
1
|
-
# UAT Template
|
|
2
|
-
|
|
3
|
-
Template for `.planning/phases/XX-name/{phase_num}-UAT.md` — persistent UAT session tracking.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## File Template
|
|
8
|
-
|
|
9
|
-
```markdown
|
|
10
|
-
---
|
|
11
|
-
status: testing | complete | diagnosed
|
|
12
|
-
phase: XX-name
|
|
13
|
-
source: [list of SUMMARY.md files tested]
|
|
14
|
-
started: [ISO timestamp]
|
|
15
|
-
updated: [ISO timestamp]
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## Current Test
|
|
19
|
-
<!-- OVERWRITE each test - shows where we are -->
|
|
20
|
-
|
|
21
|
-
number: [N]
|
|
22
|
-
name: [test name]
|
|
23
|
-
expected: |
|
|
24
|
-
[what user should observe]
|
|
25
|
-
awaiting: user response
|
|
26
|
-
|
|
27
|
-
## Tests
|
|
28
|
-
|
|
29
|
-
### 1. [Test Name]
|
|
30
|
-
expected: [observable behavior - what user should see]
|
|
31
|
-
result: [pending]
|
|
32
|
-
|
|
33
|
-
### 2. [Test Name]
|
|
34
|
-
expected: [observable behavior]
|
|
35
|
-
result: pass
|
|
36
|
-
|
|
37
|
-
### 3. [Test Name]
|
|
38
|
-
expected: [observable behavior]
|
|
39
|
-
result: issue
|
|
40
|
-
reported: "[verbatim user response]"
|
|
41
|
-
severity: major
|
|
42
|
-
|
|
43
|
-
### 4. [Test Name]
|
|
44
|
-
expected: [observable behavior]
|
|
45
|
-
result: skipped
|
|
46
|
-
reason: [why skipped]
|
|
47
|
-
|
|
48
|
-
...
|
|
49
|
-
|
|
50
|
-
## Summary
|
|
51
|
-
|
|
52
|
-
total: [N]
|
|
53
|
-
passed: [N]
|
|
54
|
-
issues: [N]
|
|
55
|
-
pending: [N]
|
|
56
|
-
skipped: [N]
|
|
57
|
-
|
|
58
|
-
## Gaps
|
|
59
|
-
|
|
60
|
-
<!-- YAML format for plan-phase --gaps consumption -->
|
|
61
|
-
- truth: "[expected behavior from test]"
|
|
62
|
-
status: failed
|
|
63
|
-
reason: "User reported: [verbatim response]"
|
|
64
|
-
severity: blocker | major | minor | cosmetic
|
|
65
|
-
test: [N]
|
|
66
|
-
root_cause: "" # Filled by diagnosis
|
|
67
|
-
artifacts: [] # Filled by diagnosis
|
|
68
|
-
missing: [] # Filled by diagnosis
|
|
69
|
-
debug_session: "" # Filled by diagnosis
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
<section_rules>
|
|
75
|
-
|
|
76
|
-
**Frontmatter:**
|
|
77
|
-
- `status`: OVERWRITE - "testing" or "complete"
|
|
78
|
-
- `phase`: IMMUTABLE - set on creation
|
|
79
|
-
- `source`: IMMUTABLE - SUMMARY files being tested
|
|
80
|
-
- `started`: IMMUTABLE - set on creation
|
|
81
|
-
- `updated`: OVERWRITE - update on every change
|
|
82
|
-
|
|
83
|
-
**Current Test:**
|
|
84
|
-
- OVERWRITE entirely on each test transition
|
|
85
|
-
- Shows which test is active and what's awaited
|
|
86
|
-
- On completion: "[testing complete]"
|
|
87
|
-
|
|
88
|
-
**Tests:**
|
|
89
|
-
- Each test: OVERWRITE result field when user responds
|
|
90
|
-
- `result` values: [pending], pass, issue, skipped
|
|
91
|
-
- If issue: add `reported` (verbatim) and `severity` (inferred)
|
|
92
|
-
- If skipped: add `reason` if provided
|
|
93
|
-
|
|
94
|
-
**Summary:**
|
|
95
|
-
- OVERWRITE counts after each response
|
|
96
|
-
- Tracks: total, passed, issues, pending, skipped
|
|
97
|
-
|
|
98
|
-
**Gaps:**
|
|
99
|
-
- APPEND only when issue found (YAML format)
|
|
100
|
-
- After diagnosis: fill `root_cause`, `artifacts`, `missing`, `debug_session`
|
|
101
|
-
- This section feeds directly into /ez:plan-phase --gaps
|
|
102
|
-
|
|
103
|
-
</section_rules>
|
|
104
|
-
|
|
105
|
-
<diagnosis_lifecycle>
|
|
106
|
-
|
|
107
|
-
**After testing complete (status: complete), if gaps exist:**
|
|
108
|
-
|
|
109
|
-
1. User runs diagnosis (from verify-work offer or manually)
|
|
110
|
-
2. diagnose-issues workflow spawns parallel debug agents
|
|
111
|
-
3. Each agent investigates one gap, returns root cause
|
|
112
|
-
4. UAT.md Gaps section updated with diagnosis:
|
|
113
|
-
- Each gap gets `root_cause`, `artifacts`, `missing`, `debug_session` filled
|
|
114
|
-
5. status → "diagnosed"
|
|
115
|
-
6. Ready for /ez:plan-phase --gaps with root causes
|
|
116
|
-
|
|
117
|
-
**After diagnosis:**
|
|
118
|
-
```yaml
|
|
119
|
-
## Gaps
|
|
120
|
-
|
|
121
|
-
- truth: "Comment appears immediately after submission"
|
|
122
|
-
status: failed
|
|
123
|
-
reason: "User reported: works but doesn't show until I refresh the page"
|
|
124
|
-
severity: major
|
|
125
|
-
test: 2
|
|
126
|
-
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
127
|
-
artifacts:
|
|
128
|
-
- path: "src/components/CommentList.tsx"
|
|
129
|
-
issue: "useEffect missing dependency"
|
|
130
|
-
missing:
|
|
131
|
-
- "Add commentCount to useEffect dependency array"
|
|
132
|
-
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
</diagnosis_lifecycle>
|
|
136
|
-
|
|
137
|
-
<lifecycle>
|
|
138
|
-
|
|
139
|
-
**Creation:** When /ez:verify-work starts new session
|
|
140
|
-
- Extract tests from SUMMARY.md files
|
|
141
|
-
- Set status to "testing"
|
|
142
|
-
- Current Test points to test 1
|
|
143
|
-
- All tests have result: [pending]
|
|
144
|
-
|
|
145
|
-
**During testing:**
|
|
146
|
-
- Present test from Current Test section
|
|
147
|
-
- User responds with pass confirmation or issue description
|
|
148
|
-
- Update test result (pass/issue/skipped)
|
|
149
|
-
- Update Summary counts
|
|
150
|
-
- If issue: append to Gaps section (YAML format), infer severity
|
|
151
|
-
- Move Current Test to next pending test
|
|
152
|
-
|
|
153
|
-
**On completion:**
|
|
154
|
-
- status → "complete"
|
|
155
|
-
- Current Test → "[testing complete]"
|
|
156
|
-
- Commit file
|
|
157
|
-
- Present summary with next steps
|
|
158
|
-
|
|
159
|
-
**Resume after /clear:**
|
|
160
|
-
1. Read frontmatter → know phase and status
|
|
161
|
-
2. Read Current Test → know where we are
|
|
162
|
-
3. Find first [pending] result → continue from there
|
|
163
|
-
4. Summary shows progress so far
|
|
164
|
-
|
|
165
|
-
</lifecycle>
|
|
166
|
-
|
|
167
|
-
<severity_guide>
|
|
168
|
-
|
|
169
|
-
Severity is INFERRED from user's natural language, never asked.
|
|
170
|
-
|
|
171
|
-
| User describes | Infer |
|
|
172
|
-
|----------------|-------|
|
|
173
|
-
| Crash, error, exception, fails completely, unusable | blocker |
|
|
174
|
-
| Doesn't work, nothing happens, wrong behavior, missing | major |
|
|
175
|
-
| Works but..., slow, weird, minor, small issue | minor |
|
|
176
|
-
| Color, font, spacing, alignment, visual, looks off | cosmetic |
|
|
177
|
-
|
|
178
|
-
Default: **major** (safe default, user can clarify if wrong)
|
|
179
|
-
|
|
180
|
-
</severity_guide>
|
|
181
|
-
|
|
182
|
-
<good_example>
|
|
183
|
-
```markdown
|
|
184
|
-
---
|
|
185
|
-
status: diagnosed
|
|
186
|
-
phase: 04-comments
|
|
187
|
-
source: 04-01-SUMMARY.md, 04-02-SUMMARY.md
|
|
188
|
-
started: 2025-01-15T10:30:00Z
|
|
189
|
-
updated: 2025-01-15T10:45:00Z
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
## Current Test
|
|
193
|
-
|
|
194
|
-
[testing complete]
|
|
195
|
-
|
|
196
|
-
## Tests
|
|
197
|
-
|
|
198
|
-
### 1. View Comments on Post
|
|
199
|
-
expected: Comments section expands, shows count and comment list
|
|
200
|
-
result: pass
|
|
201
|
-
|
|
202
|
-
### 2. Create Top-Level Comment
|
|
203
|
-
expected: Submit comment via rich text editor, appears in list with author info
|
|
204
|
-
result: issue
|
|
205
|
-
reported: "works but doesn't show until I refresh the page"
|
|
206
|
-
severity: major
|
|
207
|
-
|
|
208
|
-
### 3. Reply to a Comment
|
|
209
|
-
expected: Click Reply, inline composer appears, submit shows nested reply
|
|
210
|
-
result: pass
|
|
211
|
-
|
|
212
|
-
### 4. Visual Nesting
|
|
213
|
-
expected: 3+ level thread shows indentation, left borders, caps at reasonable depth
|
|
214
|
-
result: pass
|
|
215
|
-
|
|
216
|
-
### 5. Delete Own Comment
|
|
217
|
-
expected: Click delete on own comment, removed or shows [deleted] if has replies
|
|
218
|
-
result: pass
|
|
219
|
-
|
|
220
|
-
### 6. Comment Count
|
|
221
|
-
expected: Post shows accurate count, increments when adding comment
|
|
222
|
-
result: pass
|
|
223
|
-
|
|
224
|
-
## Summary
|
|
225
|
-
|
|
226
|
-
total: 6
|
|
227
|
-
passed: 5
|
|
228
|
-
issues: 1
|
|
229
|
-
pending: 0
|
|
230
|
-
skipped: 0
|
|
231
|
-
|
|
232
|
-
## Gaps
|
|
233
|
-
|
|
234
|
-
- truth: "Comment appears immediately after submission in list"
|
|
235
|
-
status: failed
|
|
236
|
-
reason: "User reported: works but doesn't show until I refresh the page"
|
|
237
|
-
severity: major
|
|
238
|
-
test: 2
|
|
239
|
-
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
240
|
-
artifacts:
|
|
241
|
-
- path: "src/components/CommentList.tsx"
|
|
242
|
-
issue: "useEffect missing dependency"
|
|
243
|
-
missing:
|
|
244
|
-
- "Add commentCount to useEffect dependency array"
|
|
245
|
-
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
246
|
-
```
|
|
247
|
-
</good_example>
|
|
1
|
+
# UAT Template
|
|
2
|
+
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase_num}-UAT.md` — persistent UAT session tracking.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## File Template
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
---
|
|
11
|
+
status: testing | complete | diagnosed
|
|
12
|
+
phase: XX-name
|
|
13
|
+
source: [list of SUMMARY.md files tested]
|
|
14
|
+
started: [ISO timestamp]
|
|
15
|
+
updated: [ISO timestamp]
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Current Test
|
|
19
|
+
<!-- OVERWRITE each test - shows where we are -->
|
|
20
|
+
|
|
21
|
+
number: [N]
|
|
22
|
+
name: [test name]
|
|
23
|
+
expected: |
|
|
24
|
+
[what user should observe]
|
|
25
|
+
awaiting: user response
|
|
26
|
+
|
|
27
|
+
## Tests
|
|
28
|
+
|
|
29
|
+
### 1. [Test Name]
|
|
30
|
+
expected: [observable behavior - what user should see]
|
|
31
|
+
result: [pending]
|
|
32
|
+
|
|
33
|
+
### 2. [Test Name]
|
|
34
|
+
expected: [observable behavior]
|
|
35
|
+
result: pass
|
|
36
|
+
|
|
37
|
+
### 3. [Test Name]
|
|
38
|
+
expected: [observable behavior]
|
|
39
|
+
result: issue
|
|
40
|
+
reported: "[verbatim user response]"
|
|
41
|
+
severity: major
|
|
42
|
+
|
|
43
|
+
### 4. [Test Name]
|
|
44
|
+
expected: [observable behavior]
|
|
45
|
+
result: skipped
|
|
46
|
+
reason: [why skipped]
|
|
47
|
+
|
|
48
|
+
...
|
|
49
|
+
|
|
50
|
+
## Summary
|
|
51
|
+
|
|
52
|
+
total: [N]
|
|
53
|
+
passed: [N]
|
|
54
|
+
issues: [N]
|
|
55
|
+
pending: [N]
|
|
56
|
+
skipped: [N]
|
|
57
|
+
|
|
58
|
+
## Gaps
|
|
59
|
+
|
|
60
|
+
<!-- YAML format for plan-phase --gaps consumption -->
|
|
61
|
+
- truth: "[expected behavior from test]"
|
|
62
|
+
status: failed
|
|
63
|
+
reason: "User reported: [verbatim response]"
|
|
64
|
+
severity: blocker | major | minor | cosmetic
|
|
65
|
+
test: [N]
|
|
66
|
+
root_cause: "" # Filled by diagnosis
|
|
67
|
+
artifacts: [] # Filled by diagnosis
|
|
68
|
+
missing: [] # Filled by diagnosis
|
|
69
|
+
debug_session: "" # Filled by diagnosis
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
<section_rules>
|
|
75
|
+
|
|
76
|
+
**Frontmatter:**
|
|
77
|
+
- `status`: OVERWRITE - "testing" or "complete"
|
|
78
|
+
- `phase`: IMMUTABLE - set on creation
|
|
79
|
+
- `source`: IMMUTABLE - SUMMARY files being tested
|
|
80
|
+
- `started`: IMMUTABLE - set on creation
|
|
81
|
+
- `updated`: OVERWRITE - update on every change
|
|
82
|
+
|
|
83
|
+
**Current Test:**
|
|
84
|
+
- OVERWRITE entirely on each test transition
|
|
85
|
+
- Shows which test is active and what's awaited
|
|
86
|
+
- On completion: "[testing complete]"
|
|
87
|
+
|
|
88
|
+
**Tests:**
|
|
89
|
+
- Each test: OVERWRITE result field when user responds
|
|
90
|
+
- `result` values: [pending], pass, issue, skipped
|
|
91
|
+
- If issue: add `reported` (verbatim) and `severity` (inferred)
|
|
92
|
+
- If skipped: add `reason` if provided
|
|
93
|
+
|
|
94
|
+
**Summary:**
|
|
95
|
+
- OVERWRITE counts after each response
|
|
96
|
+
- Tracks: total, passed, issues, pending, skipped
|
|
97
|
+
|
|
98
|
+
**Gaps:**
|
|
99
|
+
- APPEND only when issue found (YAML format)
|
|
100
|
+
- After diagnosis: fill `root_cause`, `artifacts`, `missing`, `debug_session`
|
|
101
|
+
- This section feeds directly into /ez:plan-phase --gaps
|
|
102
|
+
|
|
103
|
+
</section_rules>
|
|
104
|
+
|
|
105
|
+
<diagnosis_lifecycle>
|
|
106
|
+
|
|
107
|
+
**After testing complete (status: complete), if gaps exist:**
|
|
108
|
+
|
|
109
|
+
1. User runs diagnosis (from verify-work offer or manually)
|
|
110
|
+
2. diagnose-issues workflow spawns parallel debug agents
|
|
111
|
+
3. Each agent investigates one gap, returns root cause
|
|
112
|
+
4. UAT.md Gaps section updated with diagnosis:
|
|
113
|
+
- Each gap gets `root_cause`, `artifacts`, `missing`, `debug_session` filled
|
|
114
|
+
5. status → "diagnosed"
|
|
115
|
+
6. Ready for /ez:plan-phase --gaps with root causes
|
|
116
|
+
|
|
117
|
+
**After diagnosis:**
|
|
118
|
+
```yaml
|
|
119
|
+
## Gaps
|
|
120
|
+
|
|
121
|
+
- truth: "Comment appears immediately after submission"
|
|
122
|
+
status: failed
|
|
123
|
+
reason: "User reported: works but doesn't show until I refresh the page"
|
|
124
|
+
severity: major
|
|
125
|
+
test: 2
|
|
126
|
+
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
127
|
+
artifacts:
|
|
128
|
+
- path: "src/components/CommentList.tsx"
|
|
129
|
+
issue: "useEffect missing dependency"
|
|
130
|
+
missing:
|
|
131
|
+
- "Add commentCount to useEffect dependency array"
|
|
132
|
+
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
</diagnosis_lifecycle>
|
|
136
|
+
|
|
137
|
+
<lifecycle>
|
|
138
|
+
|
|
139
|
+
**Creation:** When /ez:verify-work starts new session
|
|
140
|
+
- Extract tests from SUMMARY.md files
|
|
141
|
+
- Set status to "testing"
|
|
142
|
+
- Current Test points to test 1
|
|
143
|
+
- All tests have result: [pending]
|
|
144
|
+
|
|
145
|
+
**During testing:**
|
|
146
|
+
- Present test from Current Test section
|
|
147
|
+
- User responds with pass confirmation or issue description
|
|
148
|
+
- Update test result (pass/issue/skipped)
|
|
149
|
+
- Update Summary counts
|
|
150
|
+
- If issue: append to Gaps section (YAML format), infer severity
|
|
151
|
+
- Move Current Test to next pending test
|
|
152
|
+
|
|
153
|
+
**On completion:**
|
|
154
|
+
- status → "complete"
|
|
155
|
+
- Current Test → "[testing complete]"
|
|
156
|
+
- Commit file
|
|
157
|
+
- Present summary with next steps
|
|
158
|
+
|
|
159
|
+
**Resume after /clear:**
|
|
160
|
+
1. Read frontmatter → know phase and status
|
|
161
|
+
2. Read Current Test → know where we are
|
|
162
|
+
3. Find first [pending] result → continue from there
|
|
163
|
+
4. Summary shows progress so far
|
|
164
|
+
|
|
165
|
+
</lifecycle>
|
|
166
|
+
|
|
167
|
+
<severity_guide>
|
|
168
|
+
|
|
169
|
+
Severity is INFERRED from user's natural language, never asked.
|
|
170
|
+
|
|
171
|
+
| User describes | Infer |
|
|
172
|
+
|----------------|-------|
|
|
173
|
+
| Crash, error, exception, fails completely, unusable | blocker |
|
|
174
|
+
| Doesn't work, nothing happens, wrong behavior, missing | major |
|
|
175
|
+
| Works but..., slow, weird, minor, small issue | minor |
|
|
176
|
+
| Color, font, spacing, alignment, visual, looks off | cosmetic |
|
|
177
|
+
|
|
178
|
+
Default: **major** (safe default, user can clarify if wrong)
|
|
179
|
+
|
|
180
|
+
</severity_guide>
|
|
181
|
+
|
|
182
|
+
<good_example>
|
|
183
|
+
```markdown
|
|
184
|
+
---
|
|
185
|
+
status: diagnosed
|
|
186
|
+
phase: 04-comments
|
|
187
|
+
source: 04-01-SUMMARY.md, 04-02-SUMMARY.md
|
|
188
|
+
started: 2025-01-15T10:30:00Z
|
|
189
|
+
updated: 2025-01-15T10:45:00Z
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Current Test
|
|
193
|
+
|
|
194
|
+
[testing complete]
|
|
195
|
+
|
|
196
|
+
## Tests
|
|
197
|
+
|
|
198
|
+
### 1. View Comments on Post
|
|
199
|
+
expected: Comments section expands, shows count and comment list
|
|
200
|
+
result: pass
|
|
201
|
+
|
|
202
|
+
### 2. Create Top-Level Comment
|
|
203
|
+
expected: Submit comment via rich text editor, appears in list with author info
|
|
204
|
+
result: issue
|
|
205
|
+
reported: "works but doesn't show until I refresh the page"
|
|
206
|
+
severity: major
|
|
207
|
+
|
|
208
|
+
### 3. Reply to a Comment
|
|
209
|
+
expected: Click Reply, inline composer appears, submit shows nested reply
|
|
210
|
+
result: pass
|
|
211
|
+
|
|
212
|
+
### 4. Visual Nesting
|
|
213
|
+
expected: 3+ level thread shows indentation, left borders, caps at reasonable depth
|
|
214
|
+
result: pass
|
|
215
|
+
|
|
216
|
+
### 5. Delete Own Comment
|
|
217
|
+
expected: Click delete on own comment, removed or shows [deleted] if has replies
|
|
218
|
+
result: pass
|
|
219
|
+
|
|
220
|
+
### 6. Comment Count
|
|
221
|
+
expected: Post shows accurate count, increments when adding comment
|
|
222
|
+
result: pass
|
|
223
|
+
|
|
224
|
+
## Summary
|
|
225
|
+
|
|
226
|
+
total: 6
|
|
227
|
+
passed: 5
|
|
228
|
+
issues: 1
|
|
229
|
+
pending: 0
|
|
230
|
+
skipped: 0
|
|
231
|
+
|
|
232
|
+
## Gaps
|
|
233
|
+
|
|
234
|
+
- truth: "Comment appears immediately after submission in list"
|
|
235
|
+
status: failed
|
|
236
|
+
reason: "User reported: works but doesn't show until I refresh the page"
|
|
237
|
+
severity: major
|
|
238
|
+
test: 2
|
|
239
|
+
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
240
|
+
artifacts:
|
|
241
|
+
- path: "src/components/CommentList.tsx"
|
|
242
|
+
issue: "useEffect missing dependency"
|
|
243
|
+
missing:
|
|
244
|
+
- "Add commentCount to useEffect dependency array"
|
|
245
|
+
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
246
|
+
```
|
|
247
|
+
</good_example>
|