@pjmendonca/devflow 1.13.2 → 1.19.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/.claude/commands/agent.md +1 -1
- package/.claude/commands/brainstorm.md +28 -0
- package/.claude/commands/bugfix.md +21 -0
- package/.claude/commands/checkpoint.md +0 -1
- package/.claude/commands/collab.md +0 -1
- package/.claude/commands/costs.md +88 -18
- package/.claude/commands/devflow.md +26 -0
- package/.claude/commands/handoff.md +0 -1
- package/.claude/commands/init.md +383 -0
- package/.claude/commands/memory.md +0 -1
- package/.claude/commands/pair.md +0 -1
- package/.claude/commands/review.md +27 -0
- package/.claude/commands/route.md +0 -1
- package/.claude/commands/swarm.md +0 -1
- package/.claude/commands/validate.md +55 -0
- package/.claude/hooks/session-notification.sh +44 -0
- package/.claude/hooks/session-startup.sh +427 -0
- package/.claude/hooks/session-stop.sh +38 -0
- package/.claude/hooks/session_tracker.py +272 -0
- package/.claude/settings.json +38 -0
- package/.claude/skills/brainstorm/SKILL.md +531 -0
- package/.claude/skills/costs/SKILL.md +156 -0
- package/.claude/skills/validate/SKILL.md +101 -0
- package/CHANGELOG.md +284 -0
- package/README.md +207 -10
- package/bin/devflow-install.js +2 -1
- package/bin/devflow.js +4 -0
- package/lib/constants.js +0 -1
- package/lib/exec-python.js +1 -1
- package/package.json +1 -1
- package/tooling/.automation/.checkpoint_lock +1 -0
- package/tooling/.automation/agents/architect.md +19 -0
- package/tooling/.automation/agents/ba.md +19 -0
- package/tooling/.automation/agents/maintainer.md +19 -0
- package/tooling/.automation/agents/pm.md +19 -0
- package/tooling/.automation/agents/reviewer.md +1 -1
- package/tooling/.automation/agents/writer.md +19 -0
- package/tooling/.automation/benchmarks/benchmark_20251230_100119.json +314 -0
- package/tooling/.automation/benchmarks/benchmark_20251230_100216.json +314 -0
- package/tooling/.automation/costs/config.json +31 -0
- package/tooling/.automation/costs/sessions/2025-12-29_20251229_164128.json +22 -0
- package/tooling/.automation/memory/knowledge/kg_integration-test.json +738 -1
- package/tooling/.automation/memory/knowledge/kg_test-story.json +3381 -2
- package/tooling/.automation/memory/shared/shared_integration-test.json +193 -1
- package/tooling/.automation/memory/shared/shared_test-story.json +757 -1
- package/tooling/.automation/memory/shared/shared_test.json +1332 -0
- package/tooling/.automation/memory/shared/shared_validation-check.json +240 -0
- package/tooling/.automation/overrides/templates/architect/cloud-native.yaml +5 -5
- package/tooling/.automation/overrides/templates/architect/enterprise-architect.yaml +23 -5
- package/tooling/.automation/overrides/templates/architect/pragmatic-minimalist.yaml +24 -6
- package/tooling/.automation/overrides/templates/ba/agile-storyteller.yaml +4 -4
- package/tooling/.automation/overrides/templates/ba/domain-expert.yaml +4 -4
- package/tooling/.automation/overrides/templates/ba/requirements-engineer.yaml +4 -4
- package/tooling/.automation/overrides/templates/dev/performance-engineer.yaml +18 -0
- package/tooling/.automation/overrides/templates/dev/rapid-prototyper.yaml +19 -1
- package/tooling/.automation/overrides/templates/dev/security-focused.yaml +18 -0
- package/tooling/.automation/overrides/templates/dev/user-advocate.yaml +54 -0
- package/tooling/.automation/overrides/templates/maintainer/devops-maintainer.yaml +4 -4
- package/tooling/.automation/overrides/templates/maintainer/legacy-steward.yaml +4 -4
- package/tooling/.automation/overrides/templates/maintainer/oss-maintainer.yaml +4 -4
- package/tooling/.automation/overrides/templates/maintainer/reliability-engineer.yaml +55 -0
- package/tooling/.automation/overrides/templates/pm/agile-pm.yaml +4 -4
- package/tooling/.automation/overrides/templates/pm/hybrid-delivery.yaml +3 -3
- package/tooling/.automation/overrides/templates/pm/traditional-pm.yaml +4 -4
- package/tooling/.automation/overrides/templates/reviewer/quick-sanity.yaml +18 -0
- package/tooling/.automation/overrides/templates/reviewer/thorough-critic.yaml +18 -0
- package/tooling/.automation/overrides/templates/sm/agile-coach.yaml +2 -2
- package/tooling/.automation/overrides/templates/sm/startup-pm.yaml +3 -3
- package/tooling/.automation/overrides/templates/writer/api-documentarian.yaml +5 -5
- package/tooling/.automation/overrides/templates/writer/docs-as-code.yaml +4 -4
- package/tooling/.automation/overrides/templates/writer/user-guide-author.yaml +5 -5
- package/tooling/.automation/validation/history/2025-12-29_val_002a28c1.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_01273bb1.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_03369914.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_07a449ba.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_0df1f0a2.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_10ff3d34.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_110771d7.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_13f3a7f9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_17ba9d21.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_22247089.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_227ea6a4.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_2335d5ae.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_246824bb.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_28b4b9cd.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_2abd12cc.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_2c801b2f.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_2c8cfa8e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_2ce76eb0.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_30351948.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_30eb7229.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_34df0e77.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_376e4d6a.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_3a4e8a1a.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_3b77a628.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_3ea4e1cf.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_44aacdb4.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_457ddfa8.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_45af6238.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_4735dba1.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_486b203c.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_49dc56cd.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_4d863d6d.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_5149a808.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_52e0bb43.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_585d6319.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_5b2d859a.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_635a7081.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_64df4905.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_70634cee.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_714553f9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_7f7bfdbf.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_7faad91d.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_81821f8f.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_8249f3c9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_8422b50f.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_8446c134.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_879f4e26.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_8b6d5bd7.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_8c5cd787.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_91d20bc7.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_958a12b7.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_95d91108.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_980dbb74.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_9e40c79b.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_9f499b7c.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_9f7c3b57.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_a30d5bd4.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_a6eb09c7.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_a86f7b83.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_ad5347e1.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_b0a5a993.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_bcb0192e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_bf3c9aaa.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_c461ff88.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_c4f4e258.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_c7f0fa6d.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_c911b0e6.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_cc581964.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_cdd5a33b.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_cfd42495.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d1c7a4ee.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d2280d0e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d2a6ff69.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d8c53ab2.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d9c1247a.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_d9d58569.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_dabb4fd9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_dd8fe359.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_decdffc9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_e3a95476.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_e776dfca.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_ea70969f.json +59 -0
- package/tooling/.automation/validation/history/2025-12-29_val_ef41ea95.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_f384f9b1.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_f8adc38c.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_fa40b69e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_fc538d54.json +41 -0
- package/tooling/.automation/validation/history/2025-12-29_val_fe814665.json +32 -0
- package/tooling/.automation/validation/history/2025-12-29_val_ffea4b12.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_02d001e5.json +59 -0
- package/tooling/.automation/validation/history/2025-12-30_val_0b8966dc.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_15455fbf.json +59 -0
- package/tooling/.automation/validation/history/2025-12-30_val_157e34b9.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_28d1d933.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_3442a52c.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_37f1ce1e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_4f1d8a93.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_56ff1de3.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_664fd4e2.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_66afb0a7.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_7634663c.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_8ea830c3.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_998957c2.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_a52177db.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_a5b65a63.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_ae391d0e.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_c7895339.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_ca416593.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_cee19422.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_ddd4f4e6.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_f2e1394b.json +32 -0
- package/tooling/.automation/validation/history/2025-12-30_val_f4a7fa06.json +41 -0
- package/tooling/.automation/validation/history/2025-12-30_val_ffea3369.json +32 -0
- package/tooling/.automation/validation/history/2026-01-03_val_1287a74c.json +41 -0
- package/tooling/.automation/validation/history/2026-01-03_val_3b24071f.json +32 -0
- package/tooling/.automation/validation/history/2026-01-03_val_44d77573.json +32 -0
- package/tooling/.automation/validation/history/2026-01-03_val_5b31dc51.json +32 -0
- package/tooling/.automation/validation/history/2026-01-03_val_74267244.json +32 -0
- package/tooling/.automation/validation/history/2026-01-03_val_8b2d95c7.json +59 -0
- package/tooling/.automation/validation/history/2026-01-03_val_d875b297.json +41 -0
- package/tooling/.automation/validation-config.yaml +103 -0
- package/tooling/completions/DevflowCompletion.ps1 +21 -21
- package/tooling/completions/_run-story +3 -3
- package/tooling/completions/run-story-completion.bash +8 -8
- package/tooling/docs/DOC-STANDARD.md +14 -14
- package/tooling/docs/stories/.gitkeep +0 -0
- package/tooling/docs/templates/brainstorm-guide.md +314 -0
- package/tooling/docs/templates/migration-spec.md +4 -4
- package/tooling/docs/templates/story.md +66 -0
- package/tooling/scripts/context_checkpoint.py +5 -15
- package/tooling/scripts/cost_dashboard.py +610 -13
- package/tooling/scripts/create-persona.py +1 -12
- package/tooling/scripts/create-persona.sh +44 -44
- package/tooling/scripts/lib/__init__.py +12 -1
- package/tooling/scripts/lib/agent_handoff.py +11 -2
- package/tooling/scripts/lib/agent_router.py +31 -10
- package/tooling/scripts/lib/colors.py +106 -0
- package/tooling/scripts/lib/context_monitor.py +766 -0
- package/tooling/scripts/lib/cost_config.py +229 -10
- package/tooling/scripts/lib/cost_display.py +20 -45
- package/tooling/scripts/lib/cost_tracker.py +462 -15
- package/tooling/scripts/lib/currency_converter.py +28 -5
- package/tooling/scripts/lib/pair_programming.py +102 -3
- package/tooling/scripts/lib/personality_system.py +949 -0
- package/tooling/scripts/lib/platform.py +55 -0
- package/tooling/scripts/lib/shared_memory.py +9 -3
- package/tooling/scripts/lib/swarm_orchestrator.py +514 -75
- package/tooling/scripts/lib/validation_loop.py +1014 -0
- package/tooling/scripts/memory_summarize.py +9 -2
- package/tooling/scripts/new-doc.py +2 -9
- package/tooling/scripts/personalize_agent.py +1 -12
- package/tooling/scripts/rollback-migration.sh +60 -60
- package/tooling/scripts/run-collab.ps1 +16 -16
- package/tooling/scripts/run-collab.py +88 -53
- package/tooling/scripts/run-collab.sh +4 -4
- package/tooling/scripts/run-story.py +278 -20
- package/tooling/scripts/run-story.sh +3 -3
- package/tooling/scripts/setup-checkpoint-service.py +2 -9
- package/tooling/scripts/tech-debt-tracker.py +1 -12
- package/tooling/scripts/test_adversarial_swarm.py +452 -0
- package/tooling/scripts/validate-overrides.py +1 -10
- package/tooling/scripts/validate-overrides.sh +40 -40
- package/tooling/scripts/validate_loop.py +162 -0
- package/tooling/scripts/validate_setup.py +2 -30
- package/.claude/skills/init/SKILL.md +0 -496
package/lib/constants.js
CHANGED
|
@@ -24,7 +24,6 @@ module.exports = {
|
|
|
24
24
|
'devflow-new-doc': 'new-doc.py',
|
|
25
25
|
'devflow-tech-debt': 'tech-debt-tracker.py',
|
|
26
26
|
'devflow-setup-checkpoint': 'setup-checkpoint-service.py',
|
|
27
|
-
'devflow-init': 'init-project-workflow.py',
|
|
28
27
|
'devflow-version': 'update_version.py'
|
|
29
28
|
}
|
|
30
29
|
};
|
package/lib/exec-python.js
CHANGED
|
@@ -52,7 +52,7 @@ function execPythonScript(scriptPath, args = []) {
|
|
|
52
52
|
// If scriptPath is not absolute, resolve it relative to scripts dir
|
|
53
53
|
const fullPath = path.isAbsolute(scriptPath)
|
|
54
54
|
? scriptPath
|
|
55
|
-
: scriptPath;
|
|
55
|
+
: path.join(getScriptsDir(), scriptPath);
|
|
56
56
|
|
|
57
57
|
const spawnOptions = {
|
|
58
58
|
stdio: 'inherit', // Pass through stdin, stdout, stderr
|
package/package.json
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1767109630
|
|
@@ -133,3 +133,22 @@ For significant decisions, create an ADR:
|
|
|
133
133
|
- **Maintainability**: Code quality, documentation
|
|
134
134
|
- **Testability**: Unit, integration, E2E testing
|
|
135
135
|
- **Usability**: User experience considerations
|
|
136
|
+
|
|
137
|
+
## Context Management
|
|
138
|
+
|
|
139
|
+
When working on complex architectural designs:
|
|
140
|
+
|
|
141
|
+
1. **Monitor context usage** - Architecture docs can be lengthy; prioritize essential sections
|
|
142
|
+
2. **Create checkpoints** - Save work before context warnings appear
|
|
143
|
+
3. **Summarize decisions** - Keep ADRs concise and actionable
|
|
144
|
+
4. **Link instead of copy** - Reference existing docs rather than duplicating content
|
|
145
|
+
|
|
146
|
+
## When Complete
|
|
147
|
+
|
|
148
|
+
After completing your architectural work:
|
|
149
|
+
|
|
150
|
+
1. Save technical specifications to the working directory
|
|
151
|
+
2. Update any affected ADRs
|
|
152
|
+
3. Create a summary of key decisions and rationale
|
|
153
|
+
4. Update sprint-status.yaml to reflect completion
|
|
154
|
+
5. Note any follow-up items or dependencies for other agents
|
|
@@ -68,3 +68,22 @@ So that [benefit/value].
|
|
|
68
68
|
- Use concrete examples to illustrate requirements
|
|
69
69
|
- Ask clarifying questions when requirements are ambiguous
|
|
70
70
|
- Validate understanding by restating requirements
|
|
71
|
+
|
|
72
|
+
## Context Management
|
|
73
|
+
|
|
74
|
+
When analyzing requirements:
|
|
75
|
+
|
|
76
|
+
1. **Focus on scope** - Load only relevant existing requirements
|
|
77
|
+
2. **Create checkpoints** before lengthy analysis sessions
|
|
78
|
+
3. **Summarize findings** - Keep requirement documents concise
|
|
79
|
+
4. **Reference, don't duplicate** - Link to existing PRD sections
|
|
80
|
+
|
|
81
|
+
## When Complete
|
|
82
|
+
|
|
83
|
+
After completing business analysis:
|
|
84
|
+
|
|
85
|
+
1. Save user stories and requirements to the working directory
|
|
86
|
+
2. Verify all acceptance criteria are testable and specific
|
|
87
|
+
3. Update sprint-status.yaml with story status
|
|
88
|
+
4. Create handoff notes for DEV agent with key context
|
|
89
|
+
5. Note any open questions or dependencies
|
|
@@ -95,3 +95,22 @@ Brownfield development - working with existing, production code. Your approach i
|
|
|
95
95
|
- **Quick fixes**: Sonnet (simple changes)
|
|
96
96
|
- **Refactoring**: Opus (careful changes needed)
|
|
97
97
|
- **Migrations**: Opus (complex, high-risk)
|
|
98
|
+
|
|
99
|
+
## Context Management
|
|
100
|
+
|
|
101
|
+
When investigating existing codebases:
|
|
102
|
+
|
|
103
|
+
1. **Read strategically** - Focus on relevant files, don't load entire codebase
|
|
104
|
+
2. **Create checkpoints** before starting large investigations
|
|
105
|
+
3. **Document findings incrementally** - Don't wait until the end
|
|
106
|
+
4. **Summarize learnings** - Keep notes for context preservation
|
|
107
|
+
|
|
108
|
+
## When Complete
|
|
109
|
+
|
|
110
|
+
After completing maintenance work:
|
|
111
|
+
|
|
112
|
+
1. Document what was changed and why in commit messages
|
|
113
|
+
2. Update any affected documentation
|
|
114
|
+
3. Create fix summary if applicable (for bugs)
|
|
115
|
+
4. Update sprint-status.yaml with new status
|
|
116
|
+
5. Note any remaining technical debt or follow-up items
|
|
@@ -114,3 +114,22 @@ For releases:
|
|
|
114
114
|
- **Feature Adoption**: Usage of key features
|
|
115
115
|
- **Performance**: App load times, crash rates
|
|
116
116
|
- **Satisfaction**: App store ratings, NPS
|
|
117
|
+
|
|
118
|
+
## Context Management
|
|
119
|
+
|
|
120
|
+
When planning and prioritizing:
|
|
121
|
+
|
|
122
|
+
1. **Keep roadmaps focused** - Don't load entire product history
|
|
123
|
+
2. **Create checkpoints** before strategic planning sessions
|
|
124
|
+
3. **Summarize decisions** - Document rationale concisely
|
|
125
|
+
4. **Link to details** - Reference full docs instead of copying
|
|
126
|
+
|
|
127
|
+
## When Complete
|
|
128
|
+
|
|
129
|
+
After completing product management work:
|
|
130
|
+
|
|
131
|
+
1. Update roadmap and epic documentation
|
|
132
|
+
2. Ensure sprint-status.yaml reflects current priorities
|
|
133
|
+
3. Create clear handoff notes for BA and SM agents
|
|
134
|
+
4. Document any scope changes or pivots
|
|
135
|
+
5. Update stakeholder communication as needed
|
|
@@ -112,7 +112,7 @@ Location: path/to/file.dart:42
|
|
|
112
112
|
|
|
113
113
|
## Rules
|
|
114
114
|
|
|
115
|
-
1. **
|
|
115
|
+
1. **Thorough reviews** - Identify all legitimate issues; approve only when code genuinely meets standards
|
|
116
116
|
2. **Be specific** - Vague feedback is useless; explain WHY and suggest HOW to fix
|
|
117
117
|
3. **Prioritize by risk** - Security > Reliability > Correctness > Style
|
|
118
118
|
4. **Check the tests** - Missing tests for critical paths is a blocking issue
|
|
@@ -191,3 +191,22 @@ Before finalizing documentation:
|
|
|
191
191
|
- [ ] Links are valid
|
|
192
192
|
- [ ] Code examples work
|
|
193
193
|
- [ ] Screenshots are current (if applicable)
|
|
194
|
+
|
|
195
|
+
## Context Management
|
|
196
|
+
|
|
197
|
+
When writing documentation:
|
|
198
|
+
|
|
199
|
+
1. **Read source first** - Understand before documenting
|
|
200
|
+
2. **Create checkpoints** before large documentation efforts
|
|
201
|
+
3. **Write incrementally** - Save sections as you complete them
|
|
202
|
+
4. **Keep examples minimal** - Use the simplest code that illustrates the point
|
|
203
|
+
|
|
204
|
+
## When Complete
|
|
205
|
+
|
|
206
|
+
After completing documentation work:
|
|
207
|
+
|
|
208
|
+
1. Save documentation to the appropriate working directory
|
|
209
|
+
2. Verify all links and references are valid
|
|
210
|
+
3. Update any related README files
|
|
211
|
+
4. Update sprint-status.yaml if documenting a story
|
|
212
|
+
5. Note any areas needing future documentation updates
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"test_id": "sim_20251230_100119",
|
|
4
|
+
"task": "Design a secure authentication system with OAuth2 and JWT",
|
|
5
|
+
"agents": [
|
|
6
|
+
"ARCHITECT",
|
|
7
|
+
"DEV",
|
|
8
|
+
"REVIEWER"
|
|
9
|
+
],
|
|
10
|
+
"personas_used": [
|
|
11
|
+
"Enterprise Architect",
|
|
12
|
+
"Cloud Native",
|
|
13
|
+
"Pragmatic Minimalist"
|
|
14
|
+
],
|
|
15
|
+
"total_rounds": 5,
|
|
16
|
+
"termination_reason": "max_rounds",
|
|
17
|
+
"final_agreement_score": 0.4152174154581419,
|
|
18
|
+
"total_tokens": 4674,
|
|
19
|
+
"total_cost_usd": 0.046740000000000004,
|
|
20
|
+
"timestamp": "2025-12-30T10:01:19.418096",
|
|
21
|
+
"duration_seconds": 0.0007348060607910156,
|
|
22
|
+
"rounds": [
|
|
23
|
+
{
|
|
24
|
+
"round_num": 0,
|
|
25
|
+
"new_arguments": 4,
|
|
26
|
+
"challenges_raised": 4,
|
|
27
|
+
"concessions_made": 0,
|
|
28
|
+
"agreement_score": 0.16548581440877563,
|
|
29
|
+
"agreement_delta": 0.16548581440877563,
|
|
30
|
+
"unique_issues": 8,
|
|
31
|
+
"tokens_used": 639,
|
|
32
|
+
"cost_usd": 0.006390000000000001,
|
|
33
|
+
"positions_changed": 1
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"round_num": 1,
|
|
37
|
+
"new_arguments": 5,
|
|
38
|
+
"challenges_raised": 2,
|
|
39
|
+
"concessions_made": 0,
|
|
40
|
+
"agreement_score": 0.2572500710936962,
|
|
41
|
+
"agreement_delta": 0.09176425668492055,
|
|
42
|
+
"unique_issues": 4,
|
|
43
|
+
"tokens_used": 923,
|
|
44
|
+
"cost_usd": 0.00923,
|
|
45
|
+
"positions_changed": 1
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"round_num": 2,
|
|
49
|
+
"new_arguments": 2,
|
|
50
|
+
"challenges_raised": 0,
|
|
51
|
+
"concessions_made": 1,
|
|
52
|
+
"agreement_score": 0.32163266454672484,
|
|
53
|
+
"agreement_delta": 0.06438259345302866,
|
|
54
|
+
"unique_issues": 2,
|
|
55
|
+
"tokens_used": 1405,
|
|
56
|
+
"cost_usd": 0.014050000000000002,
|
|
57
|
+
"positions_changed": 0
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"round_num": 3,
|
|
61
|
+
"new_arguments": 3,
|
|
62
|
+
"challenges_raised": 1,
|
|
63
|
+
"concessions_made": 2,
|
|
64
|
+
"agreement_score": 0.3887506875113108,
|
|
65
|
+
"agreement_delta": 0.06711802296458597,
|
|
66
|
+
"unique_issues": 1,
|
|
67
|
+
"tokens_used": 887,
|
|
68
|
+
"cost_usd": 0.008870000000000001,
|
|
69
|
+
"positions_changed": 0
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"round_num": 4,
|
|
73
|
+
"new_arguments": 2,
|
|
74
|
+
"challenges_raised": 1,
|
|
75
|
+
"concessions_made": 2,
|
|
76
|
+
"agreement_score": 0.4152174154581419,
|
|
77
|
+
"agreement_delta": 0.02646672794683108,
|
|
78
|
+
"unique_issues": 0,
|
|
79
|
+
"tokens_used": 820,
|
|
80
|
+
"cost_usd": 0.0082,
|
|
81
|
+
"positions_changed": 0
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
"arguments_per_round": [
|
|
85
|
+
4,
|
|
86
|
+
5,
|
|
87
|
+
2,
|
|
88
|
+
3,
|
|
89
|
+
2
|
|
90
|
+
],
|
|
91
|
+
"agreement_progression": [
|
|
92
|
+
0.16548581440877563,
|
|
93
|
+
0.2572500710936962,
|
|
94
|
+
0.32163266454672484,
|
|
95
|
+
0.3887506875113108,
|
|
96
|
+
0.4152174154581419
|
|
97
|
+
],
|
|
98
|
+
"marginal_value": [
|
|
99
|
+
15.109324169151417,
|
|
100
|
+
8.578160960833376,
|
|
101
|
+
1.8817266437937983,
|
|
102
|
+
5.2662685790821415,
|
|
103
|
+
3.981301560327209
|
|
104
|
+
]
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"test_id": "sim_20251230_100119",
|
|
108
|
+
"task": "Implement a caching layer for the API with Redis",
|
|
109
|
+
"agents": [
|
|
110
|
+
"DEV",
|
|
111
|
+
"REVIEWER",
|
|
112
|
+
"SECURITY"
|
|
113
|
+
],
|
|
114
|
+
"personas_used": [
|
|
115
|
+
"Enterprise Architect",
|
|
116
|
+
"Cloud Native",
|
|
117
|
+
"Legacy Steward"
|
|
118
|
+
],
|
|
119
|
+
"total_rounds": 5,
|
|
120
|
+
"termination_reason": "max_rounds",
|
|
121
|
+
"final_agreement_score": 0.633611109969572,
|
|
122
|
+
"total_tokens": 5717,
|
|
123
|
+
"total_cost_usd": 0.057170000000000006,
|
|
124
|
+
"timestamp": "2025-12-30T10:01:19.418465",
|
|
125
|
+
"duration_seconds": 0.00034999847412109375,
|
|
126
|
+
"rounds": [
|
|
127
|
+
{
|
|
128
|
+
"round_num": 0,
|
|
129
|
+
"new_arguments": 6,
|
|
130
|
+
"challenges_raised": 4,
|
|
131
|
+
"concessions_made": 0,
|
|
132
|
+
"agreement_score": 0.24779613641768966,
|
|
133
|
+
"agreement_delta": 0.24779613641768966,
|
|
134
|
+
"unique_issues": 8,
|
|
135
|
+
"tokens_used": 896,
|
|
136
|
+
"cost_usd": 0.008960000000000001,
|
|
137
|
+
"positions_changed": 1
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"round_num": 1,
|
|
141
|
+
"new_arguments": 6,
|
|
142
|
+
"challenges_raised": 2,
|
|
143
|
+
"concessions_made": 0,
|
|
144
|
+
"agreement_score": 0.4224856503032449,
|
|
145
|
+
"agreement_delta": 0.17468951388555526,
|
|
146
|
+
"unique_issues": 4,
|
|
147
|
+
"tokens_used": 745,
|
|
148
|
+
"cost_usd": 0.007450000000000001,
|
|
149
|
+
"positions_changed": 1
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"round_num": 2,
|
|
153
|
+
"new_arguments": 2,
|
|
154
|
+
"challenges_raised": 1,
|
|
155
|
+
"concessions_made": 1,
|
|
156
|
+
"agreement_score": 0.49914978983499475,
|
|
157
|
+
"agreement_delta": 0.07666413953174983,
|
|
158
|
+
"unique_issues": 2,
|
|
159
|
+
"tokens_used": 1241,
|
|
160
|
+
"cost_usd": 0.012410000000000001,
|
|
161
|
+
"positions_changed": 0
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"round_num": 3,
|
|
165
|
+
"new_arguments": 3,
|
|
166
|
+
"challenges_raised": 0,
|
|
167
|
+
"concessions_made": 1,
|
|
168
|
+
"agreement_score": 0.5746733088536397,
|
|
169
|
+
"agreement_delta": 0.0755235190186449,
|
|
170
|
+
"unique_issues": 1,
|
|
171
|
+
"tokens_used": 1454,
|
|
172
|
+
"cost_usd": 0.01454,
|
|
173
|
+
"positions_changed": 0
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"round_num": 4,
|
|
177
|
+
"new_arguments": 1,
|
|
178
|
+
"challenges_raised": 0,
|
|
179
|
+
"concessions_made": 3,
|
|
180
|
+
"agreement_score": 0.633611109969572,
|
|
181
|
+
"agreement_delta": 0.05893780111593239,
|
|
182
|
+
"unique_issues": 0,
|
|
183
|
+
"tokens_used": 1381,
|
|
184
|
+
"cost_usd": 0.013810000000000001,
|
|
185
|
+
"positions_changed": 0
|
|
186
|
+
}
|
|
187
|
+
],
|
|
188
|
+
"arguments_per_round": [
|
|
189
|
+
6,
|
|
190
|
+
6,
|
|
191
|
+
2,
|
|
192
|
+
3,
|
|
193
|
+
1
|
|
194
|
+
],
|
|
195
|
+
"agreement_progression": [
|
|
196
|
+
0.24779613641768966,
|
|
197
|
+
0.4224856503032449,
|
|
198
|
+
0.49914978983499475,
|
|
199
|
+
0.5746733088536397,
|
|
200
|
+
0.633611109969572
|
|
201
|
+
],
|
|
202
|
+
"marginal_value": [
|
|
203
|
+
13.926296165376002,
|
|
204
|
+
13.083080723296044,
|
|
205
|
+
3.03516631371273,
|
|
206
|
+
2.582692703016815,
|
|
207
|
+
1.1508892187974828
|
|
208
|
+
]
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"test_id": "sim_20251230_100119",
|
|
212
|
+
"task": "Refactor the monolith into microservices",
|
|
213
|
+
"agents": [
|
|
214
|
+
"ARCHITECT",
|
|
215
|
+
"DEV",
|
|
216
|
+
"MAINTAINER"
|
|
217
|
+
],
|
|
218
|
+
"personas_used": [
|
|
219
|
+
"Enterprise Architect",
|
|
220
|
+
"Cloud Native",
|
|
221
|
+
"Pragmatic Minimalist"
|
|
222
|
+
],
|
|
223
|
+
"total_rounds": 5,
|
|
224
|
+
"termination_reason": "max_rounds",
|
|
225
|
+
"final_agreement_score": 0.6020975857005524,
|
|
226
|
+
"total_tokens": 6145,
|
|
227
|
+
"total_cost_usd": 0.061450000000000005,
|
|
228
|
+
"timestamp": "2025-12-30T10:01:19.418781",
|
|
229
|
+
"duration_seconds": 0.0003027915954589844,
|
|
230
|
+
"rounds": [
|
|
231
|
+
{
|
|
232
|
+
"round_num": 0,
|
|
233
|
+
"new_arguments": 7,
|
|
234
|
+
"challenges_raised": 2,
|
|
235
|
+
"concessions_made": 0,
|
|
236
|
+
"agreement_score": 0.21906235961694137,
|
|
237
|
+
"agreement_delta": 0.21906235961694137,
|
|
238
|
+
"unique_issues": 8,
|
|
239
|
+
"tokens_used": 1410,
|
|
240
|
+
"cost_usd": 0.014100000000000001,
|
|
241
|
+
"positions_changed": 1
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"round_num": 1,
|
|
245
|
+
"new_arguments": 4,
|
|
246
|
+
"challenges_raised": 1,
|
|
247
|
+
"concessions_made": 1,
|
|
248
|
+
"agreement_score": 0.3745279924008167,
|
|
249
|
+
"agreement_delta": 0.15546563278387532,
|
|
250
|
+
"unique_issues": 4,
|
|
251
|
+
"tokens_used": 1452,
|
|
252
|
+
"cost_usd": 0.014520000000000002,
|
|
253
|
+
"positions_changed": 1
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"round_num": 2,
|
|
257
|
+
"new_arguments": 2,
|
|
258
|
+
"challenges_raised": 1,
|
|
259
|
+
"concessions_made": 2,
|
|
260
|
+
"agreement_score": 0.49082614889689385,
|
|
261
|
+
"agreement_delta": 0.11629815649607717,
|
|
262
|
+
"unique_issues": 2,
|
|
263
|
+
"tokens_used": 1190,
|
|
264
|
+
"cost_usd": 0.0119,
|
|
265
|
+
"positions_changed": 0
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"round_num": 3,
|
|
269
|
+
"new_arguments": 2,
|
|
270
|
+
"challenges_raised": 1,
|
|
271
|
+
"concessions_made": 1,
|
|
272
|
+
"agreement_score": 0.5596567470953212,
|
|
273
|
+
"agreement_delta": 0.06883059819842735,
|
|
274
|
+
"unique_issues": 1,
|
|
275
|
+
"tokens_used": 736,
|
|
276
|
+
"cost_usd": 0.00736,
|
|
277
|
+
"positions_changed": 0
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"round_num": 4,
|
|
281
|
+
"new_arguments": 2,
|
|
282
|
+
"challenges_raised": 0,
|
|
283
|
+
"concessions_made": 2,
|
|
284
|
+
"agreement_score": 0.6020975857005524,
|
|
285
|
+
"agreement_delta": 0.04244083860523118,
|
|
286
|
+
"unique_issues": 0,
|
|
287
|
+
"tokens_used": 1357,
|
|
288
|
+
"cost_usd": 0.01357,
|
|
289
|
+
"positions_changed": 0
|
|
290
|
+
}
|
|
291
|
+
],
|
|
292
|
+
"arguments_per_round": [
|
|
293
|
+
7,
|
|
294
|
+
4,
|
|
295
|
+
2,
|
|
296
|
+
2,
|
|
297
|
+
2
|
|
298
|
+
],
|
|
299
|
+
"agreement_progression": [
|
|
300
|
+
0.21906235961694137,
|
|
301
|
+
0.3745279924008167,
|
|
302
|
+
0.49082614889689385,
|
|
303
|
+
0.5596567470953212,
|
|
304
|
+
0.6020975857005524
|
|
305
|
+
],
|
|
306
|
+
"marginal_value": [
|
|
307
|
+
7.9366124795527755,
|
|
308
|
+
4.5142261211010695,
|
|
309
|
+
3.498303836101489,
|
|
310
|
+
5.0112853016090675,
|
|
311
|
+
1.786594241748203
|
|
312
|
+
]
|
|
313
|
+
}
|
|
314
|
+
]
|