maxsimcli 4.8.0 → 4.9.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/dist/assets/CHANGELOG.md +13 -0
- package/dist/assets/hooks/maxsim-check-update.cjs +38 -0
- package/dist/assets/hooks/maxsim-check-update.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-statusline.cjs +116 -48
- package/dist/assets/hooks/maxsim-statusline.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-sync-reminder.cjs +117 -0
- package/dist/assets/hooks/maxsim-sync-reminder.cjs.map +1 -0
- package/dist/assets/templates/agents/AGENTS.md +78 -106
- package/dist/assets/templates/agents/executor.md +101 -0
- package/dist/assets/templates/agents/planner.md +86 -0
- package/dist/assets/templates/agents/researcher.md +71 -0
- package/dist/assets/templates/agents/verifier.md +88 -0
- package/dist/assets/templates/commands/maxsim/debug.md +7 -7
- package/dist/assets/templates/commands/maxsim/execute.md +45 -0
- package/dist/assets/templates/commands/maxsim/go.md +29 -0
- package/dist/assets/templates/commands/maxsim/help.md +2 -2
- package/dist/assets/templates/commands/maxsim/init.md +52 -0
- package/dist/assets/templates/commands/maxsim/plan.md +50 -0
- package/dist/assets/templates/commands/maxsim/progress.md +4 -3
- package/dist/assets/templates/commands/maxsim/quick.md +6 -4
- package/dist/assets/templates/commands/maxsim/settings.md +4 -3
- package/dist/assets/templates/references/continuation-format.md +16 -16
- package/dist/assets/templates/references/model-profile-resolution.md +1 -1
- package/dist/assets/templates/references/model-profiles.md +12 -19
- package/dist/assets/templates/rules/conventions.md +51 -0
- package/dist/assets/templates/rules/verification-protocol.md +57 -0
- package/dist/assets/templates/skills/agent-system-map/SKILL.md +92 -0
- package/dist/assets/templates/skills/brainstorming/SKILL.md +48 -36
- package/dist/assets/templates/skills/code-review/SKILL.md +40 -61
- package/dist/assets/templates/skills/commit-conventions/SKILL.md +75 -0
- package/dist/assets/templates/skills/evidence-collection/SKILL.md +87 -0
- package/dist/assets/templates/skills/handoff-contract/SKILL.md +70 -0
- package/dist/assets/templates/skills/input-validation/SKILL.md +51 -0
- package/dist/assets/templates/skills/maxsim-batch/SKILL.md +41 -45
- package/dist/assets/templates/skills/maxsim-simplify/SKILL.md +37 -90
- package/dist/assets/templates/skills/memory-management/SKILL.md +32 -67
- package/dist/assets/templates/skills/research-methodology/SKILL.md +137 -0
- package/dist/assets/templates/skills/roadmap-writing/SKILL.md +40 -58
- package/dist/assets/templates/skills/sdd/SKILL.md +34 -69
- package/dist/assets/templates/skills/systematic-debugging/SKILL.md +20 -26
- package/dist/assets/templates/skills/tdd/SKILL.md +25 -33
- package/dist/assets/templates/skills/tool-priority-guide/SKILL.md +80 -0
- package/dist/assets/templates/skills/using-maxsim/SKILL.md +42 -73
- package/dist/assets/templates/skills/verification-before-completion/SKILL.md +12 -24
- package/dist/assets/templates/skills/verification-gates/SKILL.md +169 -0
- package/dist/assets/templates/templates/UAT.md +3 -3
- package/dist/assets/templates/templates/VALIDATION.md +1 -1
- package/dist/assets/templates/templates/context.md +4 -4
- package/dist/assets/templates/templates/debug-subagent-prompt.md +3 -3
- package/dist/assets/templates/templates/discovery.md +2 -2
- package/dist/assets/templates/templates/phase-prompt.md +2 -2
- package/dist/assets/templates/templates/planner-subagent-prompt.md +7 -7
- package/dist/assets/templates/templates/project.md +1 -1
- package/dist/assets/templates/templates/research.md +1 -1
- package/dist/assets/templates/templates/state.md +2 -2
- package/dist/assets/templates/templates/summary.md +41 -0
- package/dist/assets/templates/workflows/batch.md +5 -5
- package/dist/assets/templates/workflows/diagnose-issues.md +2 -2
- package/dist/assets/templates/workflows/discovery-phase.md +3 -3
- package/dist/assets/templates/workflows/discuss-phase.md +11 -11
- package/dist/assets/templates/workflows/execute-phase.md +205 -11
- package/dist/assets/templates/workflows/execute-plan.md +299 -34
- package/dist/assets/templates/workflows/execute.md +421 -0
- package/dist/assets/templates/workflows/go.md +250 -0
- package/dist/assets/templates/workflows/health.md +5 -5
- package/dist/assets/templates/workflows/help.md +165 -435
- package/dist/assets/templates/workflows/init-existing.md +23 -23
- package/dist/assets/templates/workflows/init.md +205 -0
- package/dist/assets/templates/workflows/new-milestone.md +9 -9
- package/dist/assets/templates/workflows/new-project.md +26 -26
- package/dist/assets/templates/workflows/plan-create.md +298 -0
- package/dist/assets/templates/workflows/plan-discuss.md +347 -0
- package/dist/assets/templates/workflows/plan-phase.md +29 -29
- package/dist/assets/templates/workflows/plan-research.md +177 -0
- package/dist/assets/templates/workflows/plan.md +231 -0
- package/dist/assets/templates/workflows/progress.md +46 -42
- package/dist/assets/templates/workflows/quick.md +195 -14
- package/dist/assets/templates/workflows/research-phase.md +5 -5
- package/dist/assets/templates/workflows/sdd.md +20 -12
- package/dist/assets/templates/workflows/settings.md +18 -14
- package/dist/assets/templates/workflows/verify-phase.md +1 -1
- package/dist/assets/templates/workflows/verify-work.md +16 -16
- package/dist/cli.cjs +496 -91
- package/dist/cli.cjs.map +1 -1
- package/dist/core-D5zUr9cb.cjs.map +1 -1
- package/dist/install.cjs +234 -17
- package/dist/install.cjs.map +1 -1
- package/dist/mcp-server.cjs +21 -2
- package/dist/mcp-server.cjs.map +1 -1
- package/dist/skills-CjFWZIGM.cjs.map +1 -1
- package/package.json +1 -1
- package/dist/assets/hooks/maxsim-context-monitor.cjs +0 -121
- package/dist/assets/hooks/maxsim-context-monitor.cjs.map +0 -1
- package/dist/assets/templates/agents/maxsim-code-reviewer.md +0 -239
- package/dist/assets/templates/agents/maxsim-codebase-mapper.md +0 -214
- package/dist/assets/templates/agents/maxsim-debugger.md +0 -572
- package/dist/assets/templates/agents/maxsim-drift-checker.md +0 -522
- package/dist/assets/templates/agents/maxsim-executor.md +0 -504
- package/dist/assets/templates/agents/maxsim-integration-checker.md +0 -273
- package/dist/assets/templates/agents/maxsim-phase-researcher.md +0 -305
- package/dist/assets/templates/agents/maxsim-plan-checker.md +0 -343
- package/dist/assets/templates/agents/maxsim-planner.md +0 -610
- package/dist/assets/templates/agents/maxsim-project-researcher.md +0 -359
- package/dist/assets/templates/agents/maxsim-research-synthesizer.md +0 -263
- package/dist/assets/templates/agents/maxsim-roadmapper.md +0 -324
- package/dist/assets/templates/agents/maxsim-spec-reviewer.md +0 -245
- package/dist/assets/templates/agents/maxsim-verifier.md +0 -393
- package/dist/assets/templates/commands/maxsim/add-phase.md +0 -43
- package/dist/assets/templates/commands/maxsim/add-tests.md +0 -41
- package/dist/assets/templates/commands/maxsim/add-todo.md +0 -57
- package/dist/assets/templates/commands/maxsim/artefakte.md +0 -122
- package/dist/assets/templates/commands/maxsim/audit-milestone.md +0 -36
- package/dist/assets/templates/commands/maxsim/batch.md +0 -42
- package/dist/assets/templates/commands/maxsim/check-drift.md +0 -56
- package/dist/assets/templates/commands/maxsim/check-todos.md +0 -46
- package/dist/assets/templates/commands/maxsim/cleanup.md +0 -18
- package/dist/assets/templates/commands/maxsim/complete-milestone.md +0 -136
- package/dist/assets/templates/commands/maxsim/discuss-phase.md +0 -87
- package/dist/assets/templates/commands/maxsim/discuss.md +0 -70
- package/dist/assets/templates/commands/maxsim/execute-phase.md +0 -41
- package/dist/assets/templates/commands/maxsim/health.md +0 -22
- package/dist/assets/templates/commands/maxsim/init-existing.md +0 -46
- package/dist/assets/templates/commands/maxsim/insert-phase.md +0 -32
- package/dist/assets/templates/commands/maxsim/list-phase-assumptions.md +0 -46
- package/dist/assets/templates/commands/maxsim/map-codebase.md +0 -71
- package/dist/assets/templates/commands/maxsim/new-milestone.md +0 -44
- package/dist/assets/templates/commands/maxsim/new-project.md +0 -46
- package/dist/assets/templates/commands/maxsim/pause-work.md +0 -38
- package/dist/assets/templates/commands/maxsim/plan-milestone-gaps.md +0 -34
- package/dist/assets/templates/commands/maxsim/plan-phase.md +0 -44
- package/dist/assets/templates/commands/maxsim/realign.md +0 -39
- package/dist/assets/templates/commands/maxsim/reapply-patches.md +0 -110
- package/dist/assets/templates/commands/maxsim/remove-phase.md +0 -31
- package/dist/assets/templates/commands/maxsim/research-phase.md +0 -189
- package/dist/assets/templates/commands/maxsim/resume-work.md +0 -40
- package/dist/assets/templates/commands/maxsim/roadmap.md +0 -19
- package/dist/assets/templates/commands/maxsim/sdd.md +0 -39
- package/dist/assets/templates/commands/maxsim/set-profile.md +0 -34
- package/dist/assets/templates/commands/maxsim/update.md +0 -37
- package/dist/assets/templates/commands/maxsim/verify-work.md +0 -38
- package/dist/assets/templates/workflows/add-phase.md +0 -111
- package/dist/assets/templates/workflows/add-tests.md +0 -351
- package/dist/assets/templates/workflows/add-todo.md +0 -247
- package/dist/assets/templates/workflows/audit-milestone.md +0 -297
- package/dist/assets/templates/workflows/check-drift.md +0 -248
- package/dist/assets/templates/workflows/check-todos.md +0 -261
- package/dist/assets/templates/workflows/cleanup.md +0 -153
- package/dist/assets/templates/workflows/complete-milestone.md +0 -701
- package/dist/assets/templates/workflows/discuss.md +0 -343
- package/dist/assets/templates/workflows/insert-phase.md +0 -129
- package/dist/assets/templates/workflows/list-phase-assumptions.md +0 -178
- package/dist/assets/templates/workflows/map-codebase.md +0 -315
- package/dist/assets/templates/workflows/pause-work.md +0 -122
- package/dist/assets/templates/workflows/plan-milestone-gaps.md +0 -274
- package/dist/assets/templates/workflows/realign.md +0 -288
- package/dist/assets/templates/workflows/remove-phase.md +0 -154
- package/dist/assets/templates/workflows/resume-project.md +0 -306
- package/dist/assets/templates/workflows/roadmap.md +0 -130
- package/dist/assets/templates/workflows/set-profile.md +0 -81
- package/dist/assets/templates/workflows/transition.md +0 -544
- package/dist/assets/templates/workflows/update.md +0 -220
|
@@ -1,83 +1,69 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: using-maxsim
|
|
3
|
-
alwaysApply: true
|
|
4
3
|
description: >-
|
|
5
|
-
Routes
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
which MAXSIM command to run.
|
|
4
|
+
Routes work through MAXSIM's spec-driven workflow: checks planning state,
|
|
5
|
+
determines active phase, dispatches to the correct MAXSIM command. Use when
|
|
6
|
+
starting work sessions, resuming work, or choosing which MAXSIM command to run.
|
|
9
7
|
---
|
|
10
8
|
|
|
11
9
|
# Using MAXSIM
|
|
12
10
|
|
|
13
11
|
MAXSIM is a spec-driven development system. Work flows through phases, plans, and tasks -- not ad-hoc coding.
|
|
14
12
|
|
|
15
|
-
**
|
|
16
|
-
If there is no `.planning/` directory, run `/maxsim:init` first.
|
|
17
|
-
If there is no current phase, run `/maxsim:plan-phase` first.
|
|
18
|
-
If there is no PLAN.md for the current phase, run `/maxsim:plan-phase` first.
|
|
19
|
-
If there IS a plan, run `/maxsim:execute-phase` to execute it.
|
|
13
|
+
**No implementation without a plan.** If there is no `.planning/` directory, run `/maxsim:init` first. If there is no current phase, run `/maxsim:plan` first. If there IS a plan, run `/maxsim:execute` to execute it.
|
|
20
14
|
|
|
21
|
-
##
|
|
15
|
+
## Routing
|
|
22
16
|
|
|
23
17
|
Before starting any task:
|
|
24
18
|
|
|
25
19
|
1. **Check for `.planning/` directory** -- if missing, initialize with `/maxsim:init`
|
|
26
20
|
2. **Check STATE.md** -- resume from last checkpoint if one exists
|
|
27
21
|
3. **Check current phase** -- determine what phase is active in ROADMAP.md
|
|
28
|
-
4. **Route to the correct command** based on the
|
|
22
|
+
4. **Route to the correct command** based on the table below
|
|
29
23
|
|
|
30
|
-
###
|
|
24
|
+
### Command Surface (9 commands)
|
|
31
25
|
|
|
32
|
-
| Situation |
|
|
33
|
-
|
|
26
|
+
| Situation | Command |
|
|
27
|
+
|-----------|---------|
|
|
34
28
|
| No `.planning/` directory | `/maxsim:init` |
|
|
35
|
-
| No ROADMAP.md or empty roadmap | `/maxsim:
|
|
36
|
-
| Active phase has no PLAN.md | `/maxsim:plan
|
|
37
|
-
| Active phase has PLAN.md, not started | `/maxsim:execute
|
|
38
|
-
|
|
|
29
|
+
| No ROADMAP.md or empty roadmap | `/maxsim:init` |
|
|
30
|
+
| Active phase has no PLAN.md | `/maxsim:plan N` |
|
|
31
|
+
| Active phase has PLAN.md, not started | `/maxsim:execute N` |
|
|
32
|
+
| Phase complete, needs verification | `/maxsim:execute N` (auto-verifies) |
|
|
39
33
|
| Bug found during execution | `/maxsim:debug` |
|
|
40
|
-
| Phase complete, needs verification | `/maxsim:verify-phase` |
|
|
41
34
|
| Quick standalone task | `/maxsim:quick` |
|
|
42
|
-
|
|
|
35
|
+
| Check overall status | `/maxsim:progress` |
|
|
36
|
+
| Don't know what to do next | `/maxsim:go` |
|
|
37
|
+
| Change workflow settings | `/maxsim:settings` |
|
|
38
|
+
| Need command reference | `/maxsim:help` |
|
|
43
39
|
|
|
44
|
-
###
|
|
40
|
+
### Agent Model (4 agents)
|
|
45
41
|
|
|
46
|
-
|
|
42
|
+
MAXSIM uses 4 generic agent types. Specialization comes from the orchestrator's spawn prompt and on-demand skills, not from separate agent definitions.
|
|
47
43
|
|
|
48
|
-
|
|
|
49
|
-
|
|
50
|
-
|
|
|
51
|
-
|
|
|
52
|
-
|
|
|
53
|
-
|
|
|
44
|
+
| Agent | Role | Spawned By |
|
|
45
|
+
|-------|------|-----------|
|
|
46
|
+
| Executor | Implements plans with atomic commits and verified completion | `/maxsim:execute` |
|
|
47
|
+
| Planner | Creates structured PLAN.md files from requirements | `/maxsim:plan` |
|
|
48
|
+
| Researcher | Gathers domain knowledge and codebase context | `/maxsim:plan` (research stage) |
|
|
49
|
+
| Verifier | Reviews code, checks specs, debugs failures | `/maxsim:execute` (review stage), `/maxsim:debug` |
|
|
50
|
+
|
|
51
|
+
### Skills
|
|
52
|
+
|
|
53
|
+
Skills load on-demand based on description matching or direct `/skill-name` invocation. They are not auto-loaded -- each skill activates only when its content is relevant to the current task.
|
|
54
|
+
|
|
55
|
+
| Skill | When It Activates |
|
|
56
|
+
|-------|-------------------|
|
|
57
|
+
| `systematic-debugging` | Investigating bugs, test failures, or unexpected behavior |
|
|
58
|
+
| `tdd` | Implementing business logic, APIs, data transformations |
|
|
59
|
+
| `verification-before-completion` | Claiming work is done, tests pass, builds succeed |
|
|
54
60
|
| `memory-management` | Recurring patterns, errors, or decisions worth persisting |
|
|
55
|
-
| `brainstorming` |
|
|
56
|
-
| `roadmap-writing` |
|
|
57
|
-
| `maxsim-simplify` |
|
|
58
|
-
| `code-review` |
|
|
59
|
-
| `sdd` | Executing sequential tasks
|
|
60
|
-
| `maxsim-batch` | Parallelizing work across
|
|
61
|
-
|
|
62
|
-
### Available Agents
|
|
63
|
-
|
|
64
|
-
Agents are specialized subagent prompts spawned by MAXSIM commands:
|
|
65
|
-
|
|
66
|
-
| Agent | Purpose | Triggered By |
|
|
67
|
-
|-------|---------|-------------|
|
|
68
|
-
| `maxsim-executor` | Executes plans with atomic commits | `/maxsim:execute-phase` |
|
|
69
|
-
| `maxsim-planner` | Creates structured PLAN.md files | `/maxsim:plan-phase` |
|
|
70
|
-
| `maxsim-debugger` | Investigates bugs systematically | `/maxsim:debug` |
|
|
71
|
-
| `maxsim-verifier` | Verifies phase goal achievement | `/maxsim:verify-phase` |
|
|
72
|
-
| `maxsim-roadmapper` | Creates project roadmaps | `/maxsim:plan-roadmap` |
|
|
73
|
-
| `maxsim-phase-researcher` | Researches phase requirements | `/maxsim:plan-phase` |
|
|
74
|
-
| `maxsim-code-reviewer` | Reviews code changes | `/maxsim:review` |
|
|
75
|
-
| `maxsim-spec-reviewer` | Reviews specifications | `/maxsim:plan-roadmap` |
|
|
76
|
-
| `maxsim-plan-checker` | Validates plan completeness | `/maxsim:plan-phase` |
|
|
77
|
-
| `maxsim-project-researcher` | Researches project context | `/maxsim:init` |
|
|
78
|
-
| `maxsim-research-synthesizer` | Synthesizes research findings | `/maxsim:plan-phase` |
|
|
79
|
-
| `maxsim-codebase-mapper` | Maps codebase structure | `/maxsim:init` |
|
|
80
|
-
| `maxsim-integration-checker` | Checks integration points | `/maxsim:verify-phase` |
|
|
61
|
+
| `brainstorming` | Facing architectural choices or design decisions |
|
|
62
|
+
| `roadmap-writing` | Creating or restructuring a project roadmap |
|
|
63
|
+
| `maxsim-simplify` | Reviewing code for duplication, dead code, complexity |
|
|
64
|
+
| `code-review` | Reviewing implementation for security, interfaces, quality |
|
|
65
|
+
| `sdd` | Executing sequential tasks with fresh-agent isolation |
|
|
66
|
+
| `maxsim-batch` | Parallelizing work across independent worktree units |
|
|
81
67
|
|
|
82
68
|
## Common Pitfalls
|
|
83
69
|
|
|
@@ -86,24 +72,7 @@ Agents are specialized subagent prompts spawned by MAXSIM commands:
|
|
|
86
72
|
- Ignoring STATE.md checkpoints from previous sessions
|
|
87
73
|
- Working outside the current phase without explicit user approval
|
|
88
74
|
- Making architectural decisions without documenting them in STATE.md
|
|
89
|
-
- Finishing work without running verification
|
|
90
75
|
|
|
91
76
|
**If any of these occur: stop, check the routing table, follow the workflow.**
|
|
92
77
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
Before ending any work session:
|
|
96
|
-
|
|
97
|
-
- [ ] All work was routed through MAXSIM commands (not ad-hoc)
|
|
98
|
-
- [ ] STATE.md reflects current progress and decisions
|
|
99
|
-
- [ ] Any bugs encountered were debugged systematically
|
|
100
|
-
- [ ] Tests were written before implementation (TDD)
|
|
101
|
-
- [ ] Completion claims have verification evidence
|
|
102
|
-
- [ ] Recurring patterns or errors were saved to memory
|
|
103
|
-
|
|
104
|
-
## MAXSIM Integration
|
|
105
|
-
|
|
106
|
-
When a project has a `CLAUDE.md`, both apply:
|
|
107
|
-
- `CLAUDE.md` defines project-specific conventions (language, tools, style)
|
|
108
|
-
- MAXSIM skills define workflow rules (how work is structured and verified)
|
|
109
|
-
- If they conflict, `CLAUDE.md` takes priority for code style; MAXSIM takes priority for workflow structure
|
|
78
|
+
See also: `/verification-before-completion` for evidence-based completion claims.
|
|
@@ -1,27 +1,24 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: verification-before-completion
|
|
3
3
|
description: >-
|
|
4
|
-
Requires running verification commands and reading actual output before
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Requires running verification commands and reading actual output before
|
|
5
|
+
completion claims. Covers the 5-step verification process and evidence block
|
|
6
|
+
format. Use when claiming work is done, tests pass, builds succeed, or bugs
|
|
7
|
+
are fixed.
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# Verification Before Completion
|
|
10
11
|
|
|
11
|
-
Evidence before claims, always.
|
|
12
|
+
Evidence before claims, always. No exceptions.
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## Process
|
|
14
|
+
## The 5-Step Process
|
|
16
15
|
|
|
17
16
|
Before claiming any status or marking a task done:
|
|
18
17
|
|
|
19
18
|
1. **IDENTIFY** -- What command proves this claim?
|
|
20
|
-
2. **RUN** -- Execute the
|
|
19
|
+
2. **RUN** -- Execute the command fresh in this turn (not a previous run)
|
|
21
20
|
3. **READ** -- Read the full output, check the exit code, count failures
|
|
22
|
-
4. **VERIFY** -- Does the output actually confirm the claim?
|
|
23
|
-
- If NO: state the actual status with evidence
|
|
24
|
-
- If YES: state the claim with the evidence
|
|
21
|
+
4. **VERIFY** -- Does the output actually confirm the claim? If NO: state the actual status with evidence. If YES: proceed.
|
|
25
22
|
5. **CLAIM** -- Only now may you assert completion
|
|
26
23
|
|
|
27
24
|
### Evidence Block Format
|
|
@@ -35,9 +32,9 @@ OUTPUT: [relevant excerpt of actual output]
|
|
|
35
32
|
VERDICT: PASS | FAIL
|
|
36
33
|
```
|
|
37
34
|
|
|
38
|
-
This format is required for task completion claims in MAXSIM plan execution.
|
|
35
|
+
This format is required for task completion claims in MAXSIM plan execution.
|
|
39
36
|
|
|
40
|
-
|
|
37
|
+
## What Counts as Verification
|
|
41
38
|
|
|
42
39
|
| Claim | Requires | Not Sufficient |
|
|
43
40
|
|-------|----------|----------------|
|
|
@@ -59,7 +56,7 @@ This format is required for task completion claims in MAXSIM plan execution. It
|
|
|
59
56
|
|
|
60
57
|
Stop if you catch yourself using "should", "probably", or "looks good" about unverified work, or expressing satisfaction before running verification.
|
|
61
58
|
|
|
62
|
-
## Verification
|
|
59
|
+
## Verification Checklist
|
|
63
60
|
|
|
64
61
|
Before marking any work as complete:
|
|
65
62
|
|
|
@@ -71,13 +68,4 @@ Before marking any work as complete:
|
|
|
71
68
|
- [ ] No "should", "probably", or "seems to" in your completion statement
|
|
72
69
|
- [ ] Evidence block produced for the task completion claim
|
|
73
70
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
The executor's task commit protocol requires verification before committing:
|
|
77
|
-
|
|
78
|
-
1. Run the task's verify block (automated checks)
|
|
79
|
-
2. Confirm the done criteria are met with evidence
|
|
80
|
-
3. Produce an evidence block for the task completion
|
|
81
|
-
4. Only then: stage files and commit
|
|
82
|
-
|
|
83
|
-
The verifier agent independently re-checks all claims -- do not assume the verifier will catch what you missed.
|
|
71
|
+
See also: `/verification-gates` for the full gate framework with retry logic and escalation protocol.
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-gates
|
|
3
|
+
description: >-
|
|
4
|
+
Hard gate framework for evidence-based verification. Defines four gate types
|
|
5
|
+
(input validation, pre-action, completion, quality), retry logic with feedback,
|
|
6
|
+
anti-rationalization enforcement, and escalation protocol. Use when implementing
|
|
7
|
+
verification checkpoints, completion gates, or quality checks.
|
|
8
|
+
user-invocable: false
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Verification Gates
|
|
12
|
+
|
|
13
|
+
Evidence before claims, always. No exceptions.
|
|
14
|
+
|
|
15
|
+
## Gate Types
|
|
16
|
+
|
|
17
|
+
### 1. Input Validation Gate
|
|
18
|
+
|
|
19
|
+
**When:** Before starting any work.
|
|
20
|
+
**Purpose:** Verify all required inputs exist (files, env vars, CLI args, state).
|
|
21
|
+
|
|
22
|
+
**Evidence required:**
|
|
23
|
+
- File existence checks (`test -f path`)
|
|
24
|
+
- Environment variable checks
|
|
25
|
+
- State file readability
|
|
26
|
+
|
|
27
|
+
**On failure:** Return structured error immediately. Do NOT attempt partial work.
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
AGENT RESULT: INPUT VALIDATION FAILED
|
|
31
|
+
Missing: [list of missing inputs]
|
|
32
|
+
Expected from: [source -- orchestrator, user, prior agent]
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 2. Pre-Action Gate
|
|
36
|
+
|
|
37
|
+
**When:** Before destructive actions (file writes, git commits, PRs, deployments).
|
|
38
|
+
**Purpose:** Verify intent and impact before irreversible changes.
|
|
39
|
+
|
|
40
|
+
**Evidence required:**
|
|
41
|
+
- State what will be changed
|
|
42
|
+
- Confirm target files/branches are correct
|
|
43
|
+
- Verify no unintended side effects (e.g., `git status` before commit)
|
|
44
|
+
|
|
45
|
+
**On failure:** Abort the action. Report what was wrong and what would have happened.
|
|
46
|
+
|
|
47
|
+
### 3. Completion Gate
|
|
48
|
+
|
|
49
|
+
**When:** Before claiming any task, plan, or phase is done.
|
|
50
|
+
**Purpose:** Verify all done criteria are met with fresh tool output.
|
|
51
|
+
|
|
52
|
+
**HARD GATE -- No completion claims without fresh verification evidence.**
|
|
53
|
+
|
|
54
|
+
Do NOT pass this gate by arguing it's "close enough", "minor issue", or "will fix later".
|
|
55
|
+
Either evidence passes or it fails. No middle ground.
|
|
56
|
+
Partial success is failure. "Good enough" is not enough.
|
|
57
|
+
|
|
58
|
+
If you have not run the verification command in THIS turn, you cannot claim it passes.
|
|
59
|
+
|
|
60
|
+
**Evidence required:**
|
|
61
|
+
- Run every verification command from the task's verify block
|
|
62
|
+
- Check every item in the done criteria list
|
|
63
|
+
- Produce an evidence block for each claim
|
|
64
|
+
|
|
65
|
+
### 4. Quality Gate
|
|
66
|
+
|
|
67
|
+
**When:** After implementation, before marking work as shippable.
|
|
68
|
+
**Purpose:** Verify code quality standards are met.
|
|
69
|
+
|
|
70
|
+
**Evidence required:**
|
|
71
|
+
- Test suite output (all passing, zero failures)
|
|
72
|
+
- Build output (exit code 0)
|
|
73
|
+
- Lint output (zero errors -- warnings acceptable if project allows)
|
|
74
|
+
|
|
75
|
+
**On failure:** Fix quality issues before proceeding. Do not defer quality failures.
|
|
76
|
+
|
|
77
|
+
## Anti-Rationalization
|
|
78
|
+
|
|
79
|
+
FORBIDDEN PHRASES -- if you catch yourself using these, STOP. You are rationalizing:
|
|
80
|
+
|
|
81
|
+
- "should work"
|
|
82
|
+
- "probably passes"
|
|
83
|
+
- "I'm confident that..."
|
|
84
|
+
- "based on my analysis..."
|
|
85
|
+
- "the logic suggests..."
|
|
86
|
+
- "it's reasonable to assume..."
|
|
87
|
+
|
|
88
|
+
These phrases replace evidence with reasoning. The gate requires tool output, not arguments.
|
|
89
|
+
|
|
90
|
+
Additional forbidden rationalizations:
|
|
91
|
+
- "It's close enough" -- close is not done
|
|
92
|
+
- "Minor issue, will fix later" -- later is never
|
|
93
|
+
- "The logic is correct so it must pass" -- run it and find out
|
|
94
|
+
- "I already verified this in a previous step" -- previous steps are stale; verify now
|
|
95
|
+
|
|
96
|
+
## Evidence Standard
|
|
97
|
+
|
|
98
|
+
Any tool output qualifies as evidence: test output, build results, git diff, file reads, linter output, command exit codes.
|
|
99
|
+
|
|
100
|
+
| Claim | Requires | Not Sufficient |
|
|
101
|
+
|-------|----------|----------------|
|
|
102
|
+
| "Tests pass" | Test command output showing 0 failures | Previous run, "should pass" |
|
|
103
|
+
| "Build succeeds" | Build command with exit code 0 | Linter passing only |
|
|
104
|
+
| "Bug is fixed" | Original failing test now passes | "Code changed, assumed fixed" |
|
|
105
|
+
| "Task complete" | All done criteria checked with evidence | "I implemented everything" |
|
|
106
|
+
| "No regressions" | Full test suite passing | "I only changed one file" |
|
|
107
|
+
| "File created" | `test -f path` or Read tool output | "I wrote it with Write tool" |
|
|
108
|
+
|
|
109
|
+
## Evidence Block Format
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
CLAIM: [what you are claiming]
|
|
113
|
+
EVIDENCE: [exact command run in THIS turn]
|
|
114
|
+
OUTPUT: [relevant excerpt of actual output]
|
|
115
|
+
VERDICT: PASS | FAIL
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Produce one evidence block per claim. Group related claims if verified by the same command.
|
|
119
|
+
|
|
120
|
+
## Retry Protocol
|
|
121
|
+
|
|
122
|
+
Maximum 2 retries (3 total attempts) per gate.
|
|
123
|
+
|
|
124
|
+
**Retry feedback loop:**
|
|
125
|
+
1. Gate fails -- capture: what failed, expected result, actual result
|
|
126
|
+
2. Analyze the failure output (do not guess; read the error)
|
|
127
|
+
3. Fix the identified issue
|
|
128
|
+
4. Re-run the verification command
|
|
129
|
+
5. Produce a new evidence block
|
|
130
|
+
|
|
131
|
+
Each retry MUST include in its evidence block:
|
|
132
|
+
- Attempt number (1/3, 2/3, 3/3)
|
|
133
|
+
- What changed since last attempt
|
|
134
|
+
- Fresh verification output
|
|
135
|
+
|
|
136
|
+
**After 3rd failure -- escalation:**
|
|
137
|
+
|
|
138
|
+
Return full failure context to orchestrator:
|
|
139
|
+
|
|
140
|
+
```markdown
|
|
141
|
+
## GATE FAILURE -- ESCALATION
|
|
142
|
+
|
|
143
|
+
**Gate:** [gate type]
|
|
144
|
+
**Attempts:** 3/3
|
|
145
|
+
**Final evidence:**
|
|
146
|
+
CLAIM: [claim]
|
|
147
|
+
EVIDENCE: [command]
|
|
148
|
+
OUTPUT: [output]
|
|
149
|
+
VERDICT: FAIL
|
|
150
|
+
|
|
151
|
+
**History:**
|
|
152
|
+
- Attempt 1: [what failed, what was tried]
|
|
153
|
+
- Attempt 2: [what failed, what was tried]
|
|
154
|
+
- Attempt 3: [what failed -- escalating]
|
|
155
|
+
|
|
156
|
+
**Recommended action:** [what the orchestrator or user should do]
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Audit Trail
|
|
160
|
+
|
|
161
|
+
Log every gate attempt to GitHub Issues as a comment on the active phase issue:
|
|
162
|
+
|
|
163
|
+
- Gate name and type
|
|
164
|
+
- Attempt number
|
|
165
|
+
- Evidence provided (abbreviated)
|
|
166
|
+
- PASS or FAIL result
|
|
167
|
+
- Timestamp
|
|
168
|
+
|
|
169
|
+
This creates an auditable record of all verification activity for debugging and improvement.
|
|
@@ -98,7 +98,7 @@ skipped: [N]
|
|
|
98
98
|
**Gaps:**
|
|
99
99
|
- APPEND only when issue found (YAML format)
|
|
100
100
|
- After diagnosis: fill `root_cause`, `artifacts`, `missing`, `debug_session`
|
|
101
|
-
- This section feeds directly into /maxsim:plan
|
|
101
|
+
- This section feeds directly into /maxsim:plan --gaps
|
|
102
102
|
|
|
103
103
|
</section_rules>
|
|
104
104
|
|
|
@@ -112,7 +112,7 @@ skipped: [N]
|
|
|
112
112
|
4. UAT.md Gaps section updated with diagnosis:
|
|
113
113
|
- Each gap gets `root_cause`, `artifacts`, `missing`, `debug_session` filled
|
|
114
114
|
5. status → "diagnosed"
|
|
115
|
-
6. Ready for /maxsim:plan
|
|
115
|
+
6. Ready for /maxsim:plan --gaps with root causes
|
|
116
116
|
|
|
117
117
|
**After diagnosis:**
|
|
118
118
|
```yaml
|
|
@@ -136,7 +136,7 @@ skipped: [N]
|
|
|
136
136
|
|
|
137
137
|
<lifecycle>
|
|
138
138
|
|
|
139
|
-
**Creation:** When /maxsim:
|
|
139
|
+
**Creation:** When /maxsim:execute (verification) starts new session
|
|
140
140
|
- Extract tests from SUMMARY.md files
|
|
141
141
|
- Set status to "testing"
|
|
142
142
|
- Current Test points to test 1
|
|
@@ -29,7 +29,7 @@ created: {date}
|
|
|
29
29
|
|
|
30
30
|
- **After every task commit:** Run `{quick run command}`
|
|
31
31
|
- **After every plan wave:** Run `{full suite command}`
|
|
32
|
-
- **Before `/maxsim:
|
|
32
|
+
- **Before `/maxsim:execute (verification)`:** Full suite must be green
|
|
33
33
|
- **Max feedback latency:** {N} seconds
|
|
34
34
|
|
|
35
35
|
---
|
|
@@ -7,8 +7,8 @@ Template for `.planning/phases/XX-name/{phase_num}-CONTEXT.md` - captures implem
|
|
|
7
7
|
**Key principle:** Categories are NOT predefined. They emerge from what was actually discussed for THIS phase. A CLI phase has CLI-relevant sections, a UI phase has UI-relevant sections.
|
|
8
8
|
|
|
9
9
|
**Downstream consumers:**
|
|
10
|
-
- `
|
|
11
|
-
- `
|
|
10
|
+
- `researcher` — Reads decisions to focus research (e.g., "card layout" -> research card component patterns)
|
|
11
|
+
- `planner` — Reads decisions to create specific tasks (e.g., "infinite scroll" -> task includes virtualization)
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
@@ -277,7 +277,7 @@ The output should answer: "What does the researcher need to investigate? What ch
|
|
|
277
277
|
|
|
278
278
|
**After creation:**
|
|
279
279
|
- File lives in phase directory: `.planning/phases/XX-name/{phase_num}-CONTEXT.md`
|
|
280
|
-
- `
|
|
281
|
-
- `
|
|
280
|
+
- `researcher` uses decisions to focus investigation
|
|
281
|
+
- `planner` uses decisions + research to create executable tasks
|
|
282
282
|
- Downstream agents should NOT need to ask the user again about captured decisions
|
|
283
283
|
</guidelines>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Debug Subagent Prompt Template
|
|
2
2
|
|
|
3
|
-
Template for spawning
|
|
3
|
+
Template for spawning verifier agent in debug mode. The agent contains all debugging expertise - this template provides problem context only.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -55,14 +55,14 @@ Create: .planning/debug/{slug}.md
|
|
|
55
55
|
```python
|
|
56
56
|
Task(
|
|
57
57
|
prompt=filled_template,
|
|
58
|
-
subagent_type="
|
|
58
|
+
subagent_type="verifier",
|
|
59
59
|
description="Debug {slug}"
|
|
60
60
|
)
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
**From diagnose-issues (UAT):**
|
|
64
64
|
```python
|
|
65
|
-
Task(prompt=template, subagent_type="
|
|
65
|
+
Task(prompt=template, subagent_type="verifier", description="Debug UAT-001")
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
---
|
|
@@ -4,7 +4,7 @@ Template for `.planning/phases/XX-name/DISCOVERY.md` - shallow research for libr
|
|
|
4
4
|
|
|
5
5
|
**Purpose:** Answer "which library/option should we use" questions during mandatory discovery in plan-phase.
|
|
6
6
|
|
|
7
|
-
For deep ecosystem research ("how do experts build this"), use `/maxsim:research
|
|
7
|
+
For deep ecosystem research ("how do experts build this"), use `/maxsim:plan --research` which produces RESEARCH.md.
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -142,5 +142,5 @@ Create `.planning/phases/XX-name/DISCOVERY.md`:
|
|
|
142
142
|
- Niche/complex domains (3D, games, audio, shaders)
|
|
143
143
|
- Need ecosystem knowledge, not just library choice
|
|
144
144
|
- "How do experts build this" questions
|
|
145
|
-
- Use `/maxsim:research
|
|
145
|
+
- Use `/maxsim:plan --research` for these
|
|
146
146
|
</guidelines>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Phase Prompt Template
|
|
2
2
|
|
|
3
|
-
> **Note:** Planning methodology is in `agents/
|
|
3
|
+
> **Note:** Planning methodology is in `agents/planner.md`.
|
|
4
4
|
> This template defines the PLAN.md output format that the agent produces.
|
|
5
5
|
|
|
6
6
|
Template for `.planning/phases/XX-name/{phase}-{plan}-PLAN.md` - executable phase plans optimized for parallel execution.
|
|
@@ -134,7 +134,7 @@ After completion, create `.planning/phases/XX-name/{phase}-{plan}-SUMMARY.md`
|
|
|
134
134
|
| `user_setup` | No | Array of human-required setup items (external services) |
|
|
135
135
|
| `must_haves` | Yes | Goal-backward verification criteria (see below) |
|
|
136
136
|
|
|
137
|
-
**Wave is pre-computed:** Wave numbers are assigned during `/maxsim:plan
|
|
137
|
+
**Wave is pre-computed:** Wave numbers are assigned during `/maxsim:plan`. Execute-phase reads `wave` directly from frontmatter and groups plans by wave number. No runtime dependency analysis needed.
|
|
138
138
|
|
|
139
139
|
**Must-haves enable verification:** The `must_haves` field carries goal-backward requirements from planning to execution. After all plans complete, execute-phase spawns a verification subagent that checks these criteria against the actual codebase.
|
|
140
140
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Planner Subagent Prompt Template
|
|
2
2
|
|
|
3
|
-
Template for spawning
|
|
3
|
+
Template for spawning planner agent. The agent contains all planning expertise - this template provides planning context only.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -34,7 +34,7 @@ Template for spawning maxsim-planner agent. The agent contains all planning expe
|
|
|
34
34
|
</planning_context>
|
|
35
35
|
|
|
36
36
|
<downstream_consumer>
|
|
37
|
-
Output consumed by /maxsim:execute
|
|
37
|
+
Output consumed by /maxsim:execute
|
|
38
38
|
Plans must be executable prompts with:
|
|
39
39
|
- Frontmatter (wave, depends_on, files_modified, autonomous)
|
|
40
40
|
- Tasks in XML format
|
|
@@ -68,20 +68,20 @@ Before returning PLANNING COMPLETE:
|
|
|
68
68
|
|
|
69
69
|
## Usage
|
|
70
70
|
|
|
71
|
-
**From /maxsim:plan
|
|
71
|
+
**From /maxsim:plan (standard mode):**
|
|
72
72
|
```python
|
|
73
73
|
Task(
|
|
74
74
|
prompt=filled_template,
|
|
75
|
-
subagent_type="
|
|
75
|
+
subagent_type="planner",
|
|
76
76
|
description="Plan Phase {phase}"
|
|
77
77
|
)
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
**From /maxsim:plan
|
|
80
|
+
**From /maxsim:plan --gaps (gap closure mode):**
|
|
81
81
|
```python
|
|
82
82
|
Task(
|
|
83
83
|
prompt=filled_template, # with mode: gap_closure
|
|
84
|
-
subagent_type="
|
|
84
|
+
subagent_type="planner",
|
|
85
85
|
description="Plan gaps for Phase {phase}"
|
|
86
86
|
)
|
|
87
87
|
```
|
|
@@ -114,4 +114,4 @@ Continue: {standard | gap_closure}
|
|
|
114
114
|
|
|
115
115
|
---
|
|
116
116
|
|
|
117
|
-
**Note:** Planning methodology, task breakdown, dependency analysis, wave assignment, TDD detection, and goal-backward derivation are baked into the
|
|
117
|
+
**Note:** Planning methodology, task breakdown, dependency analysis, wave assignment, TDD detection, and goal-backward derivation are baked into the planner agent. This template only passes context.
|
|
@@ -170,7 +170,7 @@ PROJECT.md evolves throughout the project lifecycle.
|
|
|
170
170
|
|
|
171
171
|
For existing codebases:
|
|
172
172
|
|
|
173
|
-
1. **Map codebase first** via `/maxsim:
|
|
173
|
+
1. **Map codebase first** via `/maxsim:init (codebase mapping)`
|
|
174
174
|
|
|
175
175
|
2. **Infer Validated requirements** from existing code:
|
|
176
176
|
- What does the codebase actually do?
|
|
@@ -18,7 +18,7 @@ Template for `.planning/phases/XX-name/{phase_num}-RESEARCH.md` - comprehensive
|
|
|
18
18
|
<user_constraints>
|
|
19
19
|
## User Constraints (from CONTEXT.md)
|
|
20
20
|
|
|
21
|
-
**CRITICAL:** If CONTEXT.md exists from /maxsim:
|
|
21
|
+
**CRITICAL:** If CONTEXT.md exists from /maxsim:plan (discussion stage), copy locked decisions here verbatim. These MUST be honored by the planner.
|
|
22
22
|
|
|
23
23
|
### Locked Decisions
|
|
24
24
|
[Copy from CONTEXT.md `## Decisions` section - these are NON-NEGOTIABLE]
|
|
@@ -145,10 +145,10 @@ Updated after each plan completion.
|
|
|
145
145
|
|
|
146
146
|
**Decisions:** Reference to PROJECT.md Key Decisions table, plus recent decisions summary for quick access. Full decision log lives in PROJECT.md.
|
|
147
147
|
|
|
148
|
-
**Pending Todos:** Ideas captured via /maxsim:
|
|
148
|
+
**Pending Todos:** Ideas captured via /maxsim:quick --todo
|
|
149
149
|
- Count of pending todos
|
|
150
150
|
- Reference to .planning/todos/pending/
|
|
151
|
-
- Brief list if few, count if many (e.g., "5 pending todos — see /maxsim:
|
|
151
|
+
- Brief list if few, count if many (e.g., "5 pending todos — see /maxsim:quick --todo")
|
|
152
152
|
|
|
153
153
|
**Blockers/Concerns:** From "Next Phase Readiness" sections
|
|
154
154
|
- Issues that affect future work
|
|
@@ -109,6 +109,28 @@ _Note: TDD tasks may have multiple commits (test → feat → refactor)_
|
|
|
109
109
|
|
|
110
110
|
[Note: "Deviations from Plan" documents unplanned work that was handled automatically via deviation rules. "Issues Encountered" documents problems during planned work that required problem-solving.]
|
|
111
111
|
|
|
112
|
+
## Review Cycle
|
|
113
|
+
|
|
114
|
+
| Stage | Result | Attempts | Duration | Findings |
|
|
115
|
+
|-------|--------|----------|----------|----------|
|
|
116
|
+
| Spec Review | {PASS|FAIL|OVERRIDDEN} | {N}/3 | {X}s | {summary or "All requirements met"} |
|
|
117
|
+
| Code Review | {APPROVED|BLOCKED|OVERRIDDEN} | {N}/3 | {X}s | {summary or "No blocking issues"} |
|
|
118
|
+
| Simplify | {CLEAN|FIXED|BLOCKED|SKIPPED|OVERRIDDEN} | {N}/3 | {X}s | {summary or "N/A"} |
|
|
119
|
+
| Final Review | {APPROVED|BLOCKED|SKIPPED|N/A|OVERRIDDEN} | {N}/3 | {X}s | {summary or "N/A"} |
|
|
120
|
+
|
|
121
|
+
**Total review time:** {total}s
|
|
122
|
+
**Escalations:** {count} ({details or "None"})
|
|
123
|
+
|
|
124
|
+
[Populated by the executor after the review cycle completes. See execute-plan.md review_cycle step for stage definitions and retry/escalation protocol.]
|
|
125
|
+
|
|
126
|
+
## Requirement Evidence
|
|
127
|
+
|
|
128
|
+
| Requirement | Evidence | Status |
|
|
129
|
+
|-------------|----------|--------|
|
|
130
|
+
| {REQ-ID from plan frontmatter} | {specific file/test/behavior that satisfies it} | {MET|PARTIAL|UNMET} |
|
|
131
|
+
|
|
132
|
+
[Populated by the executor during SUMMARY creation using the `requirements` array from the PLAN.md frontmatter. Each requirement ID from the plan must have an evidence entry. If no requirements field in plan frontmatter, this section can be omitted.]
|
|
133
|
+
|
|
112
134
|
## User Setup Required
|
|
113
135
|
|
|
114
136
|
[If USER-SETUP.md was generated:]
|
|
@@ -224,6 +246,25 @@ The one-liner should tell someone what actually shipped.
|
|
|
224
246
|
## Issues Encountered
|
|
225
247
|
- jsonwebtoken CommonJS import failed in Edge runtime - switched to jose (planned library change, worked as expected)
|
|
226
248
|
|
|
249
|
+
## Review Cycle
|
|
250
|
+
|
|
251
|
+
| Stage | Result | Attempts | Duration | Findings |
|
|
252
|
+
|-------|--------|----------|----------|----------|
|
|
253
|
+
| Spec Review | PASS | 1/3 | 45s | All requirements met |
|
|
254
|
+
| Code Review | APPROVED | 2/3 | 82s | Fixed missing error handler on login endpoint (attempt 1) |
|
|
255
|
+
| Simplify | FIXED | 1/3 | 67s | Extracted shared JWT helper, removed unused bcrypt import |
|
|
256
|
+
| Final Review | APPROVED | 1/3 | 38s | Simplification changes verified |
|
|
257
|
+
|
|
258
|
+
**Total review time:** 232s
|
|
259
|
+
**Escalations:** 0 (None)
|
|
260
|
+
|
|
261
|
+
## Requirement Evidence
|
|
262
|
+
|
|
263
|
+
| Requirement | Evidence | Status |
|
|
264
|
+
|-------------|----------|--------|
|
|
265
|
+
| AUTH-01 | src/app/api/auth/login/route.ts implements JWT login with refresh | MET |
|
|
266
|
+
| AUTH-02 | src/middleware.ts validates tokens on protected routes | MET |
|
|
267
|
+
|
|
227
268
|
## Next Phase Readiness
|
|
228
269
|
- Auth foundation complete, ready for feature development
|
|
229
270
|
- User registration endpoint needed before public launch
|