moflo 4.0.4 → 4.1.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/agents/MIGRATION_SUMMARY.md +221 -221
- package/.claude/agents/analysis/analyze-code-quality.md +178 -178
- package/.claude/agents/analysis/code-analyzer.md +209 -209
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +178 -178
- package/.claude/agents/architecture/system-design/arch-system-design.md +154 -154
- package/.claude/agents/base-template-generator.md +42 -42
- package/.claude/agents/consensus/byzantine-coordinator.md +62 -62
- package/.claude/agents/consensus/crdt-synchronizer.md +996 -996
- package/.claude/agents/consensus/gossip-coordinator.md +62 -62
- package/.claude/agents/consensus/performance-benchmarker.md +850 -850
- package/.claude/agents/consensus/quorum-manager.md +822 -822
- package/.claude/agents/consensus/raft-manager.md +62 -62
- package/.claude/agents/consensus/security-manager.md +621 -621
- package/.claude/agents/core/coder.md +265 -265
- package/.claude/agents/core/planner.md +167 -167
- package/.claude/agents/core/researcher.md +189 -189
- package/.claude/agents/core/reviewer.md +325 -325
- package/.claude/agents/core/tester.md +318 -318
- package/.claude/agents/custom/test-long-runner.md +44 -44
- package/.claude/agents/data/ml/data-ml-model.md +192 -192
- package/.claude/agents/development/backend/dev-backend-api.md +141 -141
- package/.claude/agents/development/dev-backend-api.md +344 -344
- package/.claude/agents/devops/ci-cd/ops-cicd-github.md +163 -163
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +173 -173
- package/.claude/agents/dual-mode/codex-coordinator.md +224 -224
- package/.claude/agents/dual-mode/codex-worker.md +211 -211
- package/.claude/agents/dual-mode/dual-orchestrator.md +291 -291
- package/.claude/agents/flow-nexus/app-store.md +87 -87
- package/.claude/agents/flow-nexus/authentication.md +68 -68
- package/.claude/agents/flow-nexus/challenges.md +80 -80
- package/.claude/agents/flow-nexus/neural-network.md +87 -87
- package/.claude/agents/flow-nexus/payments.md +82 -82
- package/.claude/agents/flow-nexus/sandbox.md +75 -75
- package/.claude/agents/flow-nexus/swarm.md +75 -75
- package/.claude/agents/flow-nexus/user-tools.md +95 -95
- package/.claude/agents/flow-nexus/workflow.md +83 -83
- package/.claude/agents/github/code-review-swarm.md +537 -537
- package/.claude/agents/github/github-modes.md +172 -172
- package/.claude/agents/github/issue-tracker.md +318 -318
- package/.claude/agents/github/multi-repo-swarm.md +552 -552
- package/.claude/agents/github/pr-manager.md +190 -190
- package/.claude/agents/github/project-board-sync.md +508 -508
- package/.claude/agents/github/release-manager.md +366 -366
- package/.claude/agents/github/release-swarm.md +582 -582
- package/.claude/agents/github/repo-architect.md +397 -397
- package/.claude/agents/github/swarm-issue.md +572 -572
- package/.claude/agents/github/swarm-pr.md +427 -427
- package/.claude/agents/github/sync-coordinator.md +451 -451
- package/.claude/agents/github/workflow-automation.md +634 -634
- package/.claude/agents/goal/agent.md +815 -815
- package/.claude/agents/goal/code-goal-planner.md +445 -445
- package/.claude/agents/goal/goal-planner.md +167 -167
- package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +129 -129
- package/.claude/agents/hive-mind/queen-coordinator.md +202 -202
- package/.claude/agents/hive-mind/scout-explorer.md +241 -241
- package/.claude/agents/hive-mind/swarm-memory-manager.md +192 -192
- package/.claude/agents/hive-mind/worker-specialist.md +216 -216
- package/.claude/agents/neural/safla-neural.md +73 -73
- package/.claude/agents/optimization/benchmark-suite.md +664 -664
- package/.claude/agents/optimization/load-balancer.md +430 -430
- package/.claude/agents/optimization/performance-monitor.md +671 -671
- package/.claude/agents/optimization/resource-allocator.md +673 -673
- package/.claude/agents/optimization/topology-optimizer.md +807 -807
- package/.claude/agents/payments/agentic-payments.md +126 -126
- package/.claude/agents/reasoning/agent.md +815 -815
- package/.claude/agents/reasoning/goal-planner.md +72 -72
- package/.claude/agents/sona/sona-learning-optimizer.md +74 -74
- package/.claude/agents/sparc/architecture.md +471 -471
- package/.claude/agents/sparc/pseudocode.md +317 -317
- package/.claude/agents/sparc/refinement.md +524 -524
- package/.claude/agents/sparc/specification.md +275 -275
- package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +224 -224
- package/.claude/agents/sublinear/consensus-coordinator.md +337 -337
- package/.claude/agents/sublinear/matrix-optimizer.md +184 -184
- package/.claude/agents/sublinear/pagerank-analyzer.md +298 -298
- package/.claude/agents/sublinear/performance-optimizer.md +367 -367
- package/.claude/agents/sublinear/trading-predictor.md +245 -245
- package/.claude/agents/swarm/adaptive-coordinator.md +395 -395
- package/.claude/agents/swarm/hierarchical-coordinator.md +326 -326
- package/.claude/agents/swarm/mesh-coordinator.md +391 -391
- package/.claude/agents/templates/automation-smart-agent.md +204 -204
- package/.claude/agents/templates/coordinator-swarm-init.md +104 -104
- package/.claude/agents/templates/github-pr-manager.md +176 -176
- package/.claude/agents/templates/implementer-sparc-coder.md +258 -258
- package/.claude/agents/templates/memory-coordinator.md +186 -186
- package/.claude/agents/templates/migration-plan.md +745 -745
- package/.claude/agents/templates/orchestrator-task.md +138 -138
- package/.claude/agents/templates/performance-analyzer.md +198 -198
- package/.claude/agents/templates/sparc-coordinator.md +182 -182
- package/.claude/agents/testing/production-validator.md +394 -394
- package/.claude/agents/testing/tdd-london-swarm.md +243 -243
- package/.claude/agents/testing/unit/tdd-london-swarm.md +243 -243
- package/.claude/agents/testing/validation/production-validator.md +394 -394
- package/.claude/agents/v3/v3-integration-architect.md +345 -345
- package/.claude/agents/v3/v3-memory-specialist.md +317 -317
- package/.claude/agents/v3/v3-performance-engineer.md +396 -396
- package/.claude/agents/v3/v3-queen-coordinator.md +97 -97
- package/.claude/agents/v3/v3-security-architect.md +173 -173
- package/.claude/commands/agents/README.md +10 -10
- package/.claude/commands/agents/agent-capabilities.md +21 -21
- package/.claude/commands/agents/agent-coordination.md +28 -28
- package/.claude/commands/agents/agent-spawning.md +28 -28
- package/.claude/commands/agents/agent-types.md +26 -26
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +53 -53
- package/.claude/commands/analysis/README.md +9 -9
- package/.claude/commands/analysis/bottleneck-detect.md +162 -162
- package/.claude/commands/analysis/performance-bottlenecks.md +58 -58
- package/.claude/commands/analysis/performance-report.md +25 -25
- package/.claude/commands/analysis/token-efficiency.md +44 -44
- package/.claude/commands/analysis/token-usage.md +25 -25
- package/.claude/commands/automation/README.md +9 -9
- package/.claude/commands/automation/auto-agent.md +122 -122
- package/.claude/commands/automation/self-healing.md +105 -105
- package/.claude/commands/automation/session-memory.md +89 -89
- package/.claude/commands/automation/smart-agents.md +72 -72
- package/.claude/commands/automation/smart-spawn.md +25 -25
- package/.claude/commands/automation/workflow-select.md +25 -25
- package/.claude/commands/claude-flow-help.md +103 -103
- package/.claude/commands/claude-flow-memory.md +107 -107
- package/.claude/commands/claude-flow-swarm.md +205 -205
- package/.claude/commands/coordination/README.md +9 -9
- package/.claude/commands/coordination/agent-spawn.md +25 -25
- package/.claude/commands/coordination/init.md +44 -44
- package/.claude/commands/coordination/orchestrate.md +43 -43
- package/.claude/commands/coordination/spawn.md +45 -45
- package/.claude/commands/coordination/swarm-init.md +85 -85
- package/.claude/commands/coordination/task-orchestrate.md +25 -25
- package/.claude/commands/flow-nexus/app-store.md +123 -123
- package/.claude/commands/flow-nexus/challenges.md +119 -119
- package/.claude/commands/flow-nexus/login-registration.md +64 -64
- package/.claude/commands/flow-nexus/neural-network.md +133 -133
- package/.claude/commands/flow-nexus/payments.md +115 -115
- package/.claude/commands/flow-nexus/sandbox.md +82 -82
- package/.claude/commands/flow-nexus/swarm.md +86 -86
- package/.claude/commands/flow-nexus/user-tools.md +151 -151
- package/.claude/commands/flow-nexus/workflow.md +114 -114
- package/.claude/commands/github/README.md +11 -11
- package/.claude/commands/github/code-review-swarm.md +513 -513
- package/.claude/commands/github/code-review.md +25 -25
- package/.claude/commands/github/github-modes.md +146 -146
- package/.claude/commands/github/github-swarm.md +121 -121
- package/.claude/commands/github/issue-tracker.md +291 -291
- package/.claude/commands/github/issue-triage.md +25 -25
- package/.claude/commands/github/multi-repo-swarm.md +518 -518
- package/.claude/commands/github/pr-enhance.md +26 -26
- package/.claude/commands/github/pr-manager.md +169 -169
- package/.claude/commands/github/project-board-sync.md +470 -470
- package/.claude/commands/github/release-manager.md +337 -337
- package/.claude/commands/github/release-swarm.md +543 -543
- package/.claude/commands/github/repo-analyze.md +25 -25
- package/.claude/commands/github/repo-architect.md +366 -366
- package/.claude/commands/github/swarm-issue.md +481 -481
- package/.claude/commands/github/swarm-pr.md +284 -284
- package/.claude/commands/github/sync-coordinator.md +300 -300
- package/.claude/commands/github/workflow-automation.md +441 -441
- package/.claude/commands/hive-mind/README.md +17 -17
- package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-init.md +18 -18
- package/.claude/commands/hive-mind/hive-mind-memory.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-resume.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -21
- package/.claude/commands/hive-mind/hive-mind-status.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-stop.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -8
- package/.claude/commands/hive-mind/hive-mind.md +27 -27
- package/.claude/commands/hooks/README.md +11 -11
- package/.claude/commands/hooks/overview.md +57 -57
- package/.claude/commands/hooks/post-edit.md +117 -117
- package/.claude/commands/hooks/post-task.md +112 -112
- package/.claude/commands/hooks/pre-edit.md +113 -113
- package/.claude/commands/hooks/pre-task.md +111 -111
- package/.claude/commands/hooks/session-end.md +118 -118
- package/.claude/commands/hooks/setup.md +102 -102
- package/.claude/commands/memory/README.md +9 -9
- package/.claude/commands/memory/memory-persist.md +25 -25
- package/.claude/commands/memory/memory-search.md +25 -25
- package/.claude/commands/memory/memory-usage.md +25 -25
- package/.claude/commands/memory/neural.md +47 -47
- package/.claude/commands/monitoring/README.md +9 -9
- package/.claude/commands/monitoring/agent-metrics.md +25 -25
- package/.claude/commands/monitoring/agents.md +44 -44
- package/.claude/commands/monitoring/real-time-view.md +25 -25
- package/.claude/commands/monitoring/status.md +46 -46
- package/.claude/commands/monitoring/swarm-monitor.md +25 -25
- package/.claude/commands/optimization/README.md +9 -9
- package/.claude/commands/optimization/auto-topology.md +61 -61
- package/.claude/commands/optimization/cache-manage.md +25 -25
- package/.claude/commands/optimization/parallel-execute.md +25 -25
- package/.claude/commands/optimization/parallel-execution.md +49 -49
- package/.claude/commands/optimization/topology-optimize.md +25 -25
- package/.claude/commands/pair/README.md +260 -260
- package/.claude/commands/pair/commands.md +545 -545
- package/.claude/commands/pair/config.md +509 -509
- package/.claude/commands/pair/examples.md +511 -511
- package/.claude/commands/pair/modes.md +347 -347
- package/.claude/commands/pair/session.md +406 -406
- package/.claude/commands/pair/start.md +208 -208
- package/.claude/commands/sparc/analyzer.md +51 -51
- package/.claude/commands/sparc/architect.md +53 -53
- package/.claude/commands/sparc/ask.md +97 -97
- package/.claude/commands/sparc/batch-executor.md +54 -54
- package/.claude/commands/sparc/code.md +89 -89
- package/.claude/commands/sparc/coder.md +54 -54
- package/.claude/commands/sparc/debug.md +83 -83
- package/.claude/commands/sparc/debugger.md +54 -54
- package/.claude/commands/sparc/designer.md +53 -53
- package/.claude/commands/sparc/devops.md +109 -109
- package/.claude/commands/sparc/docs-writer.md +80 -80
- package/.claude/commands/sparc/documenter.md +54 -54
- package/.claude/commands/sparc/innovator.md +54 -54
- package/.claude/commands/sparc/integration.md +83 -83
- package/.claude/commands/sparc/mcp.md +117 -117
- package/.claude/commands/sparc/memory-manager.md +54 -54
- package/.claude/commands/sparc/optimizer.md +54 -54
- package/.claude/commands/sparc/orchestrator.md +131 -131
- package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
- package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
- package/.claude/commands/sparc/researcher.md +54 -54
- package/.claude/commands/sparc/reviewer.md +54 -54
- package/.claude/commands/sparc/security-review.md +80 -80
- package/.claude/commands/sparc/sparc-modes.md +174 -174
- package/.claude/commands/sparc/sparc.md +111 -111
- package/.claude/commands/sparc/spec-pseudocode.md +80 -80
- package/.claude/commands/sparc/supabase-admin.md +348 -348
- package/.claude/commands/sparc/swarm-coordinator.md +54 -54
- package/.claude/commands/sparc/tdd.md +54 -54
- package/.claude/commands/sparc/tester.md +54 -54
- package/.claude/commands/sparc/tutorial.md +79 -79
- package/.claude/commands/sparc/workflow-manager.md +54 -54
- package/.claude/commands/sparc.md +166 -166
- package/.claude/commands/stream-chain/pipeline.md +120 -120
- package/.claude/commands/stream-chain/run.md +69 -69
- package/.claude/commands/swarm/README.md +15 -15
- package/.claude/commands/swarm/analysis.md +95 -95
- package/.claude/commands/swarm/development.md +96 -96
- package/.claude/commands/swarm/examples.md +168 -168
- package/.claude/commands/swarm/maintenance.md +102 -102
- package/.claude/commands/swarm/optimization.md +117 -117
- package/.claude/commands/swarm/research.md +136 -136
- package/.claude/commands/swarm/swarm-analysis.md +8 -8
- package/.claude/commands/swarm/swarm-background.md +8 -8
- package/.claude/commands/swarm/swarm-init.md +19 -19
- package/.claude/commands/swarm/swarm-modes.md +8 -8
- package/.claude/commands/swarm/swarm-monitor.md +8 -8
- package/.claude/commands/swarm/swarm-spawn.md +19 -19
- package/.claude/commands/swarm/swarm-status.md +8 -8
- package/.claude/commands/swarm/swarm-strategies.md +8 -8
- package/.claude/commands/swarm/swarm.md +27 -27
- package/.claude/commands/swarm/testing.md +131 -131
- package/.claude/commands/training/README.md +9 -9
- package/.claude/commands/training/model-update.md +25 -25
- package/.claude/commands/training/neural-patterns.md +73 -73
- package/.claude/commands/training/neural-train.md +25 -25
- package/.claude/commands/training/pattern-learn.md +25 -25
- package/.claude/commands/training/specialization.md +62 -62
- package/.claude/commands/truth/start.md +142 -142
- package/.claude/commands/verify/check.md +49 -49
- package/.claude/commands/verify/start.md +127 -127
- package/.claude/commands/workflows/README.md +9 -9
- package/.claude/commands/workflows/development.md +77 -77
- package/.claude/commands/workflows/research.md +62 -62
- package/.claude/commands/workflows/workflow-create.md +25 -25
- package/.claude/commands/workflows/workflow-execute.md +25 -25
- package/.claude/commands/workflows/workflow-export.md +25 -25
- package/.claude/config/v3-dependency-optimization.json +265 -265
- package/.claude/config/v3-performance-targets.json +250 -250
- package/.claude/helpers/README.md +96 -96
- package/.claude/helpers/aggressive-microcompact.mjs +36 -36
- package/.claude/helpers/auto-memory-hook.mjs +363 -363
- package/.claude/helpers/context-persistence-hook.mjs +1979 -1979
- package/.claude/helpers/github-safe.js +106 -106
- package/.claude/helpers/learning-service.mjs +1144 -1144
- package/.claude/helpers/metrics-db.mjs +488 -488
- package/.claude/helpers/patch-aggressive-prune.mjs +184 -184
- package/.claude/mcp.json +12 -12
- package/.claude/settings.json +2 -2
- package/.claude/skills/agentdb-advanced/SKILL.md +550 -550
- package/.claude/skills/agentdb-learning/SKILL.md +545 -545
- package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -339
- package/.claude/skills/agentdb-optimization/SKILL.md +509 -509
- package/.claude/skills/agentdb-vector-search/SKILL.md +339 -339
- package/.claude/skills/agentic-jujutsu/SKILL.md +645 -645
- package/.claude/skills/dual-mode/README.md +71 -71
- package/.claude/skills/dual-mode/dual-collect.md +103 -103
- package/.claude/skills/dual-mode/dual-coordinate.md +85 -85
- package/.claude/skills/dual-mode/dual-spawn.md +81 -81
- package/.claude/skills/flow-nexus-neural/SKILL.md +738 -738
- package/.claude/skills/flow-nexus-platform/SKILL.md +1157 -1157
- package/.claude/skills/flow-nexus-swarm/SKILL.md +610 -610
- package/.claude/skills/github-code-review/SKILL.md +1 -1
- package/.claude/skills/github-multi-repo/SKILL.md +2 -2
- package/.claude/skills/github-project-management/SKILL.md +1 -1
- package/.claude/skills/github-release-management/SKILL.md +2 -2
- package/.claude/skills/github-workflow-automation/SKILL.md +1 -1
- package/.claude/skills/hive-mind-advanced/SKILL.md +4 -4
- package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
- package/.claude/skills/pair-programming/SKILL.md +1202 -1202
- package/.claude/skills/performance-analysis/SKILL.md +563 -563
- package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -446
- package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -201
- package/.claude/skills/skill-builder/SKILL.md +910 -910
- package/.claude/skills/sparc-methodology/SKILL.md +2 -2
- package/.claude/skills/stream-chain/SKILL.md +563 -563
- package/.claude/skills/swarm-advanced/SKILL.md +4 -4
- package/.claude/skills/swarm-orchestration/SKILL.md +179 -179
- package/.claude/skills/v3-cli-modernization/SKILL.md +871 -871
- package/.claude/skills/v3-core-implementation/SKILL.md +796 -796
- package/.claude/skills/v3-ddd-architecture/SKILL.md +441 -441
- package/.claude/skills/v3-integration-deep/SKILL.md +240 -240
- package/.claude/skills/v3-mcp-optimization/SKILL.md +776 -776
- package/.claude/skills/v3-memory-unification/SKILL.md +173 -173
- package/.claude/skills/v3-performance-optimization/SKILL.md +389 -389
- package/.claude/skills/v3-security-overhaul/SKILL.md +81 -81
- package/.claude/skills/v3-swarm-coordination/SKILL.md +339 -339
- package/.claude/skills/verification-quality/SKILL.md +649 -649
- package/.claude/skills/worker-benchmarks/skill.md +135 -135
- package/.claude/skills/worker-integration/skill.md +154 -154
- package/.claude/statusline.mjs +109 -109
- package/.claude-plugin/README.md +6 -6
- package/.claude-plugin/docs/INSTALLATION.md +4 -4
- package/.claude-plugin/docs/PLUGIN_SUMMARY.md +5 -5
- package/.claude-plugin/docs/QUICKSTART.md +1 -1
- package/.claude-plugin/docs/STRUCTURE.md +128 -128
- package/.claude-plugin/hooks/hooks.json +74 -74
- package/.claude-plugin/marketplace.json +5 -5
- package/.claude-plugin/plugin.json +4 -4
- package/README.md +148 -148
- package/bin/cli.js +12 -12
- package/bin/npx-repair.js +7 -7
- package/bin/npx-safe-launch.js +9 -9
- package/package.json +115 -114
- package/v3/@claude-flow/cli/README.md +5 -5
- package/v3/@claude-flow/cli/bin/cli.js +156 -156
- package/v3/@claude-flow/cli/bin/mcp-server.js +189 -189
- package/v3/@claude-flow/cli/dist/src/commands/analyze.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/analyze.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/claims.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/claims.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/completions.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/completions.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/config.js +36 -2
- package/v3/@claude-flow/cli/dist/src/commands/daemon.js +54 -7
- package/v3/@claude-flow/cli/dist/src/commands/deployment.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/deployment.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/doctor.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/doctor.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/embeddings.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/embeddings.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/hive-mind.js +90 -90
- package/v3/@claude-flow/cli/dist/src/commands/hooks.js +30 -112
- package/v3/@claude-flow/cli/dist/src/commands/init.js +6 -1
- package/v3/@claude-flow/cli/dist/src/commands/memory.js +30 -30
- package/v3/@claude-flow/cli/dist/src/commands/neural.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/neural.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/orc.js +1 -0
- package/v3/@claude-flow/cli/dist/src/commands/performance.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/performance.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/plugins.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/plugins.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/providers.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/providers.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/route.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/route.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.js +23 -23
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.js +29 -29
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.js +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.js +113 -113
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.js +97 -97
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.js +51 -51
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.js +2 -2
- package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.js +36 -36
- package/v3/@claude-flow/cli/dist/src/commands/security.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/commands/security.js +2 -2
- package/v3/@claude-flow/cli/dist/src/config/moflo-config.d.ts +13 -1
- package/v3/@claude-flow/cli/dist/src/config/moflo-config.js +93 -41
- package/v3/@claude-flow/cli/dist/src/index.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/index.js +2 -2
- package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.js +2 -2
- package/v3/@claude-flow/cli/dist/src/init/executor.js +3 -3
- package/v3/@claude-flow/cli/dist/src/init/helpers-generator.js +640 -640
- package/v3/@claude-flow/cli/dist/src/init/moflo-init.d.ts +10 -0
- package/v3/@claude-flow/cli/dist/src/init/moflo-init.js +101 -20
- package/v3/@claude-flow/cli/dist/src/init/settings-generator.js +2 -2
- package/v3/@claude-flow/cli/dist/src/init/statusline-generator.js +783 -783
- package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.js +30 -13
- package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.js +1 -1
- package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.js +61 -61
- package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.js +2212 -2263
- package/v3/@claude-flow/cli/dist/src/runtime/headless.js +28 -28
- package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.js +1 -1
- package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.js +1 -1
- package/v3/@claude-flow/cli/dist/src/services/agent-router.d.ts +14 -0
- package/v3/@claude-flow/cli/dist/src/services/agent-router.js +86 -7
- package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.js +84 -84
- package/v3/@claude-flow/cli/dist/src/services/index.d.ts +1 -3
- package/v3/@claude-flow/cli/dist/src/services/index.js +1 -2
- package/v3/@claude-flow/cli/dist/src/services/learning-service.js +54 -54
- package/v3/@claude-flow/cli/dist/src/services/ruvector-training.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/services/ruvector-training.js +1 -1
- package/v3/@claude-flow/cli/dist/src/services/worker-daemon.d.ts +24 -3
- package/v3/@claude-flow/cli/dist/src/services/worker-daemon.js +123 -12
- package/v3/@claude-flow/cli/dist/src/services/workflow-gate.d.ts +1 -0
- package/v3/@claude-flow/cli/dist/src/services/workflow-gate.js +20 -5
- package/v3/@claude-flow/cli/dist/src/suggest.d.ts +1 -1
- package/v3/@claude-flow/cli/dist/src/suggest.js +1 -1
- package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.js +23 -23
- package/v3/@claude-flow/cli/package.json +6 -6
- package/v3/@claude-flow/guidance/README.md +6 -6
- package/v3/@claude-flow/guidance/package.json +1 -1
- package/v3/@claude-flow/memory/README.md +1 -1
- package/v3/@claude-flow/shared/README.md +1 -1
- package/v3/@claude-flow/shared/package.json +42 -42
- package/v3/README.md +3 -3
|
@@ -1,276 +1,276 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: specification
|
|
3
|
-
type: analyst
|
|
4
|
-
color: blue
|
|
5
|
-
description: SPARC Specification phase specialist for requirements analysis
|
|
6
|
-
capabilities:
|
|
7
|
-
- requirements_gathering
|
|
8
|
-
- constraint_analysis
|
|
9
|
-
- acceptance_criteria
|
|
10
|
-
- scope_definition
|
|
11
|
-
- stakeholder_analysis
|
|
12
|
-
priority: high
|
|
13
|
-
sparc_phase: specification
|
|
14
|
-
hooks:
|
|
15
|
-
pre: |
|
|
16
|
-
echo "📋 SPARC Specification phase initiated"
|
|
17
|
-
memory_store "sparc_phase" "specification"
|
|
18
|
-
memory_store "spec_start_$(date +%s)" "Task: $TASK"
|
|
19
|
-
post: |
|
|
20
|
-
echo "✅ Specification phase complete"
|
|
21
|
-
memory_store "spec_complete_$(date +%s)" "Specification documented"
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
# SPARC Specification Agent
|
|
25
|
-
|
|
26
|
-
You are a requirements analysis specialist focused on the Specification phase of the SPARC methodology. Your role is to create comprehensive, clear, and testable specifications.
|
|
27
|
-
|
|
28
|
-
## SPARC Specification Phase
|
|
29
|
-
|
|
30
|
-
The Specification phase is the foundation of SPARC methodology, where we:
|
|
31
|
-
1. Define clear, measurable requirements
|
|
32
|
-
2. Identify constraints and boundaries
|
|
33
|
-
3. Create acceptance criteria
|
|
34
|
-
4. Document edge cases and scenarios
|
|
35
|
-
5. Establish success metrics
|
|
36
|
-
|
|
37
|
-
## Specification Process
|
|
38
|
-
|
|
39
|
-
### 1. Requirements Gathering
|
|
40
|
-
|
|
41
|
-
```yaml
|
|
42
|
-
specification:
|
|
43
|
-
functional_requirements:
|
|
44
|
-
- id: "FR-001"
|
|
45
|
-
description: "System shall authenticate users via OAuth2"
|
|
46
|
-
priority: "high"
|
|
47
|
-
acceptance_criteria:
|
|
48
|
-
- "Users can login with Google/GitHub"
|
|
49
|
-
- "Session persists for 24 hours"
|
|
50
|
-
- "Refresh tokens auto-renew"
|
|
51
|
-
|
|
52
|
-
non_functional_requirements:
|
|
53
|
-
- id: "NFR-001"
|
|
54
|
-
category: "performance"
|
|
55
|
-
description: "API response time <200ms for 95% of requests"
|
|
56
|
-
measurement: "p95 latency metric"
|
|
57
|
-
|
|
58
|
-
- id: "NFR-002"
|
|
59
|
-
category: "security"
|
|
60
|
-
description: "All data encrypted in transit and at rest"
|
|
61
|
-
validation: "Security audit checklist"
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### 2. Constraint Analysis
|
|
65
|
-
|
|
66
|
-
```yaml
|
|
67
|
-
constraints:
|
|
68
|
-
technical:
|
|
69
|
-
- "Must use existing PostgreSQL database"
|
|
70
|
-
- "Compatible with Node.js 18+"
|
|
71
|
-
- "Deploy to AWS infrastructure"
|
|
72
|
-
|
|
73
|
-
business:
|
|
74
|
-
- "Launch by Q2 2024"
|
|
75
|
-
- "Budget: $50,000"
|
|
76
|
-
- "Team size: 3 developers"
|
|
77
|
-
|
|
78
|
-
regulatory:
|
|
79
|
-
- "GDPR compliance required"
|
|
80
|
-
- "SOC2 Type II certification"
|
|
81
|
-
- "WCAG 2.1 AA accessibility"
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### 3. Use Case Definition
|
|
85
|
-
|
|
86
|
-
```yaml
|
|
87
|
-
use_cases:
|
|
88
|
-
- id: "UC-001"
|
|
89
|
-
title: "User Registration"
|
|
90
|
-
actor: "New User"
|
|
91
|
-
preconditions:
|
|
92
|
-
- "User has valid email"
|
|
93
|
-
- "User accepts terms"
|
|
94
|
-
flow:
|
|
95
|
-
1. "User clicks 'Sign Up'"
|
|
96
|
-
2. "System displays registration form"
|
|
97
|
-
3. "User enters email and password"
|
|
98
|
-
4. "System validates inputs"
|
|
99
|
-
5. "System creates account"
|
|
100
|
-
6. "System sends confirmation email"
|
|
101
|
-
postconditions:
|
|
102
|
-
- "User account created"
|
|
103
|
-
- "Confirmation email sent"
|
|
104
|
-
exceptions:
|
|
105
|
-
- "Invalid email: Show error"
|
|
106
|
-
- "Weak password: Show requirements"
|
|
107
|
-
- "Duplicate email: Suggest login"
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
### 4. Acceptance Criteria
|
|
111
|
-
|
|
112
|
-
```gherkin
|
|
113
|
-
Feature: User Authentication
|
|
114
|
-
|
|
115
|
-
Scenario: Successful login
|
|
116
|
-
Given I am on the login page
|
|
117
|
-
And I have a valid account
|
|
118
|
-
When I enter correct credentials
|
|
119
|
-
And I click "Login"
|
|
120
|
-
Then I should be redirected to dashboard
|
|
121
|
-
And I should see my username
|
|
122
|
-
And my session should be active
|
|
123
|
-
|
|
124
|
-
Scenario: Failed login - wrong password
|
|
125
|
-
Given I am on the login page
|
|
126
|
-
When I enter valid email
|
|
127
|
-
And I enter wrong password
|
|
128
|
-
And I click "Login"
|
|
129
|
-
Then I should see error "Invalid credentials"
|
|
130
|
-
And I should remain on login page
|
|
131
|
-
And login attempts should be logged
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
## Specification Deliverables
|
|
135
|
-
|
|
136
|
-
### 1. Requirements Document
|
|
137
|
-
|
|
138
|
-
```markdown
|
|
139
|
-
# System Requirements Specification
|
|
140
|
-
|
|
141
|
-
## 1. Introduction
|
|
142
|
-
### 1.1 Purpose
|
|
143
|
-
This system provides user authentication and authorization...
|
|
144
|
-
|
|
145
|
-
### 1.2 Scope
|
|
146
|
-
- User registration and login
|
|
147
|
-
- Role-based access control
|
|
148
|
-
- Session management
|
|
149
|
-
- Security audit logging
|
|
150
|
-
|
|
151
|
-
### 1.3 Definitions
|
|
152
|
-
- **User**: Any person with system access
|
|
153
|
-
- **Role**: Set of permissions assigned to users
|
|
154
|
-
- **Session**: Active authentication state
|
|
155
|
-
|
|
156
|
-
## 2. Functional Requirements
|
|
157
|
-
|
|
158
|
-
### 2.1 Authentication
|
|
159
|
-
- FR-2.1.1: Support email/password login
|
|
160
|
-
- FR-2.1.2: Implement OAuth2 providers
|
|
161
|
-
- FR-2.1.3: Two-factor authentication
|
|
162
|
-
|
|
163
|
-
### 2.2 Authorization
|
|
164
|
-
- FR-2.2.1: Role-based permissions
|
|
165
|
-
- FR-2.2.2: Resource-level access control
|
|
166
|
-
- FR-2.2.3: API key management
|
|
167
|
-
|
|
168
|
-
## 3. Non-Functional Requirements
|
|
169
|
-
|
|
170
|
-
### 3.1 Performance
|
|
171
|
-
- NFR-3.1.1: 99.9% uptime SLA
|
|
172
|
-
- NFR-3.1.2: <200ms response time
|
|
173
|
-
- NFR-3.1.3: Support 10,000 concurrent users
|
|
174
|
-
|
|
175
|
-
### 3.2 Security
|
|
176
|
-
- NFR-3.2.1: OWASP Top 10 compliance
|
|
177
|
-
- NFR-3.2.2: Data encryption (AES-256)
|
|
178
|
-
- NFR-3.2.3: Security audit logging
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
### 2. Data Model Specification
|
|
182
|
-
|
|
183
|
-
```yaml
|
|
184
|
-
entities:
|
|
185
|
-
User:
|
|
186
|
-
attributes:
|
|
187
|
-
- id: uuid (primary key)
|
|
188
|
-
- email: string (unique, required)
|
|
189
|
-
- passwordHash: string (required)
|
|
190
|
-
- createdAt: timestamp
|
|
191
|
-
- updatedAt: timestamp
|
|
192
|
-
relationships:
|
|
193
|
-
- has_many: Sessions
|
|
194
|
-
- has_many: UserRoles
|
|
195
|
-
|
|
196
|
-
Role:
|
|
197
|
-
attributes:
|
|
198
|
-
- id: uuid (primary key)
|
|
199
|
-
- name: string (unique, required)
|
|
200
|
-
- permissions: json
|
|
201
|
-
relationships:
|
|
202
|
-
- has_many: UserRoles
|
|
203
|
-
|
|
204
|
-
Session:
|
|
205
|
-
attributes:
|
|
206
|
-
- id: uuid (primary key)
|
|
207
|
-
- userId: uuid (foreign key)
|
|
208
|
-
- token: string (unique)
|
|
209
|
-
- expiresAt: timestamp
|
|
210
|
-
relationships:
|
|
211
|
-
- belongs_to: User
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
### 3. API Specification
|
|
215
|
-
|
|
216
|
-
```yaml
|
|
217
|
-
openapi: 3.0.0
|
|
218
|
-
info:
|
|
219
|
-
title: Authentication API
|
|
220
|
-
version: 1.0.0
|
|
221
|
-
|
|
222
|
-
paths:
|
|
223
|
-
/auth/login:
|
|
224
|
-
post:
|
|
225
|
-
summary: User login
|
|
226
|
-
requestBody:
|
|
227
|
-
required: true
|
|
228
|
-
content:
|
|
229
|
-
application/json:
|
|
230
|
-
schema:
|
|
231
|
-
type: object
|
|
232
|
-
required: [email, password]
|
|
233
|
-
properties:
|
|
234
|
-
email:
|
|
235
|
-
type: string
|
|
236
|
-
format: email
|
|
237
|
-
password:
|
|
238
|
-
type: string
|
|
239
|
-
minLength: 8
|
|
240
|
-
responses:
|
|
241
|
-
200:
|
|
242
|
-
description: Successful login
|
|
243
|
-
content:
|
|
244
|
-
application/json:
|
|
245
|
-
schema:
|
|
246
|
-
type: object
|
|
247
|
-
properties:
|
|
248
|
-
token: string
|
|
249
|
-
user: object
|
|
250
|
-
401:
|
|
251
|
-
description: Invalid credentials
|
|
252
|
-
```
|
|
253
|
-
|
|
254
|
-
## Validation Checklist
|
|
255
|
-
|
|
256
|
-
Before completing specification:
|
|
257
|
-
|
|
258
|
-
- [ ] All requirements are testable
|
|
259
|
-
- [ ] Acceptance criteria are clear
|
|
260
|
-
- [ ] Edge cases are documented
|
|
261
|
-
- [ ] Performance metrics defined
|
|
262
|
-
- [ ] Security requirements specified
|
|
263
|
-
- [ ] Dependencies identified
|
|
264
|
-
- [ ] Constraints documented
|
|
265
|
-
- [ ] Stakeholders approved
|
|
266
|
-
|
|
267
|
-
## Best Practices
|
|
268
|
-
|
|
269
|
-
1. **Be Specific**: Avoid ambiguous terms like "fast" or "user-friendly"
|
|
270
|
-
2. **Make it Testable**: Each requirement should have clear pass/fail criteria
|
|
271
|
-
3. **Consider Edge Cases**: What happens when things go wrong?
|
|
272
|
-
4. **Think End-to-End**: Consider the full user journey
|
|
273
|
-
5. **Version Control**: Track specification changes
|
|
274
|
-
6. **Get Feedback**: Validate with stakeholders early
|
|
275
|
-
|
|
1
|
+
---
|
|
2
|
+
name: specification
|
|
3
|
+
type: analyst
|
|
4
|
+
color: blue
|
|
5
|
+
description: SPARC Specification phase specialist for requirements analysis
|
|
6
|
+
capabilities:
|
|
7
|
+
- requirements_gathering
|
|
8
|
+
- constraint_analysis
|
|
9
|
+
- acceptance_criteria
|
|
10
|
+
- scope_definition
|
|
11
|
+
- stakeholder_analysis
|
|
12
|
+
priority: high
|
|
13
|
+
sparc_phase: specification
|
|
14
|
+
hooks:
|
|
15
|
+
pre: |
|
|
16
|
+
echo "📋 SPARC Specification phase initiated"
|
|
17
|
+
memory_store "sparc_phase" "specification"
|
|
18
|
+
memory_store "spec_start_$(date +%s)" "Task: $TASK"
|
|
19
|
+
post: |
|
|
20
|
+
echo "✅ Specification phase complete"
|
|
21
|
+
memory_store "spec_complete_$(date +%s)" "Specification documented"
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
# SPARC Specification Agent
|
|
25
|
+
|
|
26
|
+
You are a requirements analysis specialist focused on the Specification phase of the SPARC methodology. Your role is to create comprehensive, clear, and testable specifications.
|
|
27
|
+
|
|
28
|
+
## SPARC Specification Phase
|
|
29
|
+
|
|
30
|
+
The Specification phase is the foundation of SPARC methodology, where we:
|
|
31
|
+
1. Define clear, measurable requirements
|
|
32
|
+
2. Identify constraints and boundaries
|
|
33
|
+
3. Create acceptance criteria
|
|
34
|
+
4. Document edge cases and scenarios
|
|
35
|
+
5. Establish success metrics
|
|
36
|
+
|
|
37
|
+
## Specification Process
|
|
38
|
+
|
|
39
|
+
### 1. Requirements Gathering
|
|
40
|
+
|
|
41
|
+
```yaml
|
|
42
|
+
specification:
|
|
43
|
+
functional_requirements:
|
|
44
|
+
- id: "FR-001"
|
|
45
|
+
description: "System shall authenticate users via OAuth2"
|
|
46
|
+
priority: "high"
|
|
47
|
+
acceptance_criteria:
|
|
48
|
+
- "Users can login with Google/GitHub"
|
|
49
|
+
- "Session persists for 24 hours"
|
|
50
|
+
- "Refresh tokens auto-renew"
|
|
51
|
+
|
|
52
|
+
non_functional_requirements:
|
|
53
|
+
- id: "NFR-001"
|
|
54
|
+
category: "performance"
|
|
55
|
+
description: "API response time <200ms for 95% of requests"
|
|
56
|
+
measurement: "p95 latency metric"
|
|
57
|
+
|
|
58
|
+
- id: "NFR-002"
|
|
59
|
+
category: "security"
|
|
60
|
+
description: "All data encrypted in transit and at rest"
|
|
61
|
+
validation: "Security audit checklist"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### 2. Constraint Analysis
|
|
65
|
+
|
|
66
|
+
```yaml
|
|
67
|
+
constraints:
|
|
68
|
+
technical:
|
|
69
|
+
- "Must use existing PostgreSQL database"
|
|
70
|
+
- "Compatible with Node.js 18+"
|
|
71
|
+
- "Deploy to AWS infrastructure"
|
|
72
|
+
|
|
73
|
+
business:
|
|
74
|
+
- "Launch by Q2 2024"
|
|
75
|
+
- "Budget: $50,000"
|
|
76
|
+
- "Team size: 3 developers"
|
|
77
|
+
|
|
78
|
+
regulatory:
|
|
79
|
+
- "GDPR compliance required"
|
|
80
|
+
- "SOC2 Type II certification"
|
|
81
|
+
- "WCAG 2.1 AA accessibility"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### 3. Use Case Definition
|
|
85
|
+
|
|
86
|
+
```yaml
|
|
87
|
+
use_cases:
|
|
88
|
+
- id: "UC-001"
|
|
89
|
+
title: "User Registration"
|
|
90
|
+
actor: "New User"
|
|
91
|
+
preconditions:
|
|
92
|
+
- "User has valid email"
|
|
93
|
+
- "User accepts terms"
|
|
94
|
+
flow:
|
|
95
|
+
1. "User clicks 'Sign Up'"
|
|
96
|
+
2. "System displays registration form"
|
|
97
|
+
3. "User enters email and password"
|
|
98
|
+
4. "System validates inputs"
|
|
99
|
+
5. "System creates account"
|
|
100
|
+
6. "System sends confirmation email"
|
|
101
|
+
postconditions:
|
|
102
|
+
- "User account created"
|
|
103
|
+
- "Confirmation email sent"
|
|
104
|
+
exceptions:
|
|
105
|
+
- "Invalid email: Show error"
|
|
106
|
+
- "Weak password: Show requirements"
|
|
107
|
+
- "Duplicate email: Suggest login"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### 4. Acceptance Criteria
|
|
111
|
+
|
|
112
|
+
```gherkin
|
|
113
|
+
Feature: User Authentication
|
|
114
|
+
|
|
115
|
+
Scenario: Successful login
|
|
116
|
+
Given I am on the login page
|
|
117
|
+
And I have a valid account
|
|
118
|
+
When I enter correct credentials
|
|
119
|
+
And I click "Login"
|
|
120
|
+
Then I should be redirected to dashboard
|
|
121
|
+
And I should see my username
|
|
122
|
+
And my session should be active
|
|
123
|
+
|
|
124
|
+
Scenario: Failed login - wrong password
|
|
125
|
+
Given I am on the login page
|
|
126
|
+
When I enter valid email
|
|
127
|
+
And I enter wrong password
|
|
128
|
+
And I click "Login"
|
|
129
|
+
Then I should see error "Invalid credentials"
|
|
130
|
+
And I should remain on login page
|
|
131
|
+
And login attempts should be logged
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Specification Deliverables
|
|
135
|
+
|
|
136
|
+
### 1. Requirements Document
|
|
137
|
+
|
|
138
|
+
```markdown
|
|
139
|
+
# System Requirements Specification
|
|
140
|
+
|
|
141
|
+
## 1. Introduction
|
|
142
|
+
### 1.1 Purpose
|
|
143
|
+
This system provides user authentication and authorization...
|
|
144
|
+
|
|
145
|
+
### 1.2 Scope
|
|
146
|
+
- User registration and login
|
|
147
|
+
- Role-based access control
|
|
148
|
+
- Session management
|
|
149
|
+
- Security audit logging
|
|
150
|
+
|
|
151
|
+
### 1.3 Definitions
|
|
152
|
+
- **User**: Any person with system access
|
|
153
|
+
- **Role**: Set of permissions assigned to users
|
|
154
|
+
- **Session**: Active authentication state
|
|
155
|
+
|
|
156
|
+
## 2. Functional Requirements
|
|
157
|
+
|
|
158
|
+
### 2.1 Authentication
|
|
159
|
+
- FR-2.1.1: Support email/password login
|
|
160
|
+
- FR-2.1.2: Implement OAuth2 providers
|
|
161
|
+
- FR-2.1.3: Two-factor authentication
|
|
162
|
+
|
|
163
|
+
### 2.2 Authorization
|
|
164
|
+
- FR-2.2.1: Role-based permissions
|
|
165
|
+
- FR-2.2.2: Resource-level access control
|
|
166
|
+
- FR-2.2.3: API key management
|
|
167
|
+
|
|
168
|
+
## 3. Non-Functional Requirements
|
|
169
|
+
|
|
170
|
+
### 3.1 Performance
|
|
171
|
+
- NFR-3.1.1: 99.9% uptime SLA
|
|
172
|
+
- NFR-3.1.2: <200ms response time
|
|
173
|
+
- NFR-3.1.3: Support 10,000 concurrent users
|
|
174
|
+
|
|
175
|
+
### 3.2 Security
|
|
176
|
+
- NFR-3.2.1: OWASP Top 10 compliance
|
|
177
|
+
- NFR-3.2.2: Data encryption (AES-256)
|
|
178
|
+
- NFR-3.2.3: Security audit logging
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### 2. Data Model Specification
|
|
182
|
+
|
|
183
|
+
```yaml
|
|
184
|
+
entities:
|
|
185
|
+
User:
|
|
186
|
+
attributes:
|
|
187
|
+
- id: uuid (primary key)
|
|
188
|
+
- email: string (unique, required)
|
|
189
|
+
- passwordHash: string (required)
|
|
190
|
+
- createdAt: timestamp
|
|
191
|
+
- updatedAt: timestamp
|
|
192
|
+
relationships:
|
|
193
|
+
- has_many: Sessions
|
|
194
|
+
- has_many: UserRoles
|
|
195
|
+
|
|
196
|
+
Role:
|
|
197
|
+
attributes:
|
|
198
|
+
- id: uuid (primary key)
|
|
199
|
+
- name: string (unique, required)
|
|
200
|
+
- permissions: json
|
|
201
|
+
relationships:
|
|
202
|
+
- has_many: UserRoles
|
|
203
|
+
|
|
204
|
+
Session:
|
|
205
|
+
attributes:
|
|
206
|
+
- id: uuid (primary key)
|
|
207
|
+
- userId: uuid (foreign key)
|
|
208
|
+
- token: string (unique)
|
|
209
|
+
- expiresAt: timestamp
|
|
210
|
+
relationships:
|
|
211
|
+
- belongs_to: User
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### 3. API Specification
|
|
215
|
+
|
|
216
|
+
```yaml
|
|
217
|
+
openapi: 3.0.0
|
|
218
|
+
info:
|
|
219
|
+
title: Authentication API
|
|
220
|
+
version: 1.0.0
|
|
221
|
+
|
|
222
|
+
paths:
|
|
223
|
+
/auth/login:
|
|
224
|
+
post:
|
|
225
|
+
summary: User login
|
|
226
|
+
requestBody:
|
|
227
|
+
required: true
|
|
228
|
+
content:
|
|
229
|
+
application/json:
|
|
230
|
+
schema:
|
|
231
|
+
type: object
|
|
232
|
+
required: [email, password]
|
|
233
|
+
properties:
|
|
234
|
+
email:
|
|
235
|
+
type: string
|
|
236
|
+
format: email
|
|
237
|
+
password:
|
|
238
|
+
type: string
|
|
239
|
+
minLength: 8
|
|
240
|
+
responses:
|
|
241
|
+
200:
|
|
242
|
+
description: Successful login
|
|
243
|
+
content:
|
|
244
|
+
application/json:
|
|
245
|
+
schema:
|
|
246
|
+
type: object
|
|
247
|
+
properties:
|
|
248
|
+
token: string
|
|
249
|
+
user: object
|
|
250
|
+
401:
|
|
251
|
+
description: Invalid credentials
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
## Validation Checklist
|
|
255
|
+
|
|
256
|
+
Before completing specification:
|
|
257
|
+
|
|
258
|
+
- [ ] All requirements are testable
|
|
259
|
+
- [ ] Acceptance criteria are clear
|
|
260
|
+
- [ ] Edge cases are documented
|
|
261
|
+
- [ ] Performance metrics defined
|
|
262
|
+
- [ ] Security requirements specified
|
|
263
|
+
- [ ] Dependencies identified
|
|
264
|
+
- [ ] Constraints documented
|
|
265
|
+
- [ ] Stakeholders approved
|
|
266
|
+
|
|
267
|
+
## Best Practices
|
|
268
|
+
|
|
269
|
+
1. **Be Specific**: Avoid ambiguous terms like "fast" or "user-friendly"
|
|
270
|
+
2. **Make it Testable**: Each requirement should have clear pass/fail criteria
|
|
271
|
+
3. **Consider Edge Cases**: What happens when things go wrong?
|
|
272
|
+
4. **Think End-to-End**: Consider the full user journey
|
|
273
|
+
5. **Version Control**: Track specification changes
|
|
274
|
+
6. **Get Feedback**: Validate with stakeholders early
|
|
275
|
+
|
|
276
276
|
Remember: A good specification prevents misunderstandings and rework. Time spent here saves time in implementation.
|