claude-flow-novice 2.6.0 → 2.8.1
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/adaptive-context/cfn-v3-reflection.json +21 -0
- package/.claude/agents/AGENT_LIFECYCLE.md +495 -0
- package/.claude/agents/CLAUDE.md +1002 -995
- package/.claude/agents/accessibility-advocate.md +457 -0
- package/.claude/agents/agent-principles/README.md +226 -226
- package/.claude/agents/agent-principles/agent-type-guidelines.md +10 -0
- package/.claude/agents/agent-principles/format-selection.md +10 -0
- package/.claude/agents/agent-principles/phase4-template-optimization.md +502 -494
- package/.claude/agents/agent-principles/prompt-engineering.md +8 -0
- package/.claude/agents/agent-principles/quality-metrics.md +8 -0
- package/.claude/agents/analysis/code-analyzer.md +7 -17
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +2 -104
- package/.claude/agents/analysis/perf-analyzer.md +2 -196
- package/.claude/agents/context/context-curator.md +78 -84
- package/.claude/agents/context/context-reflector.md +27 -81
- package/.claude/agents/coordinators/README.md +42 -0
- package/.claude/agents/coordinators/cfn-v3-coordinator.md +440 -0
- package/.claude/agents/{product-owner-team → coordinators}/cto-agent.md +154 -187
- package/.claude/agents/coordinators/multi-sprint-coordinator.md +50 -0
- package/.claude/agents/{product-owner-team → coordinators}/product-owner-agent.md +6 -39
- package/.claude/agents/{cfn-loop → coordinators}/product-owner.md +72 -17
- package/.claude/agents/core-agents/reviewer.md +114 -135
- package/.claude/agents/custom/agent-builder.md +637 -637
- package/.claude/agents/developers/README.md +69 -0
- package/.claude/agents/developers/backend-dev.md +77 -0
- package/.claude/agents/{core-agents → developers}/coder.md +131 -26
- package/.claude/agents/developers/react-frontend-engineer.md +121 -0
- package/.claude/agents/{frontend → developers}/state-architect.md +1 -0
- package/.claude/agents/{frontend → developers}/ui-designer.md +1 -0
- package/.claude/agents/development/backend/dev-backend-api.md +0 -29
- package/.claude/agents/development/npm-package-specialist.md +355 -347
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +8 -0
- package/.claude/agents/documentation/api-docs.md +8 -0
- package/.claude/agents/github/github-commit-agent.md +125 -117
- package/.claude/agents/goal/goal-planner.md +8 -0
- package/.claude/agents/infrastructure/README.md +100 -0
- package/.claude/agents/{specialized → infrastructure}/devops-engineer.md +131 -150
- package/.claude/agents/planners/README.md +94 -0
- package/.claude/agents/{core-agents → planners}/analyst.md +1 -22
- package/.claude/agents/{planning-team → planners}/api-designer-persona.md +8 -0
- package/.claude/agents/{core-agents → planners}/architect.md +7 -20
- package/.claude/agents/{core-agents → planners}/planner.md +0 -21
- package/.claude/agents/{planning-team → planners}/security-architect-persona.md +8 -28
- package/.claude/agents/{planning-team → planners}/system-architect-persona.md +6 -38
- package/.claude/agents/{architecture → planners}/system-architect.md +12 -17
- package/.claude/agents/product-owner-team/accessibility-advocate-persona.md +132 -161
- package/.claude/agents/product-owner-team/power-user-persona.md +149 -182
- package/.claude/agents/retrospective-analyst.md +84 -0
- package/.claude/agents/reviewers/README.md +58 -0
- package/.claude/agents/{analysis → reviewers}/code-quality-validator.md +8 -17
- package/.claude/agents/reviewers/reviewer.md +181 -0
- package/.claude/agents/sparc/architecture.md +6 -25
- package/.claude/agents/sparc/pseudocode.md +6 -0
- package/.claude/agents/sparc/refinement.md +6 -0
- package/.claude/agents/sparc/specification.md +1 -0
- package/.claude/agents/specialists/README.md +60 -0
- package/.claude/agents/{core-agents → specialists}/base-template-generator.md +8 -21
- package/.claude/agents/{specialized → specialists}/cli-agent-optimizer.md +1 -1
- package/.claude/agents/{specialized → specialists}/code-booster.md +1 -0
- package/.claude/agents/{consensus → specialists}/consensus-builder.md +1 -17
- package/.claude/agents/{specialized/mobile → specialists}/mobile-dev.md +0 -20
- package/.claude/agents/{core-agents → specialists}/performance-benchmarker.md +134 -148
- package/.claude/agents/{specialized → specialists}/rust-developer.md +1 -20
- package/.claude/agents/{specialized → specialists}/rust-enterprise-developer.md +1 -20
- package/.claude/agents/{specialized → specialists}/rust-mvp-developer.md +1 -20
- package/.claude/agents/{core-agents → specialists}/security-manager.md +68 -88
- package/.claude/agents/{security → specialists}/security-specialist-existing.md +6 -57
- package/.claude/agents/{security → specialists}/security-specialist.md +6 -30
- package/.claude/agents/{specialized/mobile → specialists}/spec-mobile-react-native.md +2 -21
- package/.claude/agents/testers/README.md +94 -0
- package/.claude/agents/{testing → testers}/e2e/playwright-agent.md +1 -20
- package/.claude/agents/{testing → testers}/interaction-tester.md +1 -20
- package/.claude/agents/{testing → testers}/playwright-tester.md +1 -1
- package/.claude/agents/testers/tester.md +139 -0
- package/.claude/agents/testers/unit/tdd-london-swarm.md +49 -0
- package/.claude/agents/testers/validation/production-validator.md +33 -0
- package/.claude/agents-ignore/cfn-loop-coordinator.md +157 -0
- package/.claude/agents-ignore/cfn-loop-coordinator.md.backup +156 -0
- package/.claude/agents-ignore/coordinator.md.backup +182 -0
- package/.claude/agents-ignore/cost-savings-cfn-loop-coordinator.md +760 -0
- package/.claude/agents-ignore/cost-savings-coordinator.md +173 -0
- package/.claude/artifacts/ace-reflections/REFLECT-001-summary.json +39 -0
- package/.claude/artifacts/ace-reflections/sprint-7_$(date -u +/"%Y%m%d_%H%M%S/").json" +47 -0
- package/.claude/commands/CFN_COORDINATOR_PARAMETERS.md +10 -10
- package/.claude/commands/cfn-loop-epic.md +3 -3
- package/.claude/commands/cfn-loop-single.md +3 -3
- package/.claude/commands/cfn-loop-sprints.md +1 -1
- package/.claude/commands/cfn-loop.md +3 -3
- package/.claude/commands/cfn-mode.md +20 -0
- package/.claude/commands/write-plan.md +104 -0
- package/.claude/data/cfn-loop.db +0 -0
- package/.claude/data/cfn_loop_logs.db +0 -0
- package/.claude/hooks/BACKUP_USAGE.md +243 -0
- package/.claude/hooks/post-edit-cfn-retrospective.sh +79 -0
- package/.claude/hooks/post-edit.sh +21 -0
- package/.claude/hooks/pre-edit-backup.sh +71 -0
- package/.claude/hooks/restore-from-backup.sh +37 -0
- package/.claude/prompts/cfn-loop-context.md +115 -0
- package/.claude/prompts/loop-specific/loop2.md +50 -0
- package/.claude/prompts/loop-specific/loop3.md +43 -0
- package/.claude/prompts/loop-specific/loop4.md +54 -0
- package/.claude/root-claude-distribute/CLAUDE.md +76 -2
- package/.claude/skills/ace-system/sprint-7-lessons.json +46 -0
- package/.claude/skills/ace-system/store-reflection.sh +33 -136
- package/.claude/skills/agent-discovery/SKILL.md +40 -0
- package/.claude/skills/agent-discovery/agents-registry-clean.json +0 -0
- package/.claude/skills/agent-discovery/agents-registry-fixed.json +19 -0
- package/.claude/skills/agent-discovery/agents-registry.json +718 -0
- package/.claude/skills/agent-discovery/discover-agents.py +175 -0
- package/.claude/skills/agent-discovery/discover-agents.sh +87 -0
- package/.claude/skills/agent-discovery/invoke-registry.sh +11 -0
- package/.claude/skills/agent-discovery/temp_script.py +0 -0
- package/.claude/skills/agent-output-processing/SKILL.md +359 -0
- package/.claude/skills/agent-selector/SKILL.md +90 -0
- package/.claude/skills/agent-selector/select-agents.sh +96 -0
- package/.claude/skills/agent-spawning/agent-selection-guide.md +1 -1
- package/.claude/skills/agent-swap/SKILL.md +36 -0
- package/.claude/skills/agent-swap/recommend-swap.sh +60 -0
- package/.claude/skills/api-validation/test-endpoints.sh +54 -0
- package/.claude/skills/automatic-memory-persistence/SKILL.md +73 -0
- package/.claude/skills/automatic-memory-persistence/persist-agent-output.sh +49 -0
- package/.claude/skills/automatic-memory-persistence/query-agent-history.sh +35 -0
- package/.claude/skills/automatic-memory-persistence/test-memory-persistence.sh +235 -0
- package/.claude/skills/cfn-loop-orchestration/README.md +41 -0
- package/.claude/skills/cfn-loop-orchestration/SKILL.md +299 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/auto-tune-timeouts.sh +228 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/consensus.sh +84 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/deliverable-verifier.sh +71 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +90 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/iteration-manager.sh +87 -0
- package/.claude/skills/cfn-loop-orchestration/helpers/timeout-calculator.sh +51 -0
- package/.claude/skills/cfn-loop-orchestration/inject-loop-context.sh +41 -0
- package/.claude/skills/cfn-loop-orchestration/monitor-execution.sh +156 -0
- package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +840 -0
- package/.claude/skills/cfn-loop-orchestration/security_utils.sh +99 -0
- package/.claude/skills/cfn-loop-orchestration/test-cfn-orchestration.sh +281 -0
- package/.claude/skills/cfn-loop-orchestration/test-edge-cases.sh +188 -0
- package/.claude/skills/cfn-loop-validation/SKILL.md +307 -217
- package/.claude/skills/complexity-estimator/SKILL.md +96 -0
- package/.claude/skills/complexity-estimator/estimate-complexity.sh +144 -0
- package/.claude/skills/context-pruner/SKILL.md +75 -0
- package/.claude/skills/context-pruner/prune-context.sh +73 -0
- package/.claude/skills/defense-in-depth/SKILL.md +133 -0
- package/.claude/skills/dependency-extractor/SKILL.md +35 -0
- package/.claude/skills/dependency-extractor/extract-dependencies.sh +66 -0
- package/.claude/skills/epic-decomposer/SKILL.md +44 -0
- package/.claude/skills/epic-decomposer/decompose-epic.sh +104 -0
- package/.claude/skills/improvement-recommender/SKILL.md +33 -0
- package/.claude/skills/improvement-recommender/recommend-improvements.sh +92 -0
- package/.claude/skills/intervention-detector/SKILL.md +39 -0
- package/.claude/skills/intervention-detector/detect-intervention.sh +111 -0
- package/.claude/skills/intervention-orchestrator/SKILL.md +43 -0
- package/.claude/skills/intervention-orchestrator/execute-intervention.sh +59 -0
- package/.claude/skills/loop2-output-processing/SKILL.md +163 -0
- package/.claude/skills/loop2-output-processing/execute-and-extract.sh +77 -0
- package/.claude/skills/loop2-output-processing/execute-and-extract.sh.backup +36 -0
- package/.claude/skills/loop2-output-processing/parse-feedback.sh +147 -0
- package/.claude/skills/loop2-output-processing/process-validator-output.sh +275 -0
- package/.claude/skills/loop2-output-processing/test-bug27-fix.sh +200 -0
- package/.claude/skills/loop2-output-processing/test-loop2-processing.sh +113 -0
- package/.claude/skills/loop3-output-processing/AGENT_COMPLETION_PROTOCOL.md +206 -0
- package/.claude/skills/loop3-output-processing/SKILL.md +421 -0
- package/.claude/skills/loop3-output-processing/calculate-confidence.sh +28 -0
- package/.claude/skills/loop3-output-processing/execute-and-extract.sh +85 -0
- package/.claude/skills/loop3-output-processing/parse-confidence.sh +31 -0
- package/.claude/skills/loop3-output-processing/test-agent-timeout.sh +327 -0
- package/.claude/skills/loop3-output-processing/test-loop3-processing.sh +155 -0
- package/.claude/skills/loop3-output-processing/verify-deliverables.sh +42 -0
- package/.claude/skills/pattern-extraction/SKILL.md +30 -0
- package/.claude/skills/pattern-extraction/extract-patterns.sh +80 -0
- package/.claude/skills/playbook/SKILL.md +113 -0
- package/.claude/skills/playbook/init-playbook.sh +54 -0
- package/.claude/skills/playbook/playbook.db +0 -0
- package/.claude/skills/playbook/query-playbook.sh +79 -0
- package/.claude/skills/playbook/update-playbook.sh +69 -0
- package/.claude/skills/playbook-auto-update/SKILL.md +29 -0
- package/.claude/skills/playbook-auto-update/auto-update-playbook.sh +86 -0
- package/.claude/skills/product-owner-decision/SKILL.md +332 -0
- package/.claude/skills/product-owner-decision/execute-decision.sh +176 -0
- package/.claude/skills/product-owner-decision/parse-decision.sh +66 -0
- package/.claude/skills/product-owner-decision/validate-deliverables.sh +82 -0
- package/.claude/skills/redis-coordination/LOGGING.md +260 -0
- package/.claude/skills/redis-coordination/README.md +30 -29
- package/.claude/skills/redis-coordination/SKILL.md +685 -83
- package/.claude/skills/redis-coordination/analyze-task-complexity.sh +277 -0
- package/.claude/skills/redis-coordination/cfn-loop-exec.sh +468 -0
- package/.claude/skills/redis-coordination/collect-confidence-scores.sh +179 -0
- package/.claude/skills/redis-coordination/collect-results.sh +75 -0
- package/.claude/skills/redis-coordination/data/cfn-loop.db +0 -0
- package/.claude/skills/redis-coordination/{test-orchestrator.sh → demos/test-orchestrator.sh} +25 -0
- package/.claude/skills/redis-coordination/execute-product-owner-decision.sh +258 -0
- package/.claude/skills/redis-coordination/get-agent-timeout.sh +176 -176
- package/.claude/skills/redis-coordination/invoke-waiting-mode.sh +93 -227
- package/.claude/skills/redis-coordination/invoke-waiting-mode.sh.backup-p7 +423 -0
- package/.claude/skills/redis-coordination/log-event.sh +109 -0
- package/.claude/skills/redis-coordination/monitor-cfn-violations.sh +391 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop-v3.sh +141 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh +31 -993
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup +38 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1761167675 +1672 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-p5 +1604 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase1 +1550 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase2 +1621 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase3 +1621 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.broken +1627 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.corrupted +80 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.deprecated +1864 -0
- package/.claude/skills/redis-coordination/query-logs.sh +103 -0
- package/.claude/skills/redis-coordination/retrieve-context.sh +58 -0
- package/.claude/skills/redis-coordination/select-specialist-agent.sh +371 -0
- package/.claude/skills/redis-coordination/semantic-match-tfidf.py +252 -0
- package/.claude/skills/redis-coordination/send-heartbeat.sh +164 -72
- package/.claude/skills/redis-coordination/signal.sh +38 -0
- package/.claude/skills/redis-coordination/store-context.sh +86 -0
- package/.claude/skills/redis-coordination/test-context-injection.sh +354 -0
- package/.claude/skills/redis-coordination/test-timeout-enforcement.sh +513 -0
- package/.claude/skills/redis-coordination/tests/convert-line-endings.sh +15 -0
- package/.claude/skills/redis-coordination/tests/dlq-functionality-test.sh +101 -101
- package/.claude/skills/redis-coordination/tests/edge-cases-test.sh +98 -98
- package/.claude/skills/redis-coordination/tests/integration-test.sh +169 -169
- package/.claude/skills/redis-coordination/tests/retry-mechanism-test.sh +81 -81
- package/.claude/skills/redis-coordination/tests/run-test-suite.sh +91 -91
- package/.claude/skills/redis-coordination/tests/run-tests.sh +4 -0
- package/.claude/skills/redis-coordination/tests/test-primitives.sh +166 -0
- package/.claude/skills/redis-coordination/tests/test-utils.sh +53 -121
- package/.claude/skills/redis-coordination/tests/test_coordination_primitives.sh.deprecated +20 -0
- package/.claude/skills/redis-coordination/tests/test_utils.sh +49 -0
- package/.claude/skills/redis-coordination/v2_modularization/core_orchestration.sh +76 -0
- package/.claude/skills/redis-coordination/validate-parameters.sh +492 -0
- package/.claude/skills/retrospective-report/SKILL.md +31 -0
- package/.claude/skills/retrospective-report/generate-report.sh +101 -0
- package/.claude/skills/run-all-skill-tests.sh +124 -0
- package/.claude/skills/scope-simplifier/SKILL.md +37 -0
- package/.claude/skills/scope-simplifier/simplify-scope.sh +68 -0
- package/.claude/skills/simplified-agent-lifecycle/COST_ANALYSIS.md +49 -0
- package/.claude/skills/simplified-agent-lifecycle/DESIGN.md +98 -0
- package/.claude/skills/simplified-agent-lifecycle/MIGRATION_PLAN.md +74 -0
- package/.claude/skills/specialist-injection/SKILL.md +41 -0
- package/.claude/skills/specialist-injection/recommend-specialist.sh +57 -0
- package/.claude/skills/sprint-execution/SKILL.md +27 -0
- package/.claude/skills/sprint-execution/execute-sprint-task.sh +59 -0
- package/.claude/skills/sprint-execution/execute-sprint.sh +65 -0
- package/.claude/skills/sprint-planner/SKILL.md +37 -0
- package/.claude/skills/sprint-planner/plan-sprint.sh +85 -0
- package/.claude/skills/standardized-error-handling/SKILL.md +56 -0
- package/.claude/skills/standardized-error-handling/capture-agent-error.sh +87 -0
- package/.claude/skills/standardized-error-handling/test-error-handling.sh +166 -0
- package/.claude/skills/task-classifier/SKILL.md +94 -0
- package/.claude/skills/task-classifier/classify-task.sh +115 -0
- package/.claude/skills/validation-templates/SKILL.md +47 -0
- package/.claude/skills/validation-templates/content.json +38 -0
- package/.claude/skills/validation-templates/data.json +38 -0
- package/.claude/skills/validation-templates/design.json +38 -0
- package/.claude/skills/validation-templates/infrastructure.json +38 -0
- package/.claude/skills/validation-templates/research.json +38 -0
- package/.claude/skills/validation-templates/software.json +38 -0
- package/.claude/skills/webapp-testing/README.md +142 -0
- package/.claude/skills/webapp-testing/SCREENSHOT_NAMING_CONVENTION.md +547 -0
- package/.claude/skills/webapp-testing/SKILL.md +877 -0
- package/.claude/skills/webapp-testing/capture-screenshot.sh +238 -0
- package/.claude/skills/webapp-testing/cfn-loop-integration.sh +265 -0
- package/.claude/skills/webapp-testing/compare-screenshots.sh +199 -0
- package/.claude/skills/webapp-testing/init-storage.sh +150 -0
- package/.claude/skills/webapp-testing/set-baseline.sh +196 -0
- package/.claude/skills/webapp-testing/test-webapp-testing.sh +233 -0
- package/.claude/spawn-pattern-examples.md +3 -3
- package/CLAUDE.md +319 -45
- package/README.md +598 -251
- package/dist/agents/agent-loader.js +146 -165
- package/dist/agents/agent-loader.js.map +1 -1
- package/dist/cli/agent-command.js +2 -0
- package/dist/cli/agent-command.js.map +1 -1
- package/dist/cli/agent-definition-parser.js +7 -0
- package/dist/cli/agent-definition-parser.js.map +1 -1
- package/dist/cli/agent-executor.js +145 -11
- package/dist/cli/agent-executor.js.map +1 -1
- package/dist/cli/agent-prompt-builder.js +81 -1
- package/dist/cli/agent-prompt-builder.js.map +1 -1
- package/dist/cli/agent-spawn.js +10 -1
- package/dist/cli/agent-spawn.js.map +1 -1
- package/dist/cli/anthropic-client.js +192 -13
- package/dist/cli/anthropic-client.js.map +1 -1
- package/dist/cli/cfn-context.js +150 -0
- package/dist/cli/cfn-context.js.map +1 -1
- package/dist/cli/cfn-fork.js +159 -0
- package/dist/cli/cfn-fork.js.map +1 -0
- package/dist/cli/cli-agent-context.js +8 -3
- package/dist/cli/cli-agent-context.js.map +1 -1
- package/dist/cli/config-manager.js +109 -91
- package/dist/cli/config-manager.js.map +1 -1
- package/dist/cli/conversation-fork.js +201 -0
- package/dist/cli/conversation-fork.js.map +1 -0
- package/dist/cli/index.js +4 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/tool-definitions.js +263 -0
- package/dist/cli/tool-definitions.js.map +1 -0
- package/dist/cli/tool-executor.js +247 -0
- package/dist/cli/tool-executor.js.map +1 -0
- package/dist/hello.js +8 -0
- package/dist/hello.js.map +1 -0
- package/package.json +14 -6
- package/scripts/README.md +68 -0
- package/scripts/cfn-intervention-example.sh +21 -0
- package/scripts/migrate-test-infrastructure.sh +40 -0
- package/scripts/validate-test-migration.sh +49 -0
- package/scripts/verify-no-secrets.sh +55 -0
- package/.claude/agents/architecture/system-architect.md.backup +0 -603
- package/.claude/agents/code-booster.md +0 -131
- package/.claude/agents/consensus/performance-benchmarker.md +0 -101
- package/.claude/agents/consensus/security-manager.md +0 -107
- package/.claude/agents/context-curator.md +0 -167
- package/.claude/agents/context-reflector.md +0 -65
- package/.claude/agents/core-agents/cfn-loop-coordinator.md +0 -134
- package/.claude/agents/core-agents/code-quality-validator.md +0 -149
- package/.claude/agents/core-agents/context-curator.md +0 -452
- package/.claude/agents/core-agents/context-reflector.md +0 -273
- package/.claude/agents/core-agents/cost-savings-cfn-loop-coordinator.md +0 -235
- package/.claude/agents/core-agents/tester.md +0 -170
- package/.claude/agents/development/backend-dev.md +0 -165
- package/.claude/agents/devops/devops-engineer.md +0 -148
- package/.claude/agents/frontend/interaction-tester.md +0 -139
- package/.claude/agents/frontend/react-frontend-engineer.md +0 -9
- package/.claude/agents/personas/accessibility-advocate-persona.md +0 -107
- package/.claude/agents/testing/production-validator.md +0 -179
- package/.claude/agents/testing/tdd-london-swarm.md +0 -209
- package/.claude/agents/testing/unit/tdd-london-swarm.md +0 -43
- package/.claude/agents/testing/validation/production-validator.md +0 -43
- package/.claude/api-configs/config-current-zai-config.env +0 -62
- package/.claude/api-configs/config-test-zai-config.env +0 -62
- package/.claude/api-configs/env-backups/before-anthropic-20251020-025404.env +0 -62
- package/.claude/api-configs/env-backups/before-restore-20251020-025431.env +0 -62
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1760949407 +0 -933
- package/dist/cli/cli-agent-context.test.js +0 -451
- package/dist/cli/cli-agent-context.test.js.map +0 -1
- package/dist/coordination/fleet-manager.test.js +0 -141
- package/dist/coordination/fleet-manager.test.js.map +0 -1
- package/dist/middleware/transparency-middleware.test.js +0 -184
- package/dist/middleware/transparency-middleware.test.js.map +0 -1
- /package/.claude/agents/{core-agents → developers}/researcher.md +0 -0
- /package/.claude/agents/{consensus → specialists}/crdt-synchronizer.md +0 -0
- /package/.claude/agents/{consensus → specialists}/quorum-manager.md +0 -0
- /package/.claude/agents/{consensus → specialists}/raft-manager.md +0 -0
- /package/.claude/{agents/core-agents → agents-ignore}/coordinator.md +0 -0
- /package/.claude/{agents/core-agents/cost-savings-coordinator.md → agents-ignore/cost-savings-coordinator.md.backup} +0 -0
- /package/.claude/skills/redis-coordination/{phase4-wake-queue-test-report.md → demos/phase4-wake-queue-test-report.md} +0 -0
- /package/.claude/skills/redis-coordination/{test-bzpopmin-fix.sh → demos/test-bzpopmin-fix.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-cancel-swarm.sh → demos/test-cancel-swarm.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-dlq.sh → demos/test-dlq.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-iteration-feedback.sh → demos/test-iteration-feedback.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-priority-wake-phase4-unix.sh → demos/test-priority-wake-phase4-unix.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-priority-wake-phase4.sh → demos/test-priority-wake-phase4.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-priority-wake.sh → demos/test-priority-wake.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quick-fix.sh → demos/test-quick-fix.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quorum-absolute.sh → demos/test-quorum-absolute.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quorum-fallback.sh → demos/test-quorum-fallback.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quorum-percentage.sh → demos/test-quorum-percentage.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quorum-with-retry.sh → demos/test-quorum-with-retry.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-quorum.sh → demos/test-quorum.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-shutdown-handling.sh → demos/test-shutdown-handling.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-shutdown.sh → demos/test-shutdown.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-utils-unix.sh → demos/test-utils-unix.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-utils.sh → demos/test-utils.sh} +0 -0
- /package/.claude/skills/redis-coordination/{test-waiting-mode.sh → demos/test-waiting-mode.sh} +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
# Loop 2 Output Processing: Comprehensive Test Suite
|
|
5
|
+
|
|
6
|
+
# Determine script directory
|
|
7
|
+
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
8
|
+
|
|
9
|
+
# Test Helper Functions
|
|
10
|
+
setup() {
|
|
11
|
+
mkdir -p /tmp/loop2-test
|
|
12
|
+
cd /tmp/loop2-test
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
teardown() {
|
|
16
|
+
rm -rf /tmp/loop2-test
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
assert_json_valid() {
|
|
20
|
+
local output="$1"
|
|
21
|
+
echo "DEBUG: Validating output: $output"
|
|
22
|
+
echo "$output" | grep -q '{"confidence":' && \
|
|
23
|
+
echo "$output" | grep -q '"feedback":{' && \
|
|
24
|
+
echo "$output" | grep -q '"critical":\[' && \
|
|
25
|
+
echo "$output" | grep -q '"warning":\[' && \
|
|
26
|
+
echo "$output" | grep -q '"suggestion":\[' || return 1
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
run_test() {
|
|
30
|
+
local testname="$1"
|
|
31
|
+
local testfunc="$2"
|
|
32
|
+
echo "Running test: $testname"
|
|
33
|
+
$testfunc
|
|
34
|
+
echo "✅ $testname passed"
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
# Test Cases
|
|
38
|
+
test_parse_high_confidence() {
|
|
39
|
+
local test_input="Confidence is high. Critical: Authentication bypass in login.ts"
|
|
40
|
+
echo "DEBUG: Input for high confidence test: $test_input"
|
|
41
|
+
local output=$(echo "$test_input" | \
|
|
42
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
43
|
+
|
|
44
|
+
echo "DEBUG: Actual output: $output"
|
|
45
|
+
assert_json_valid "$output"
|
|
46
|
+
echo "$output" | grep -q '"confidence": 0.9'
|
|
47
|
+
echo "$output" | grep -q '"critical": \["Authentication bypass in login.ts"\]'
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
test_parse_numeric_confidence() {
|
|
51
|
+
local output=$(echo "Confidence: 0.85. Warning: Performance bottleneck detected." | \
|
|
52
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
53
|
+
|
|
54
|
+
assert_json_valid "$output"
|
|
55
|
+
echo "$output" | grep -q '"confidence": 0.85'
|
|
56
|
+
echo "$output" | grep -q '"warning": \["Performance bottleneck detected."\]'
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
test_parse_low_confidence() {
|
|
60
|
+
local output=$(echo "Confidence is low. Suggestion: Consider refactoring." | \
|
|
61
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
62
|
+
|
|
63
|
+
assert_json_valid "$output"
|
|
64
|
+
echo "$output" | grep -q '"confidence": 0.3'
|
|
65
|
+
echo "$output" | grep -q '"suggestion": \["Consider refactoring."\]'
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
test_multiple_feedback_categories() {
|
|
69
|
+
local output=$(echo "Confidence: 0.75. Critical: Security issue found. Warning: Performance problem. Suggestion: Code optimization." | \
|
|
70
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
71
|
+
|
|
72
|
+
assert_json_valid "$output"
|
|
73
|
+
echo "$output" | grep -q '"confidence": 0.75'
|
|
74
|
+
echo "$output" | grep -q '"critical": \["Security issue found."\]'
|
|
75
|
+
echo "$output" | grep -q '"warning": \["Performance problem."\]'
|
|
76
|
+
echo "$output" | grep -q '"suggestion": \["Code optimization."\]'
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
test_empty_output() {
|
|
80
|
+
local output=$(echo "" | \
|
|
81
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
82
|
+
|
|
83
|
+
assert_json_valid "$output"
|
|
84
|
+
echo "$output" | grep -q '"confidence": 0.0'
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
test_no_feedback() {
|
|
88
|
+
local output=$(echo "Just a comment with no specific feedback" | \
|
|
89
|
+
"$SCRIPT_DIR/parse-feedback.sh")
|
|
90
|
+
|
|
91
|
+
assert_json_valid "$output"
|
|
92
|
+
echo "$output" | grep -q '"confidence": 0.0'
|
|
93
|
+
echo "$output" | grep -q '"critical": \[\]'
|
|
94
|
+
echo "$output" | grep -q '"warning": \[\]'
|
|
95
|
+
echo "$output" | grep -q '"suggestion": \[\]'
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
# Test Runner
|
|
99
|
+
main() {
|
|
100
|
+
setup
|
|
101
|
+
|
|
102
|
+
run_test "High Confidence Parsing" test_parse_high_confidence
|
|
103
|
+
run_test "Numeric Confidence Parsing" test_parse_numeric_confidence
|
|
104
|
+
run_test "Low Confidence Parsing" test_parse_low_confidence
|
|
105
|
+
run_test "Multiple Feedback Categories" test_multiple_feedback_categories
|
|
106
|
+
run_test "Empty Output Handling" test_empty_output
|
|
107
|
+
run_test "No Specific Feedback" test_no_feedback
|
|
108
|
+
|
|
109
|
+
teardown
|
|
110
|
+
echo "All Loop 2 Output Processing tests passed successfully!"
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
main
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
# Agent Completion Protocol Implementation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This implementation adds robust timeout handling and process monitoring to the Redis Coordination orchestrator, preventing indefinite blocking when agents crash or fail to signal completion.
|
|
6
|
+
|
|
7
|
+
## Problem Solved
|
|
8
|
+
|
|
9
|
+
**Issue:** If an agent doesn't execute `redis-cli lpush "swarm:${TASK_ID}:${AGENT_ID}:done" "complete"`, the orchestrator blocks forever on BLPOP.
|
|
10
|
+
|
|
11
|
+
**Root Causes:**
|
|
12
|
+
- Agent process crashes without cleanup
|
|
13
|
+
- Bash script errors before reaching done signal
|
|
14
|
+
- Agent gets stuck in infinite loop
|
|
15
|
+
- Network issues preventing Redis communication
|
|
16
|
+
|
|
17
|
+
## Implementation
|
|
18
|
+
|
|
19
|
+
### Files Modified
|
|
20
|
+
|
|
21
|
+
1. **orchestrate-cfn-loop.sh** - Core orchestration script
|
|
22
|
+
- Added `monitor_agent_process()` function (lines ~498-529)
|
|
23
|
+
- Enhanced `blpop_with_retry()` with PID tracking (lines ~534-620)
|
|
24
|
+
- Updated Loop 3 spawning to track PIDs and start monitors (lines ~751-775)
|
|
25
|
+
- Updated Loop 2 spawning to track PIDs and start monitors (lines ~1032-1056)
|
|
26
|
+
- Modified BLPOP calls to include PID parameter (lines ~805, ~1086)
|
|
27
|
+
|
|
28
|
+
2. **send-heartbeat.sh** - Heartbeat utility
|
|
29
|
+
- Added start/stop/once modes for continuous heartbeat
|
|
30
|
+
- Backward compatible with original one-shot behavior
|
|
31
|
+
- Supports custom intervals and TTLs
|
|
32
|
+
|
|
33
|
+
3. **SKILL.md** - Documentation
|
|
34
|
+
- Added "Agent Completion Protocol (v2.1.0)" section
|
|
35
|
+
- Comprehensive usage examples
|
|
36
|
+
- Metrics and test coverage documentation
|
|
37
|
+
|
|
38
|
+
### Files Created
|
|
39
|
+
|
|
40
|
+
1. **test-agent-timeout.sh** - Test suite
|
|
41
|
+
- Test 1: Normal agent completion
|
|
42
|
+
- Test 2: Agent exits with error (auto-completion)
|
|
43
|
+
- Test 3: Agent stuck without heartbeat (timeout kill)
|
|
44
|
+
- Test 4: Agent with continuous heartbeat (no timeout)
|
|
45
|
+
|
|
46
|
+
## Three-Layer Protection
|
|
47
|
+
|
|
48
|
+
### Layer 1: Process-Based Completion Detection
|
|
49
|
+
|
|
50
|
+
**What it does:**
|
|
51
|
+
- Monitors agent process in background
|
|
52
|
+
- Auto-signals completion when process exits
|
|
53
|
+
- Captures exit code for debugging
|
|
54
|
+
|
|
55
|
+
**Implementation:**
|
|
56
|
+
```bash
|
|
57
|
+
monitor_agent_process "$AGENT_ID" "$AGENT_PID" "$TASK_ID" "$DONE_KEY"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Auto-completion signals:**
|
|
61
|
+
- Exit code 0: `auto-completed-success`
|
|
62
|
+
- Exit code non-zero: `auto-completed-error:<code>`
|
|
63
|
+
|
|
64
|
+
### Layer 2: BLPOP with Process Status Checks
|
|
65
|
+
|
|
66
|
+
**What it does:**
|
|
67
|
+
- Enhanced BLPOP retry logic
|
|
68
|
+
- Checks if process is still alive on timeout
|
|
69
|
+
- Retrieves auto-completion signals from dead processes
|
|
70
|
+
|
|
71
|
+
**Implementation:**
|
|
72
|
+
```bash
|
|
73
|
+
blpop_with_retry "$AGENT_ID" "$DONE_KEY" "$TIMEOUT" "$RETRY_COUNT" "$RETRY_DELAY" "$AGENT_PID"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Behavior on timeout:**
|
|
77
|
+
1. BLPOP times out (no signal)
|
|
78
|
+
2. Check: `kill -0 $AGENT_PID`
|
|
79
|
+
3. If dead: Check for auto-completion signal
|
|
80
|
+
4. If alive: Continue retry logic
|
|
81
|
+
|
|
82
|
+
### Layer 3: Heartbeat Monitoring (Optional)
|
|
83
|
+
|
|
84
|
+
**What it does:**
|
|
85
|
+
- Agents send periodic heartbeats
|
|
86
|
+
- Orchestrator checks heartbeat on timeout
|
|
87
|
+
- Kills stuck processes with no heartbeat
|
|
88
|
+
|
|
89
|
+
**Agent usage:**
|
|
90
|
+
```bash
|
|
91
|
+
# Start heartbeat
|
|
92
|
+
./.claude/skills/redis-coordination/send-heartbeat.sh start \
|
|
93
|
+
--task-id "$TASK_ID" \
|
|
94
|
+
--agent-id "$AGENT_ID" \
|
|
95
|
+
--interval 30 &
|
|
96
|
+
HEARTBEAT_PID=$!
|
|
97
|
+
|
|
98
|
+
# ... do work ...
|
|
99
|
+
|
|
100
|
+
# Stop heartbeat
|
|
101
|
+
./.claude/skills/redis-coordination/send-heartbeat.sh stop \
|
|
102
|
+
--task-id "$TASK_ID" \
|
|
103
|
+
--agent-id "$AGENT_ID" \
|
|
104
|
+
--pid "$HEARTBEAT_PID"
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Orchestrator behavior:**
|
|
108
|
+
- No heartbeat for 2 intervals (60s) → Consider agent stuck
|
|
109
|
+
- Stuck + alive → Kill process with SIGTERM/SIGKILL
|
|
110
|
+
|
|
111
|
+
## Metrics
|
|
112
|
+
|
|
113
|
+
New metrics collected:
|
|
114
|
+
|
|
115
|
+
- `swarm:{TASK_ID}:metrics:agent_errors` - Agents that exited with errors
|
|
116
|
+
- `swarm:{TASK_ID}:metrics:agent_killed` - Stuck agents killed by timeout
|
|
117
|
+
- `swarm:{TASK_ID}:metrics:timeout_count` - BLPOP timeouts
|
|
118
|
+
- `swarm:{TASK_ID}:metrics:retry_count` - Retry attempts
|
|
119
|
+
|
|
120
|
+
## Testing
|
|
121
|
+
|
|
122
|
+
Run the test suite:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
./.claude/skills/loop3-output-processing/test-agent-timeout.sh
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**Expected output:**
|
|
129
|
+
```
|
|
130
|
+
=== Agent Completion Protocol Test ===
|
|
131
|
+
Task ID: test-timeout-1729517234
|
|
132
|
+
|
|
133
|
+
[Test 1] Agent completes successfully and signals done
|
|
134
|
+
✅ PASS: Agent signaled completion
|
|
135
|
+
|
|
136
|
+
[Test 2] Agent exits with error - process monitor auto-completes
|
|
137
|
+
✅ PASS: Process monitor auto-completed with error
|
|
138
|
+
|
|
139
|
+
[Test 3] Agent stuck without heartbeat - orchestrator kills process
|
|
140
|
+
✅ PASS: Stuck process was killed by timeout logic
|
|
141
|
+
|
|
142
|
+
[Test 4] Agent with continuous heartbeat - no timeout
|
|
143
|
+
✅ PASS: Heartbeat active after 5 seconds
|
|
144
|
+
|
|
145
|
+
=== Test Summary ===
|
|
146
|
+
Passed: 4
|
|
147
|
+
Failed: 0
|
|
148
|
+
✅ ALL TESTS PASSED
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## Benefits
|
|
152
|
+
|
|
153
|
+
1. **No indefinite blocking** - Orchestrator never hangs on dead agents
|
|
154
|
+
2. **Automatic cleanup** - Dead processes auto-complete without intervention
|
|
155
|
+
3. **Graceful degradation** - System continues with quorum if some agents fail
|
|
156
|
+
4. **Debugging support** - Exit codes and metrics identify failure patterns
|
|
157
|
+
5. **Zero token waste** - No API calls for stuck agents
|
|
158
|
+
6. **Backward compatible** - Agents work without heartbeats
|
|
159
|
+
7. **Optional enhancement** - Heartbeats only for long-running agents
|
|
160
|
+
|
|
161
|
+
## Migration Guide
|
|
162
|
+
|
|
163
|
+
### For Agent Developers
|
|
164
|
+
|
|
165
|
+
**No changes required!** The protocol works automatically with existing agents.
|
|
166
|
+
|
|
167
|
+
**Optional enhancement** (for long-running agents >5 minutes):
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
# Add heartbeat at start of agent script
|
|
171
|
+
./.claude/skills/redis-coordination/send-heartbeat.sh start \
|
|
172
|
+
--task-id "$TASK_ID" \
|
|
173
|
+
--agent-id "$AGENT_ID" \
|
|
174
|
+
--interval 30 &
|
|
175
|
+
HEARTBEAT_PID=$!
|
|
176
|
+
|
|
177
|
+
# Add cleanup at end
|
|
178
|
+
./.claude/skills/redis-coordination/send-heartbeat.sh stop \
|
|
179
|
+
--task-id "$TASK_ID" \
|
|
180
|
+
--agent-id "$AGENT_ID" \
|
|
181
|
+
--pid "$HEARTBEAT_PID"
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### For Orchestrator Operators
|
|
185
|
+
|
|
186
|
+
**No changes required!** Process monitoring is automatic for all CLI-spawned agents.
|
|
187
|
+
|
|
188
|
+
**Monitoring:**
|
|
189
|
+
- Check metrics for `agent_errors` and `agent_killed` counts
|
|
190
|
+
- High kill rates may indicate agent bugs or resource issues
|
|
191
|
+
|
|
192
|
+
## Version History
|
|
193
|
+
|
|
194
|
+
- **v2.1.0** (2025-10-20) - Agent Completion Protocol implementation
|
|
195
|
+
- Process-based completion detection
|
|
196
|
+
- Enhanced BLPOP with PID tracking
|
|
197
|
+
- Continuous heartbeat support
|
|
198
|
+
- Comprehensive test suite
|
|
199
|
+
|
|
200
|
+
## References
|
|
201
|
+
|
|
202
|
+
- Implementation: `.claude/skills/redis-coordination/orchestrate-cfn-loop.sh`
|
|
203
|
+
- Documentation: `.claude/skills/redis-coordination/SKILL.md`
|
|
204
|
+
- Tests: `.claude/skills/loop3-output-processing/test-agent-timeout.sh`
|
|
205
|
+
- Heartbeat: `.claude/skills/redis-coordination/send-heartbeat.sh`
|
|
206
|
+
- Requirements: `docs/SKILL_ENFORCEMENT_OPPORTUNITIES.md` (Section 4)
|