claude-flow-novice 2.8.1 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/README.md +2 -2
- package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/cfn-v3-coordinator.md +1 -1
- package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/cto-agent.md +1 -1
- package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/product-owner-agent.md +1 -1
- package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/product-owner.md +2 -2
- package/.claude/agents/{developers → cfn-dev-team/developers}/README.md +1 -1
- package/.claude/agents/{developers → cfn-dev-team/developers}/coder.md +1 -1
- package/.claude/agents/{reviewers → cfn-dev-team/reviewers}/code-quality-validator.md +1 -1
- package/.claude/agents/{reviewers → cfn-dev-team/reviewers}/reviewer.md +1 -1
- package/.claude/agents/{testers → cfn-dev-team/testers}/e2e/playwright-agent.md +1 -1
- package/.claude/agents/{testers → cfn-dev-team/testers}/interaction-tester.md +1 -1
- package/.claude/agents/{testers → cfn-dev-team/testers}/unit/tdd-london-swarm.md +1 -1
- package/.claude/agents/{testers → cfn-dev-team/testers}/validation/production-validator.md +1 -1
- package/.claude/commands/{CFN_COORDINATOR_PARAMETERS.md → cfn/CFN_COORDINATOR_PARAMETERS.md} +15 -15
- package/.claude/commands/{cfn-loop-epic.md → cfn/cfn-loop-epic.md} +4 -4
- package/.claude/commands/{cfn-loop-single.md → cfn/cfn-loop-single.md} +7 -7
- package/.claude/commands/{cfn-loop-sprints.md → cfn/cfn-loop-sprints.md} +1 -1
- package/.claude/commands/{cfn-loop.md → cfn/cfn-loop.md} +7 -7
- package/.claude/commands/{cfn-optimize-agents.md → cfn/cfn-optimize-agents.md} +1 -1
- package/.claude/commands/{context-curate.md → cfn/context-curate.md} +2 -2
- package/.claude/commands/{context-inject.md → cfn/context-inject.md} +3 -3
- package/.claude/commands/{context-reflect.md → cfn/context-reflect.md} +1 -1
- package/.claude/commands/{context-stats.md → cfn/context-stats.md} +1 -1
- package/.claude/commands/{list-agents-rebuild.md → cfn/list-agents-rebuild.md} +12 -12
- package/{CLAUDE.md → CFN-CLAUDE.md} +19 -19
- package/dist/cli/config-manager.js +91 -109
- package/dist/cli/config-manager.js.map +1 -1
- package/dist/cli/init-command.js +20 -0
- package/dist/cli/init-command.js.map +1 -0
- package/package.json +13 -7
- package/scripts/init-project.js +148 -0
- package/scripts/restructure-cfn-namespace.sh +161 -0
- package/.claude/SLASH-COMMANDS-READY.md +0 -53
- package/.claude/WORKING-SETUP.md +0 -67
- package/.claude/ace-system-overview.md +0 -524
- package/.claude/adaptive-context/cfn-v3-reflection.json +0 -21
- package/.claude/agent-principles/agent-template.md +0 -96
- package/.claude/agents/AGENT_LIFECYCLE.md +0 -495
- package/.claude/agents/CLAUDE.md +0 -1002
- package/.claude/agents/README-VALIDATION.md +0 -243
- package/.claude/agents/accessibility-advocate.md +0 -457
- package/.claude/agents/agent-principles/README.md +0 -226
- package/.claude/agents/agent-principles/agent-type-guidelines.md +0 -475
- package/.claude/agents/agent-principles/format-selection.md +0 -234
- package/.claude/agents/agent-principles/phase4-template-optimization.md +0 -502
- package/.claude/agents/agent-principles/prompt-engineering.md +0 -509
- package/.claude/agents/agent-principles/quality-metrics.md +0 -383
- package/.claude/agents/analysis/code-analyzer.md +0 -182
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +0 -31
- package/.claude/agents/analysis/perf-analyzer.md +0 -36
- package/.claude/agents/context/context-curator.md +0 -78
- package/.claude/agents/context/context-reflector.md +0 -27
- package/.claude/agents/core-agents/reviewer.md +0 -121
- package/.claude/agents/custom/agent-builder.md +0 -637
- package/.claude/agents/development/backend/dev-backend-api.md +0 -110
- package/.claude/agents/development/npm-package-specialist.md +0 -355
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -106
- package/.claude/agents/documentation/api-docs.md +0 -111
- package/.claude/agents/frontend/README.md +0 -640
- package/.claude/agents/github/github-commit-agent.md +0 -126
- package/.claude/agents/goal/goal-planner.md +0 -191
- package/.claude/agents/infrastructure/README.md +0 -100
- package/.claude/agents/infrastructure/devops-engineer.md +0 -131
- package/.claude/agents/planners/README.md +0 -94
- package/.claude/agents/planners/analyst.md +0 -149
- package/.claude/agents/planners/api-designer-persona.md +0 -155
- package/.claude/agents/planners/architect.md +0 -187
- package/.claude/agents/planners/planner.md +0 -153
- package/.claude/agents/planners/security-architect-persona.md +0 -170
- package/.claude/agents/planners/system-architect-persona.md +0 -158
- package/.claude/agents/planners/system-architect.md +0 -156
- package/.claude/agents/product-owner-team/accessibility-advocate-persona.md +0 -132
- package/.claude/agents/product-owner-team/power-user-persona.md +0 -149
- package/.claude/agents/retrospective-analyst.md +0 -84
- package/.claude/agents/sparc/architecture.md +0 -130
- package/.claude/agents/sparc/pseudocode.md +0 -165
- package/.claude/agents/sparc/refinement.md +0 -112
- package/.claude/agents/sparc/specification.md +0 -158
- package/.claude/agents/specialists/README.md +0 -60
- package/.claude/agents/specialists/base-template-generator.md +0 -175
- package/.claude/agents/specialists/cli-agent-optimizer.md +0 -122
- package/.claude/agents/specialists/code-booster.md +0 -144
- package/.claude/agents/specialists/consensus-builder.md +0 -143
- package/.claude/agents/specialists/crdt-synchronizer.md +0 -192
- package/.claude/agents/specialists/mobile-dev.md +0 -190
- package/.claude/agents/specialists/performance-benchmarker.md +0 -134
- package/.claude/agents/specialists/quorum-manager.md +0 -168
- package/.claude/agents/specialists/raft-manager.md +0 -106
- package/.claude/agents/specialists/rust-developer.md +0 -147
- package/.claude/agents/specialists/rust-enterprise-developer.md +0 -125
- package/.claude/agents/specialists/rust-mvp-developer.md +0 -123
- package/.claude/agents/specialists/security-manager.md +0 -91
- package/.claude/agents/specialists/security-specialist-existing.md +0 -103
- package/.claude/agents/specialists/security-specialist.md +0 -161
- package/.claude/agents/specialists/spec-mobile-react-native.md +0 -172
- package/.claude/agents/validate-agent.js +0 -841
- package/.claude/agents-ignore/cfn-coordinator-enterprise.md +0 -1303
- package/.claude/agents-ignore/cfn-coordinator-mvp.md +0 -942
- package/.claude/agents-ignore/cfn-coordinator-standard.md +0 -1062
- package/.claude/agents-ignore/cfn-loop-coordinator.md +0 -157
- package/.claude/agents-ignore/cfn-loop-coordinator.md.backup +0 -156
- package/.claude/agents-ignore/coordinator.md +0 -182
- package/.claude/agents-ignore/coordinator.md.backup +0 -182
- package/.claude/agents-ignore/cost-savings-cfn-loop-coordinator.md +0 -760
- package/.claude/agents-ignore/cost-savings-coordinator.md +0 -173
- package/.claude/agents-ignore/cost-savings-coordinator.md.backup +0 -167
- package/.claude/agents-ignore/deprecated-coordinators/adaptive-coordinator-enhanced.md +0 -145
- package/.claude/agents-ignore/deprecated-coordinators/adaptive-coordinator.md +0 -161
- package/.claude/agents-ignore/deprecated-coordinators/blocking-coordinator-example.md +0 -732
- package/.claude/agents-ignore/deprecated-coordinators/byzantine-coordinator.md +0 -94
- package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-enterprise.md +0 -323
- package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-mvp.md +0 -157
- package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-standard.md +0 -229
- package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-unified.md +0 -149
- package/.claude/agents-ignore/deprecated-coordinators/coordinator-hybrid.md +0 -231
- package/.claude/agents-ignore/deprecated-coordinators/gossip-coordinator.md +0 -165
- package/.claude/agents-ignore/deprecated-coordinators/hierarchical-coordinator.md +0 -91
- package/.claude/agents-ignore/deprecated-coordinators/mesh-coordinator.md +0 -131
- package/.claude/agents-ignore/deprecated-coordinators/task-coordinator.md +0 -105
- package/.claude/agents-ignore/deprecated-coordinators/test-coordinator.md +0 -141
- package/.claude/architecture/mesh-get-polling-design.md +0 -87
- package/.claude/architecture/mesh-get-polling-implementation.md +0 -89
- package/.claude/architecture/typescript-microservices.md +0 -50
- package/.claude/artifacts/ace-reflections/REFLECT-001-summary.json +0 -39
- package/.claude/artifacts/ace-reflections/sprint-7_$(date -u +/"%Y%m%d_%H%M%S/").json" +0 -47
- package/.claude/artifacts/reflection-merge-logs/cli-agent-spawning-v2.5.2-merge-report.md +0 -61
- package/.claude/cfn-loop-rules.md +0 -73
- package/.claude/cfn-mode-patterns.md +0 -571
- package/.claude/claude-md-backup-pre-skills.md +0 -15
- package/.claude/commands/agents/README.md +0 -10
- package/.claude/commands/agents/agent-capabilities.md +0 -21
- package/.claude/commands/agents/agent-coordination.md +0 -28
- package/.claude/commands/agents/agent-spawning.md +0 -28
- package/.claude/commands/agents/agent-types.md +0 -26
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +0 -54
- package/.claude/commands/analysis/README.md +0 -9
- package/.claude/commands/analysis/bottleneck-detect.md +0 -162
- package/.claude/commands/analysis/performance-bottlenecks.md +0 -59
- package/.claude/commands/analysis/performance-report.md +0 -25
- package/.claude/commands/analysis/token-efficiency.md +0 -45
- package/.claude/commands/analysis/token-usage.md +0 -25
- package/.claude/commands/automation/README.md +0 -9
- package/.claude/commands/automation/auto-agent.md +0 -122
- package/.claude/commands/automation/self-healing.md +0 -106
- package/.claude/commands/automation/session-memory.md +0 -90
- package/.claude/commands/automation/smart-agents.md +0 -73
- package/.claude/commands/automation/smart-spawn.md +0 -25
- package/.claude/commands/automation/workflow-select.md +0 -25
- package/.claude/commands/claude-md.js +0 -237
- package/.claude/commands/claude-soul.js +0 -28
- package/.claude/commands/cli-integration.js +0 -216
- package/.claude/commands/coordination/README.md +0 -9
- package/.claude/commands/coordination/agent-spawn.md +0 -25
- package/.claude/commands/coordination/coordination-system.md +0 -88
- package/.claude/commands/coordination/init.md +0 -44
- package/.claude/commands/coordination/orchestrate.md +0 -43
- package/.claude/commands/coordination/spawn.md +0 -45
- package/.claude/commands/coordination/swarm-init.md +0 -85
- package/.claude/commands/coordination/task-orchestrate.md +0 -25
- package/.claude/commands/github/README.md +0 -11
- package/.claude/commands/github/code-review-swarm.md +0 -514
- package/.claude/commands/github/code-review.md +0 -25
- package/.claude/commands/github/github-modes.md +0 -147
- package/.claude/commands/github/github-swarm.md +0 -121
- package/.claude/commands/github/issue-tracker.md +0 -292
- package/.claude/commands/github/issue-triage.md +0 -25
- package/.claude/commands/github/multi-repo-swarm.md +0 -519
- package/.claude/commands/github/pr-enhance.md +0 -26
- package/.claude/commands/github/pr-manager.md +0 -170
- package/.claude/commands/github/project-board-sync.md +0 -471
- package/.claude/commands/github/release-manager.md +0 -338
- package/.claude/commands/github/release-swarm.md +0 -544
- package/.claude/commands/github/repo-analyze.md +0 -25
- package/.claude/commands/github/repo-architect.md +0 -367
- package/.claude/commands/github/swarm-issue.md +0 -482
- package/.claude/commands/github/swarm-pr.md +0 -285
- package/.claude/commands/github/sync-coordinator.md +0 -301
- package/.claude/commands/github/workflow-automation.md +0 -442
- package/.claude/commands/github.js +0 -638
- package/.claude/commands/hive-mind/README.md +0 -17
- package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-init.md +0 -18
- package/.claude/commands/hive-mind/hive-mind-memory.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-metrics.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-resume.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-sessions.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -21
- package/.claude/commands/hive-mind/hive-mind-status.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-stop.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-wizard.md +0 -8
- package/.claude/commands/hive-mind/hive-mind.md +0 -27
- package/.claude/commands/hooks/README.md +0 -11
- package/.claude/commands/hooks/overview.md +0 -58
- package/.claude/commands/hooks/post-edit.md +0 -117
- package/.claude/commands/hooks/post-task.md +0 -112
- package/.claude/commands/hooks/pre-edit.md +0 -113
- package/.claude/commands/hooks/pre-task.md +0 -111
- package/.claude/commands/hooks/session-end.md +0 -118
- package/.claude/commands/hooks/session-start.md +0 -9
- package/.claude/commands/hooks/setup.md +0 -103
- package/.claude/commands/hooks.js +0 -651
- package/.claude/commands/index.js +0 -119
- package/.claude/commands/memory/README.md +0 -9
- package/.claude/commands/memory/memory-bank.md +0 -58
- package/.claude/commands/memory/memory-persist.md +0 -25
- package/.claude/commands/memory/memory-search.md +0 -25
- package/.claude/commands/memory/memory-usage.md +0 -25
- package/.claude/commands/memory/neural.md +0 -47
- package/.claude/commands/memory/usage.md +0 -46
- package/.claude/commands/monitoring/README.md +0 -9
- package/.claude/commands/monitoring/agent-metrics.md +0 -25
- package/.claude/commands/monitoring/agents.md +0 -44
- package/.claude/commands/monitoring/real-time-view.md +0 -25
- package/.claude/commands/monitoring/status.md +0 -46
- package/.claude/commands/monitoring/swarm-monitor.md +0 -25
- package/.claude/commands/neural.js +0 -572
- package/.claude/commands/optimization/README.md +0 -9
- package/.claude/commands/optimization/auto-topology.md +0 -62
- package/.claude/commands/optimization/cache-manage.md +0 -25
- package/.claude/commands/optimization/parallel-execute.md +0 -25
- package/.claude/commands/optimization/parallel-execution.md +0 -50
- package/.claude/commands/optimization/topology-optimize.md +0 -25
- package/.claude/commands/pair/README.md +0 -261
- package/.claude/commands/pair/commands.md +0 -546
- package/.claude/commands/pair/config.md +0 -510
- package/.claude/commands/pair/examples.md +0 -512
- package/.claude/commands/pair/modes.md +0 -348
- package/.claude/commands/pair/session.md +0 -407
- package/.claude/commands/pair/start.md +0 -209
- package/.claude/commands/parse-epic.js +0 -180
- package/.claude/commands/performance.js +0 -582
- package/.claude/commands/register-all-commands.js +0 -320
- package/.claude/commands/register-claude-md.js +0 -82
- package/.claude/commands/register-claude-soul.js +0 -80
- package/.claude/commands/sparc/analyzer.md +0 -52
- package/.claude/commands/sparc/architect.md +0 -53
- package/.claude/commands/sparc/batch-executor.md +0 -54
- package/.claude/commands/sparc/coder.md +0 -54
- package/.claude/commands/sparc/debugger.md +0 -54
- package/.claude/commands/sparc/designer.md +0 -53
- package/.claude/commands/sparc/documenter.md +0 -54
- package/.claude/commands/sparc/innovator.md +0 -54
- package/.claude/commands/sparc/memory-manager.md +0 -54
- package/.claude/commands/sparc/optimizer.md +0 -54
- package/.claude/commands/sparc/orchestrator.md +0 -132
- package/.claude/commands/sparc/researcher.md +0 -54
- package/.claude/commands/sparc/reviewer.md +0 -54
- package/.claude/commands/sparc/sparc-modes.md +0 -174
- package/.claude/commands/sparc/swarm-coordinator.md +0 -54
- package/.claude/commands/sparc/tdd.md +0 -54
- package/.claude/commands/sparc/tester.md +0 -54
- package/.claude/commands/sparc/workflow-manager.md +0 -54
- package/.claude/commands/sparc.js +0 -110
- package/.claude/commands/stream-chain/pipeline.md +0 -121
- package/.claude/commands/stream-chain/run.md +0 -70
- package/.claude/commands/swarm/README.md +0 -15
- package/.claude/commands/swarm/analysis.md +0 -95
- package/.claude/commands/swarm/development.md +0 -96
- package/.claude/commands/swarm/examples.md +0 -168
- package/.claude/commands/swarm/maintenance.md +0 -102
- package/.claude/commands/swarm/optimization.md +0 -117
- package/.claude/commands/swarm/research.md +0 -136
- package/.claude/commands/swarm/swarm-analysis.md +0 -8
- package/.claude/commands/swarm/swarm-background.md +0 -8
- package/.claude/commands/swarm/swarm-init.md +0 -19
- package/.claude/commands/swarm/swarm-modes.md +0 -8
- package/.claude/commands/swarm/swarm-monitor.md +0 -8
- package/.claude/commands/swarm/swarm-spawn.md +0 -19
- package/.claude/commands/swarm/swarm-status.md +0 -8
- package/.claude/commands/swarm/swarm-strategies.md +0 -8
- package/.claude/commands/swarm/swarm.md +0 -27
- package/.claude/commands/swarm/testing.md +0 -131
- package/.claude/commands/swarm.js +0 -423
- package/.claude/commands/testing/playwright-e2e.md +0 -288
- package/.claude/commands/training/README.md +0 -9
- package/.claude/commands/training/model-update.md +0 -25
- package/.claude/commands/training/neural-patterns.md +0 -74
- package/.claude/commands/training/neural-train.md +0 -25
- package/.claude/commands/training/pattern-learn.md +0 -25
- package/.claude/commands/training/specialization.md +0 -63
- package/.claude/commands/truth/start.md +0 -143
- package/.claude/commands/validate-commands.js +0 -223
- package/.claude/commands/verify/check.md +0 -50
- package/.claude/commands/verify/start.md +0 -128
- package/.claude/commands/workflow.js +0 -606
- package/.claude/commands/workflows/README.md +0 -9
- package/.claude/commands/workflows/development.md +0 -78
- package/.claude/commands/workflows/research.md +0 -63
- package/.claude/commands/workflows/workflow-create.md +0 -25
- package/.claude/commands/workflows/workflow-execute.md +0 -25
- package/.claude/commands/workflows/workflow-export.md +0 -25
- package/.claude/coordinator-feedback-pattern.md +0 -326
- package/.claude/coordinator-patterns.md +0 -126
- package/.claude/core/agent-manager.js +0 -80
- package/.claude/core/agent-manager.js.map +0 -1
- package/.claude/core/config.js +0 -1221
- package/.claude/core/config.js.map +0 -1
- package/.claude/core/event-bus.js +0 -136
- package/.claude/core/event-bus.js.map +0 -1
- package/.claude/core/index.js +0 -6
- package/.claude/core/index.js.map +0 -1
- package/.claude/core/json-persistence.js +0 -112
- package/.claude/core/json-persistence.js.map +0 -1
- package/.claude/core/logger.js +0 -245
- package/.claude/core/logger.js.map +0 -1
- package/.claude/core/orchestrator-fixed.js +0 -236
- package/.claude/core/orchestrator-fixed.js.map +0 -1
- package/.claude/core/orchestrator.js +0 -1136
- package/.claude/core/orchestrator.js.map +0 -1
- package/.claude/core/persistence.js +0 -185
- package/.claude/core/persistence.js.map +0 -1
- package/.claude/core/project-manager.js +0 -80
- package/.claude/core/project-manager.js.map +0 -1
- package/.claude/core/slash-command.js +0 -24
- package/.claude/core/version.js +0 -35
- package/.claude/core/version.js.map +0 -1
- package/.claude/helpers/checkpoint-manager.sh +0 -251
- package/.claude/helpers/github-safe.js +0 -106
- package/.claude/helpers/github-setup.sh +0 -28
- package/.claude/helpers/quick-start.sh +0 -19
- package/.claude/helpers/setup-mcp.sh +0 -18
- package/.claude/helpers/standard-checkpoint-hooks.sh +0 -179
- package/.claude/hooks.json +0 -21
- package/.claude/logs/sprint1-hybrid-routing-v2-decision.json +0 -18
- package/.claude/prompts/cfn-loop-context.md +0 -115
- package/.claude/prompts/loop-specific/loop2.md +0 -50
- package/.claude/prompts/loop-specific/loop3.md +0 -43
- package/.claude/prompts/loop-specific/loop4.md +0 -54
- package/.claude/redis-agent-dependencies.md +0 -494
- package/.claude/root-claude-distribute/CLAUDE.md +0 -502
- package/.claude/settings.json +0 -129
- package/.claude/settings.local.json +0 -33
- package/.claude/skills/CFN-LOOP-VALIDATION.md +0 -202
- package/.claude/skills/REDIS-COORDINATION.md +0 -187
- package/.claude/skills/SKILL.md +0 -229
- package/.claude/skills/ace-system/SKILL.md +0 -364
- package/.claude/skills/ace-system/add-bullet.sh +0 -145
- package/.claude/skills/ace-system/invoke-context-curate.sh +0 -192
- package/.claude/skills/ace-system/invoke-context-inject.sh +0 -166
- package/.claude/skills/ace-system/invoke-context-query.sh +0 -127
- package/.claude/skills/ace-system/invoke-context-reflect.sh +0 -98
- package/.claude/skills/ace-system/invoke-context-stats.sh +0 -188
- package/.claude/skills/ace-system/log-merge.sh +0 -67
- package/.claude/skills/ace-system/query-reflections.sh +0 -35
- package/.claude/skills/ace-system/sprint-7-lessons.json +0 -46
- package/.claude/skills/ace-system/store-reflection.sh +0 -46
- package/.claude/skills/ace-system/test-ace-skill.sh +0 -312
- package/.claude/skills/ace-system/update-reflection.sh +0 -41
- package/.claude/skills/agent-discovery/SKILL.md +0 -40
- package/.claude/skills/agent-discovery/agents-registry-clean.json +0 -0
- package/.claude/skills/agent-discovery/agents-registry-fixed.json +0 -19
- package/.claude/skills/agent-discovery/agents-registry.json +0 -718
- package/.claude/skills/agent-discovery/discover-agents.py +0 -175
- package/.claude/skills/agent-discovery/discover-agents.sh +0 -87
- package/.claude/skills/agent-discovery/invoke-registry.sh +0 -11
- package/.claude/skills/agent-discovery/temp_script.py +0 -0
- package/.claude/skills/agent-execution/execute-agent.sh +0 -126
- package/.claude/skills/agent-output-processing/SKILL.md +0 -359
- package/.claude/skills/agent-selector/SKILL.md +0 -90
- package/.claude/skills/agent-selector/select-agents.sh +0 -96
- package/.claude/skills/agent-spawning/SKILL.md +0 -135
- package/.claude/skills/agent-spawning/agent-selection-guide.md +0 -814
- package/.claude/skills/agent-spawning/check-dependencies.sh +0 -30
- package/.claude/skills/agent-spawning/spawn-agent.sh +0 -263
- package/.claude/skills/agent-spawning/spawn-templates.sh +0 -613
- package/.claude/skills/agent-swap/SKILL.md +0 -36
- package/.claude/skills/agent-swap/recommend-swap.sh +0 -60
- package/.claude/skills/analytics/description-refinement-guide.md +0 -164
- package/.claude/skills/analytics/log-skill-invocation.js +0 -122
- package/.claude/skills/analytics/run-production-criteria-tests.sh +0 -126
- package/.claude/skills/analytics/skill-analytics-dashboard.js +0 -113
- package/.claude/skills/analytics/skill-invocation-hook.sh +0 -28
- package/.claude/skills/analytics/skill-invocations.sql +0 -58
- package/.claude/skills/analytics/test-corpus.json +0 -32
- package/.claude/skills/analytics/test-data-generator.js +0 -115
- package/.claude/skills/analytics/test-manual-override-rate.js +0 -285
- package/.claude/skills/analytics/validate-skill-selection.js +0 -188
- package/.claude/skills/api-validation/test-endpoints.sh +0 -54
- package/.claude/skills/automatic-memory-persistence/SKILL.md +0 -73
- package/.claude/skills/automatic-memory-persistence/persist-agent-output.sh +0 -49
- package/.claude/skills/automatic-memory-persistence/query-agent-history.sh +0 -35
- package/.claude/skills/automatic-memory-persistence/test-memory-persistence.sh +0 -235
- package/.claude/skills/cfn-loop-orchestration/SKILL.md +0 -299
- package/.claude/skills/cfn-loop-orchestration/helpers/auto-tune-timeouts.sh +0 -228
- package/.claude/skills/cfn-loop-orchestration/helpers/consensus.sh +0 -84
- package/.claude/skills/cfn-loop-orchestration/helpers/deliverable-verifier.sh +0 -71
- package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +0 -90
- package/.claude/skills/cfn-loop-orchestration/helpers/iteration-manager.sh +0 -87
- package/.claude/skills/cfn-loop-orchestration/helpers/timeout-calculator.sh +0 -51
- package/.claude/skills/cfn-loop-orchestration/inject-loop-context.sh +0 -41
- package/.claude/skills/cfn-loop-orchestration/monitor-execution.sh +0 -156
- package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +0 -840
- package/.claude/skills/cfn-loop-orchestration/security_utils.sh +0 -99
- package/.claude/skills/cfn-loop-orchestration/test-cfn-orchestration.sh +0 -281
- package/.claude/skills/cfn-loop-orchestration/test-edge-cases.sh +0 -188
- package/.claude/skills/cfn-loop-validation/SKILL.md +0 -353
- package/.claude/skills/cfn-loop-validation/check-dependencies.sh +0 -31
- package/.claude/skills/cfn-loop-validation/config.json +0 -161
- package/.claude/skills/cfn-loop-validation/consensus-calculator.js +0 -477
- package/.claude/skills/cfn-loop-validation/evidence-chain.sql +0 -163
- package/.claude/skills/cfn-loop-validation/examples/README.md +0 -453
- package/.claude/skills/cfn-loop-validation/examples/coordinator-full-cfn-loop.sh +0 -234
- package/.claude/skills/cfn-loop-validation/examples/coordinator-loop2-consensus.sh +0 -132
- package/.claude/skills/cfn-loop-validation/examples/coordinator-loop3-gate.sh +0 -115
- package/.claude/skills/cfn-loop-validation/examples/coordinator-redis-integration.sh +0 -186
- package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +0 -252
- package/.claude/skills/cfn-loop-validation/validate-iteration.sh +0 -134
- package/.claude/skills/cfn-loop-validation.sh +0 -70
- package/.claude/skills/complexity-estimator/SKILL.md +0 -96
- package/.claude/skills/complexity-estimator/estimate-complexity.sh +0 -144
- package/.claude/skills/config-management/SKILL.md +0 -34
- package/.claude/skills/config-management/check-dependencies.sh +0 -56
- package/.claude/skills/config-management/config.json +0 -32
- package/.claude/skills/config-management/manage-config.sh +0 -113
- package/.claude/skills/consensus-calculator.js +0 -45
- package/.claude/skills/context-pruner/SKILL.md +0 -75
- package/.claude/skills/context-pruner/prune-context.sh +0 -73
- package/.claude/skills/defense-in-depth/SKILL.md +0 -133
- package/.claude/skills/dependency-extractor/SKILL.md +0 -35
- package/.claude/skills/dependency-extractor/extract-dependencies.sh +0 -66
- package/.claude/skills/epic-decomposer/SKILL.md +0 -44
- package/.claude/skills/epic-decomposer/decompose-epic.sh +0 -104
- package/.claude/skills/event-bus/SKILL.md +0 -412
- package/.claude/skills/event-bus/config.json +0 -111
- package/.claude/skills/event-bus/eventbus-wrapper.cjs +0 -69
- package/.claude/skills/event-bus/invoke-event-publish.sh +0 -147
- package/.claude/skills/event-bus/invoke-event-subscribe.sh +0 -171
- package/.claude/skills/event-bus/invoke-lifecycle-track.sh +0 -201
- package/.claude/skills/event-bus/test-event-bus.sh +0 -280
- package/.claude/skills/evidence-chain.sql +0 -66
- package/.claude/skills/fleet-manager/SKILL.md +0 -412
- package/.claude/skills/fleet-manager/config.json +0 -60
- package/.claude/skills/fleet-manager/invoke-fleet-allocate.sh +0 -182
- package/.claude/skills/fleet-manager/invoke-fleet-balance.sh +0 -239
- package/.claude/skills/fleet-manager/invoke-fleet-metrics.sh +0 -193
- package/.claude/skills/fleet-manager/invoke-fleet-register.sh +0 -124
- package/.claude/skills/fleet-manager/test-fleet-manager.sh +0 -345
- package/.claude/skills/hook-pipeline/SKILL.md +0 -148
- package/.claude/skills/hook-pipeline/auto-resolve.sh +0 -66
- package/.claude/skills/hook-pipeline/check-dependencies.sh +0 -40
- package/.claude/skills/hook-pipeline/feedback-resolver.sh +0 -452
- package/.claude/skills/hook-pipeline/post-edit-handler.sh +0 -154
- package/.claude/skills/hook-pipeline/security-scan.json +0 -60
- package/.claude/skills/hook-pipeline/security-scanner.sh +0 -121
- package/.claude/skills/hook-pipeline/test-root-warning-resolution.sh +0 -148
- package/.claude/skills/hybrid-routing/SKILL.md +0 -46
- package/.claude/skills/hybrid-routing/check-dependencies.sh +0 -52
- package/.claude/skills/hybrid-routing/config.json +0 -26
- package/.claude/skills/hybrid-routing/spawn-worker.sh +0 -44
- package/.claude/skills/improvement-recommender/SKILL.md +0 -33
- package/.claude/skills/improvement-recommender/recommend-improvements.sh +0 -92
- package/.claude/skills/intervention-detector/SKILL.md +0 -39
- package/.claude/skills/intervention-detector/detect-intervention.sh +0 -111
- package/.claude/skills/intervention-orchestrator/SKILL.md +0 -43
- package/.claude/skills/intervention-orchestrator/execute-intervention.sh +0 -59
- package/.claude/skills/loop2-output-processing/SKILL.md +0 -163
- package/.claude/skills/loop2-output-processing/execute-and-extract.sh +0 -77
- package/.claude/skills/loop2-output-processing/execute-and-extract.sh.backup +0 -36
- package/.claude/skills/loop2-output-processing/parse-feedback.sh +0 -147
- package/.claude/skills/loop2-output-processing/process-validator-output.sh +0 -275
- package/.claude/skills/loop2-output-processing/test-bug27-fix.sh +0 -200
- package/.claude/skills/loop2-output-processing/test-loop2-processing.sh +0 -113
- package/.claude/skills/loop3-output-processing/AGENT_COMPLETION_PROTOCOL.md +0 -206
- package/.claude/skills/loop3-output-processing/SKILL.md +0 -421
- package/.claude/skills/loop3-output-processing/calculate-confidence.sh +0 -28
- package/.claude/skills/loop3-output-processing/execute-and-extract.sh +0 -85
- package/.claude/skills/loop3-output-processing/parse-confidence.sh +0 -31
- package/.claude/skills/loop3-output-processing/test-agent-timeout.sh +0 -327
- package/.claude/skills/loop3-output-processing/test-loop3-processing.sh +0 -155
- package/.claude/skills/loop3-output-processing/verify-deliverables.sh +0 -42
- package/.claude/skills/pattern-extraction/SKILL.md +0 -30
- package/.claude/skills/pattern-extraction/extract-patterns.sh +0 -80
- package/.claude/skills/playbook/SKILL.md +0 -113
- package/.claude/skills/playbook/init-playbook.sh +0 -54
- package/.claude/skills/playbook/playbook.db +0 -0
- package/.claude/skills/playbook/query-playbook.sh +0 -79
- package/.claude/skills/playbook/update-playbook.sh +0 -69
- package/.claude/skills/playbook-auto-update/SKILL.md +0 -29
- package/.claude/skills/playbook-auto-update/auto-update-playbook.sh +0 -86
- package/.claude/skills/process-lifecycle/SKILL.md +0 -39
- package/.claude/skills/process-lifecycle/check-dependencies.sh +0 -58
- package/.claude/skills/process-lifecycle/config.json +0 -39
- package/.claude/skills/process-lifecycle/process-manager.sh +0 -144
- package/.claude/skills/product-owner-decision/SKILL.md +0 -332
- package/.claude/skills/product-owner-decision/execute-decision.sh +0 -176
- package/.claude/skills/product-owner-decision/parse-decision.sh +0 -66
- package/.claude/skills/product-owner-decision/validate-deliverables.sh +0 -82
- package/.claude/skills/redis-coordination/AGENT_LOGGING.md +0 -280
- package/.claude/skills/redis-coordination/BZPOPMIN_FIX_SUMMARY.md +0 -209
- package/.claude/skills/redis-coordination/HEARTBEAT.md +0 -57
- package/.claude/skills/redis-coordination/HEARTBEAT_MONITORING.md +0 -267
- package/.claude/skills/redis-coordination/LOGGING.md +0 -260
- package/.claude/skills/redis-coordination/SECURITY_REVIEW.md +0 -25
- package/.claude/skills/redis-coordination/SHUTDOWN_HANDLING.md +0 -164
- package/.claude/skills/redis-coordination/SKILL.md +0 -720
- package/.claude/skills/redis-coordination/agent-log.sh +0 -124
- package/.claude/skills/redis-coordination/agent-recovery.sh +0 -75
- package/.claude/skills/redis-coordination/analyze-task-complexity.sh +0 -277
- package/.claude/skills/redis-coordination/cancel-swarm.sh +0 -221
- package/.claude/skills/redis-coordination/cfn-loop-exec.sh +0 -468
- package/.claude/skills/redis-coordination/cfn-loop-relaunch.sh +0 -29
- package/.claude/skills/redis-coordination/check-dependencies.sh +0 -32
- package/.claude/skills/redis-coordination/collect-confidence-scores.sh +0 -179
- package/.claude/skills/redis-coordination/collect-results.sh +0 -75
- package/.claude/skills/redis-coordination/complete-swarm.sh +0 -75
- package/.claude/skills/redis-coordination/config.json +0 -61
- package/.claude/skills/redis-coordination/data/cfn-loop.db +0 -0
- package/.claude/skills/redis-coordination/demos/phase4-wake-queue-test-report.md +0 -82
- package/.claude/skills/redis-coordination/demos/test-bzpopmin-fix.sh +0 -274
- package/.claude/skills/redis-coordination/demos/test-cancel-swarm.sh +0 -276
- package/.claude/skills/redis-coordination/demos/test-dlq.sh +0 -129
- package/.claude/skills/redis-coordination/demos/test-iteration-feedback.sh +0 -320
- package/.claude/skills/redis-coordination/demos/test-orchestrator.sh +0 -249
- package/.claude/skills/redis-coordination/demos/test-priority-wake-phase4-unix.sh +0 -148
- package/.claude/skills/redis-coordination/demos/test-priority-wake-phase4.sh +0 -163
- package/.claude/skills/redis-coordination/demos/test-priority-wake.sh +0 -138
- package/.claude/skills/redis-coordination/demos/test-quick-fix.sh +0 -81
- package/.claude/skills/redis-coordination/demos/test-quorum-absolute.sh +0 -45
- package/.claude/skills/redis-coordination/demos/test-quorum-fallback.sh +0 -68
- package/.claude/skills/redis-coordination/demos/test-quorum-percentage.sh +0 -56
- package/.claude/skills/redis-coordination/demos/test-quorum-with-retry.sh +0 -81
- package/.claude/skills/redis-coordination/demos/test-quorum.sh +0 -57
- package/.claude/skills/redis-coordination/demos/test-shutdown-handling.sh +0 -187
- package/.claude/skills/redis-coordination/demos/test-shutdown.sh +0 -160
- package/.claude/skills/redis-coordination/demos/test-utils-unix.sh +0 -97
- package/.claude/skills/redis-coordination/demos/test-utils.sh +0 -97
- package/.claude/skills/redis-coordination/demos/test-waiting-mode.sh +0 -59
- package/.claude/skills/redis-coordination/examples/README.md +0 -73
- package/.claude/skills/redis-coordination/examples/grafana-dashboard.json +0 -352
- package/.claude/skills/redis-coordination/examples/hierarchical-pattern.sh +0 -127
- package/.claude/skills/redis-coordination/examples/mesh-pattern.sh +0 -171
- package/.claude/skills/redis-coordination/examples/timeout-handling.sh +0 -227
- package/.claude/skills/redis-coordination/examples/waiting-mode-pattern.sh +0 -239
- package/.claude/skills/redis-coordination/execute-product-owner-decision.sh +0 -258
- package/.claude/skills/redis-coordination/get-agent-timeout.sh +0 -177
- package/.claude/skills/redis-coordination/heartbeat-functions.sh +0 -137
- package/.claude/skills/redis-coordination/heartbeat-protocol.md +0 -106
- package/.claude/skills/redis-coordination/heartbeat.sh +0 -126
- package/.claude/skills/redis-coordination/init-swarm.sh +0 -148
- package/.claude/skills/redis-coordination/invoke-redis-pattern.sh +0 -220
- package/.claude/skills/redis-coordination/invoke-waiting-mode.sh +0 -283
- package/.claude/skills/redis-coordination/invoke-waiting-mode.sh.backup-p7 +0 -423
- package/.claude/skills/redis-coordination/list-active-swarms.sh +0 -147
- package/.claude/skills/redis-coordination/log-event.sh +0 -109
- package/.claude/skills/redis-coordination/metrics-export.sh +0 -674
- package/.claude/skills/redis-coordination/metrics-schema.json +0 -66
- package/.claude/skills/redis-coordination/metrics-storage.md +0 -31
- package/.claude/skills/redis-coordination/monitor-cfn-violations.sh +0 -391
- package/.claude/skills/redis-coordination/monitor-heartbeats.sh +0 -101
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop-v3.sh +0 -141
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh +0 -31
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup +0 -38
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1761167675 +0 -1672
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-p5 +0 -1604
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase1 +0 -1550
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase2 +0 -1621
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase3 +0 -1621
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.broken +0 -1627
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.corrupted +0 -80
- package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.deprecated +0 -1864
- package/.claude/skills/redis-coordination/priority-wake-mechanism.md +0 -75
- package/.claude/skills/redis-coordination/priority_wake.py +0 -134
- package/.claude/skills/redis-coordination/query-dlq.sh +0 -162
- package/.claude/skills/redis-coordination/query-logs.sh +0 -103
- package/.claude/skills/redis-coordination/redis-pattern.sh +0 -619
- package/.claude/skills/redis-coordination/retrieve-context.sh +0 -58
- package/.claude/skills/redis-coordination/select-specialist-agent.sh +0 -371
- package/.claude/skills/redis-coordination/semantic-match-tfidf.py +0 -252
- package/.claude/skills/redis-coordination/send-heartbeat.sh +0 -165
- package/.claude/skills/redis-coordination/signal.sh +0 -38
- package/.claude/skills/redis-coordination/store-context.sh +0 -86
- package/.claude/skills/redis-coordination/store-epic-context.sh +0 -123
- package/.claude/skills/redis-coordination/test-context-injection.sh +0 -354
- package/.claude/skills/redis-coordination/test-timeout-enforcement.sh +0 -513
- package/.claude/skills/redis-coordination/tests/convert-line-endings.sh +0 -15
- package/.claude/skills/redis-coordination/tests/dlq-functionality-test.sh +0 -102
- package/.claude/skills/redis-coordination/tests/edge-cases-test.sh +0 -99
- package/.claude/skills/redis-coordination/tests/integration-test.sh +0 -170
- package/.claude/skills/redis-coordination/tests/retry-mechanism-test.sh +0 -82
- package/.claude/skills/redis-coordination/tests/run-test-suite.sh +0 -92
- package/.claude/skills/redis-coordination/tests/run-tests.sh +0 -4
- package/.claude/skills/redis-coordination/tests/test-heartbeat-monitoring.sh +0 -418
- package/.claude/skills/redis-coordination/tests/test-heartbeat-simple.sh +0 -124
- package/.claude/skills/redis-coordination/tests/test-primitives.sh +0 -166
- package/.claude/skills/redis-coordination/tests/test-utils.sh +0 -54
- package/.claude/skills/redis-coordination/tests/test_coordination_primitives.sh.deprecated +0 -20
- package/.claude/skills/redis-coordination/tests/test_utils.sh +0 -49
- package/.claude/skills/redis-coordination/v2_modularization/core_orchestration.sh +0 -76
- package/.claude/skills/redis-coordination/validate-parameters.sh +0 -492
- package/.claude/skills/retrospective-report/SKILL.md +0 -31
- package/.claude/skills/retrospective-report/generate-report.sh +0 -101
- package/.claude/skills/run-all-skill-tests.sh +0 -124
- package/.claude/skills/scope-simplifier/SKILL.md +0 -37
- package/.claude/skills/scope-simplifier/simplify-scope.sh +0 -68
- package/.claude/skills/simplified-agent-lifecycle/COST_ANALYSIS.md +0 -49
- package/.claude/skills/simplified-agent-lifecycle/DESIGN.md +0 -98
- package/.claude/skills/simplified-agent-lifecycle/MIGRATION_PLAN.md +0 -74
- package/.claude/skills/skill-builder/SKILL.md +0 -910
- package/.claude/skills/specialist-injection/SKILL.md +0 -41
- package/.claude/skills/specialist-injection/recommend-specialist.sh +0 -57
- package/.claude/skills/sprint-execution/SKILL.md +0 -27
- package/.claude/skills/sprint-execution/execute-sprint-task.sh +0 -59
- package/.claude/skills/sprint-execution/execute-sprint.sh +0 -65
- package/.claude/skills/sprint-planner/SKILL.md +0 -37
- package/.claude/skills/sprint-planner/plan-sprint.sh +0 -85
- package/.claude/skills/sqlite-memory/IMPLEMENTATION_REPORT.md +0 -393
- package/.claude/skills/sqlite-memory/QUICK_REFERENCE.md +0 -204
- package/.claude/skills/sqlite-memory/SKILL.md +0 -415
- package/.claude/skills/sqlite-memory/acl-queries.sql +0 -452
- package/.claude/skills/sqlite-memory/check-dependencies.sh +0 -36
- package/.claude/skills/sqlite-memory/config.json +0 -45
- package/.claude/skills/sqlite-memory/memory-cli.sh +0 -88
- package/.claude/skills/sqlite-memory/test-state-persistence.js +0 -187
- package/.claude/skills/sqlite-memory/ttl-cleanup.sh +0 -274
- package/.claude/skills/standardized-error-handling/SKILL.md +0 -56
- package/.claude/skills/standardized-error-handling/capture-agent-error.sh +0 -87
- package/.claude/skills/standardized-error-handling/test-error-handling.sh +0 -166
- package/.claude/skills/task-classifier/SKILL.md +0 -94
- package/.claude/skills/task-classifier/classify-task.sh +0 -115
- package/.claude/skills/test-execution/SKILL.md +0 -128
- package/.claude/skills/test-execution/check-dependencies.sh +0 -36
- package/.claude/skills/test-execution/test-cache-reader.sh +0 -134
- package/.claude/skills/test-execution/test-concurrent-conflicts.sh +0 -115
- package/.claude/skills/test-execution/test-coordinator-pattern.sh +0 -109
- package/.claude/skills/test-execution-coordinator-pattern.md +0 -228
- package/.claude/skills/transparency-middleware/Cargo.toml +0 -18
- package/.claude/skills/transparency-middleware/SECURITY.md +0 -41
- package/.claude/skills/transparency-middleware/SKILL.md +0 -91
- package/.claude/skills/transparency-middleware/TEST_RESULTS.md +0 -174
- package/.claude/skills/transparency-middleware/config.json +0 -31
- package/.claude/skills/transparency-middleware/examples/basic-usage.ts +0 -39
- package/.claude/skills/transparency-middleware/examples/batch-processing.ts +0 -52
- package/.claude/skills/transparency-middleware/examples/custom-filtering.ts +0 -61
- package/.claude/skills/transparency-middleware/invoke-transparency-filter.sh +0 -98
- package/.claude/skills/transparency-middleware/invoke-transparency-init.sh +0 -224
- package/.claude/skills/transparency-middleware/invoke-transparency-level.sh +0 -333
- package/.claude/skills/transparency-middleware/invoke-transparency-metrics.sh +0 -345
- package/.claude/skills/transparency-middleware/invoke-transparency-observe.sh +0 -140
- package/.claude/skills/transparency-middleware/invoke-transparency-stop.sh +0 -235
- package/.claude/skills/transparency-middleware/memory_query.rs +0 -85
- package/.claude/skills/transparency-middleware/memory_repository.rs +0 -140
- package/.claude/skills/transparency-middleware/memory_schema.rs +0 -64
- package/.claude/skills/transparency-middleware/middleware-config.sh +0 -29
- package/.claude/skills/transparency-middleware/performance-benchmark.sh +0 -79
- package/.claude/skills/transparency-middleware/test-e2e.sh +0 -406
- package/.claude/skills/transparency-middleware/test-integration.sh +0 -162
- package/.claude/skills/transparency-middleware/test-transparency-skill.sh +0 -368
- package/.claude/skills/transparency-middleware/test-transparency-skill.sh.unix +0 -126
- package/.claude/skills/transparency-middleware/tests/input-validation.sh +0 -93
- package/.claude/skills/transparency-middleware/wrap-agent.sh +0 -132
- package/.claude/skills/validation-templates/SKILL.md +0 -47
- package/.claude/skills/validation-templates/content.json +0 -38
- package/.claude/skills/validation-templates/data.json +0 -38
- package/.claude/skills/validation-templates/design.json +0 -38
- package/.claude/skills/validation-templates/infrastructure.json +0 -38
- package/.claude/skills/validation-templates/research.json +0 -38
- package/.claude/skills/validation-templates/software.json +0 -38
- package/.claude/skills/web-portal/DESIGN.md +0 -117
- package/.claude/skills/web-portal/SKILL.md +0 -679
- package/.claude/skills/web-portal/invoke-portal-agents.sh +0 -129
- package/.claude/skills/web-portal/invoke-portal-dashboard.sh +0 -85
- package/.claude/skills/web-portal/invoke-portal-events.sh +0 -125
- package/.claude/skills/web-portal/invoke-portal-metrics.sh +0 -112
- package/.claude/skills/web-portal/invoke-portal-start.sh +0 -135
- package/.claude/skills/web-portal/invoke-portal-stop.sh +0 -121
- package/.claude/skills/web-portal/test-web-portal-skill.sh +0 -51
- package/.claude/skills/web-portal/validate-deployment.sh +0 -85
- package/.claude/skills/webapp-testing/SCREENSHOT_NAMING_CONVENTION.md +0 -547
- package/.claude/skills/webapp-testing/SKILL.md +0 -877
- package/.claude/skills/webapp-testing/capture-screenshot.sh +0 -238
- package/.claude/skills/webapp-testing/cfn-loop-integration.sh +0 -265
- package/.claude/skills/webapp-testing/compare-screenshots.sh +0 -199
- package/.claude/skills/webapp-testing/init-storage.sh +0 -150
- package/.claude/skills/webapp-testing/set-baseline.sh +0 -196
- package/.claude/skills/webapp-testing/test-webapp-testing.sh +0 -233
- package/.claude/slash-commands.json +0 -92
- package/.claude/spawn-pattern-examples.md +0 -500
- package/.claude/sprint-configs/cfn-naming-standardization.json +0 -729
- package/.claude/sprint-reports/sprint-1.4-self-correction-monitoring.json +0 -64
- package/.claude/swarm-memory.db +0 -0
- package/.claude/templates/agent-optimization-plan.md +0 -439
- package/.claude/templates/bulk-optimization-strategy.md +0 -367
- package/.claude/templates/cfn-loop-mechanics.md +0 -80
- package/.claude/templates/coordinator-patterns.md +0 -75
- package/.claude/templates/memory-operations.md +0 -200
- package/.claude/templates/post-edit-validation.md +0 -109
- package/.claude/templates/redis-coordination.md +0 -140
- package/.claude/templates/remaining-agent-analysis.md +0 -121
- package/.claude/templates/swarm-coordination.md +0 -103
- package/.claude/templates/team-dynamics.md +0 -82
- package/readme/CLAUDE.md +0 -429
- /package/.claude/agents/{coordinators → cfn-dev-team/coordinators}/multi-sprint-coordinator.md +0 -0
- /package/.claude/agents/{developers → cfn-dev-team/developers}/backend-dev.md +0 -0
- /package/.claude/agents/{developers → cfn-dev-team/developers}/react-frontend-engineer.md +0 -0
- /package/.claude/agents/{developers → cfn-dev-team/developers}/researcher.md +0 -0
- /package/.claude/agents/{developers → cfn-dev-team/developers}/state-architect.md +0 -0
- /package/.claude/agents/{developers → cfn-dev-team/developers}/ui-designer.md +0 -0
- /package/.claude/agents/{reviewers → cfn-dev-team/reviewers}/README.md +0 -0
- /package/.claude/agents/{testers → cfn-dev-team/testers}/README.md +0 -0
- /package/.claude/agents/{testers → cfn-dev-team/testers}/playwright-tester.md +0 -0
- /package/.claude/agents/{testers → cfn-dev-team/testers}/tester.md +0 -0
- /package/.claude/{data → cfn-data}/cfn-loop.db +0 -0
- /package/.claude/{data → cfn-data}/cfn_loop_logs.db +0 -0
- /package/.claude/commands/{README.md → cfn/README.md} +0 -0
- /package/.claude/commands/{auto-compact.md → cfn/auto-compact.md} +0 -0
- /package/.claude/commands/{cfn-claude-sync.md → cfn/cfn-claude-sync.md} +0 -0
- /package/.claude/commands/{cfn-loop-document.md → cfn/cfn-loop-document.md} +0 -0
- /package/.claude/commands/{cfn-mode.md → cfn/cfn-mode.md} +0 -0
- /package/.claude/commands/{claude-md.md → cfn/claude-md.md} +0 -0
- /package/.claude/commands/{claude-soul.md → cfn/claude-soul.md} +0 -0
- /package/.claude/commands/{context-query.md → cfn/context-query.md} +0 -0
- /package/.claude/commands/{cost-savings-off.md → cfn/cost-savings-off.md} +0 -0
- /package/.claude/commands/{cost-savings-on.md → cfn/cost-savings-on.md} +0 -0
- /package/.claude/commands/{cost-savings-status.md → cfn/cost-savings-status.md} +0 -0
- /package/.claude/commands/{custom-routing-activate.md → cfn/custom-routing-activate.md} +0 -0
- /package/.claude/commands/{custom-routing-deactivate.md → cfn/custom-routing-deactivate.md} +0 -0
- /package/.claude/commands/{dependency-recommendations.md → cfn/dependency-recommendations.md} +0 -0
- /package/.claude/commands/{fullstack.md → cfn/fullstack.md} +0 -0
- /package/.claude/commands/{github-commit.md → cfn/github-commit.md} +0 -0
- /package/.claude/commands/{github.md → cfn/github.md} +0 -0
- /package/.claude/commands/{hello-world-tests.md → cfn/hello-world-tests.md} +0 -0
- /package/.claude/commands/{hooks.md → cfn/hooks.md} +0 -0
- /package/.claude/commands/{launch-web-dashboard.md → cfn/launch-web-dashboard.md} +0 -0
- /package/.claude/commands/{metrics-summary.md → cfn/metrics-summary.md} +0 -0
- /package/.claude/commands/{neural.md → cfn/neural.md} +0 -0
- /package/.claude/commands/{parse-epic.md → cfn/parse-epic.md} +0 -0
- /package/.claude/commands/{performance.md → cfn/performance.md} +0 -0
- /package/.claude/commands/{sparc.md → cfn/sparc.md} +0 -0
- /package/.claude/commands/{suggest-improvements.md → cfn/suggest-improvements.md} +0 -0
- /package/.claude/commands/{suggest-templates.md → cfn/suggest-templates.md} +0 -0
- /package/.claude/commands/{swarm.md → cfn/swarm.md} +0 -0
- /package/.claude/commands/{switch-api.md → cfn/switch-api.md} +0 -0
- /package/.claude/commands/{workflow.md → cfn/workflow.md} +0 -0
- /package/.claude/commands/{write-plan.md → cfn/write-plan.md} +0 -0
- /package/.claude/hooks/{BACKUP_USAGE.md → cfn-BACKUP_USAGE.md} +0 -0
- /package/.claude/hooks/{invoke-post-edit.sh → cfn-invoke-post-edit.sh} +0 -0
- /package/.claude/hooks/{post-edit-cfn-retrospective.sh → cfn-post-edit-cfn-retrospective.sh} +0 -0
- /package/.claude/hooks/{post-edit.config.json → cfn-post-edit.config.json} +0 -0
- /package/.claude/hooks/{post-edit.sh → cfn-post-edit.sh} +0 -0
- /package/.claude/hooks/{pre-edit-backup.sh → cfn-pre-edit-backup.sh} +0 -0
- /package/.claude/hooks/{restore-from-backup.sh → cfn-restore-from-backup.sh} +0 -0
- /package/.claude/skills/{agent-spawning → cfn-agent-spawning}/README.md +0 -0
- /package/.claude/skills/{analytics → cfn-analytics}/README.md +0 -0
- /package/.claude/skills/{config-management → cfn-config-management}/README.md +0 -0
- /package/.claude/skills/{event-bus → cfn-event-bus}/README.md +0 -0
- /package/.claude/skills/{fleet-manager → cfn-fleet-manager}/README.md +0 -0
- /package/.claude/skills/{hook-pipeline → cfn-hook-pipeline}/README.md +0 -0
- /package/.claude/skills/{hybrid-routing → cfn-hybrid-routing}/README.md +0 -0
- /package/.claude/skills/{process-lifecycle → cfn-process-lifecycle}/README.md +0 -0
- /package/.claude/skills/{redis-coordination → cfn-redis-coordination}/README.md +0 -0
- /package/.claude/skills/{sqlite-memory → cfn-sqlite-memory}/README.md +0 -0
- /package/.claude/skills/{test-execution → cfn-test-execution}/README.md +0 -0
- /package/.claude/skills/{transparency-middleware → cfn-transparency-middleware}/README.md +0 -0
- /package/.claude/skills/{webapp-testing → cfn-webapp-testing}/README.md +0 -0
|
@@ -1,477 +0,0 @@
|
|
|
1
|
-
const sqlite3 = require('sqlite3').verbose();
|
|
2
|
-
const path = require('path');
|
|
3
|
-
|
|
4
|
-
class CFNLoopValidator {
|
|
5
|
-
constructor(config = {}) {
|
|
6
|
-
this.mode = config.mode || 'standard';
|
|
7
|
-
this.maxRetries = config.maxRetries || 10;
|
|
8
|
-
this.consensusThreshold = this.getThresholdForMode(this.mode);
|
|
9
|
-
this.validatorCount = config.validatorCount || 3;
|
|
10
|
-
|
|
11
|
-
// Initialize database
|
|
12
|
-
this.db = new sqlite3.Database(path.join(__dirname, 'evidence-chain.db'));
|
|
13
|
-
this.initializeDatabase();
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
getThresholdForMode(mode) {
|
|
17
|
-
const thresholds = {
|
|
18
|
-
mvp: 0.7,
|
|
19
|
-
standard: 0.85,
|
|
20
|
-
enterprise: 0.95,
|
|
21
|
-
};
|
|
22
|
-
return thresholds[mode] || thresholds.standard;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
async initializeDatabase() {
|
|
26
|
-
return new Promise((resolve, reject) => {
|
|
27
|
-
this.db.serialize(() => {
|
|
28
|
-
this.db.run(`
|
|
29
|
-
CREATE TABLE IF NOT EXISTS validation_evidence (
|
|
30
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
31
|
-
template_id TEXT,
|
|
32
|
-
validator_id TEXT,
|
|
33
|
-
score REAL,
|
|
34
|
-
evidence_type TEXT,
|
|
35
|
-
evidence_data TEXT,
|
|
36
|
-
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP
|
|
37
|
-
)
|
|
38
|
-
`);
|
|
39
|
-
|
|
40
|
-
this.db.run(`
|
|
41
|
-
CREATE TABLE IF NOT EXISTS consensus_sessions (
|
|
42
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
43
|
-
session_id TEXT,
|
|
44
|
-
template_id TEXT,
|
|
45
|
-
mode TEXT,
|
|
46
|
-
final_score REAL,
|
|
47
|
-
consensus_achieved BOOLEAN,
|
|
48
|
-
retry_count INTEGER,
|
|
49
|
-
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP
|
|
50
|
-
)
|
|
51
|
-
`);
|
|
52
|
-
|
|
53
|
-
this.db.run(`
|
|
54
|
-
CREATE TABLE IF NOT EXISTS validator_scores (
|
|
55
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
56
|
-
session_id TEXT,
|
|
57
|
-
validator_id TEXT,
|
|
58
|
-
score REAL,
|
|
59
|
-
validation_time INTEGER,
|
|
60
|
-
errors TEXT,
|
|
61
|
-
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP
|
|
62
|
-
)
|
|
63
|
-
`);
|
|
64
|
-
|
|
65
|
-
resolve();
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
async validate(template, templateId = null) {
|
|
71
|
-
const sessionId = this.generateSessionId();
|
|
72
|
-
let retryCount = 0;
|
|
73
|
-
let consensusAchieved = false;
|
|
74
|
-
let finalScore = 0;
|
|
75
|
-
|
|
76
|
-
while (retryCount < this.maxRetries && !consensusAchieved) {
|
|
77
|
-
try {
|
|
78
|
-
// Spawn validators in parallel
|
|
79
|
-
const validators = this.spawnValidators(
|
|
80
|
-
this.validatorCount,
|
|
81
|
-
template,
|
|
82
|
-
sessionId
|
|
83
|
-
);
|
|
84
|
-
const results = await Promise.all(validators);
|
|
85
|
-
|
|
86
|
-
// Calculate consensus
|
|
87
|
-
const consensusResult = await this.calculateConsensus(
|
|
88
|
-
results,
|
|
89
|
-
sessionId
|
|
90
|
-
);
|
|
91
|
-
consensusAchieved = consensusResult.consensusAchieved;
|
|
92
|
-
finalScore = consensusResult.averageScore;
|
|
93
|
-
|
|
94
|
-
if (consensusAchieved) {
|
|
95
|
-
await this.recordConsensusSession(
|
|
96
|
-
sessionId,
|
|
97
|
-
templateId,
|
|
98
|
-
finalScore,
|
|
99
|
-
true,
|
|
100
|
-
retryCount
|
|
101
|
-
);
|
|
102
|
-
} else {
|
|
103
|
-
retryCount++;
|
|
104
|
-
await new Promise((resolve) =>
|
|
105
|
-
setTimeout(resolve, 1000 * retryCount)
|
|
106
|
-
); // Exponential backoff
|
|
107
|
-
}
|
|
108
|
-
} catch (error) {
|
|
109
|
-
retryCount++;
|
|
110
|
-
console.error(
|
|
111
|
-
`Validation attempt ${retryCount} failed:`,
|
|
112
|
-
error.message
|
|
113
|
-
);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
if (!consensusAchieved) {
|
|
118
|
-
await this.recordConsensusSession(
|
|
119
|
-
sessionId,
|
|
120
|
-
templateId,
|
|
121
|
-
finalScore,
|
|
122
|
-
false,
|
|
123
|
-
retryCount
|
|
124
|
-
);
|
|
125
|
-
throw new Error(
|
|
126
|
-
`Consensus not achieved after ${this.maxRetries} attempts`
|
|
127
|
-
);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
return {
|
|
131
|
-
sessionId,
|
|
132
|
-
score: finalScore,
|
|
133
|
-
consensusThreshold: this.consensusThreshold,
|
|
134
|
-
mode: this.mode,
|
|
135
|
-
achievedConsensus: true,
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
spawnValidators(count, template, sessionId) {
|
|
140
|
-
const validators = [];
|
|
141
|
-
|
|
142
|
-
for (let i = 0; i < count; i++) {
|
|
143
|
-
const validatorId = `validator_${i}_${Date.now()}`;
|
|
144
|
-
validators.push(this.runValidator(validatorId, template, sessionId));
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
return validators;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
async runValidator(validatorId, template, sessionId) {
|
|
151
|
-
const startTime = Date.now();
|
|
152
|
-
|
|
153
|
-
try {
|
|
154
|
-
// Simulate different validation strategies
|
|
155
|
-
const validationStrategies = [
|
|
156
|
-
this.detectLoopsBasic,
|
|
157
|
-
this.detectLoopsAdvanced,
|
|
158
|
-
this.detectLoopsDeepAnalysis,
|
|
159
|
-
];
|
|
160
|
-
|
|
161
|
-
const strategy =
|
|
162
|
-
validationStrategies[
|
|
163
|
-
Math.floor(Math.random() * validationStrategies.length)
|
|
164
|
-
];
|
|
165
|
-
const score = await strategy.call(this, template);
|
|
166
|
-
const validationTime = Date.now() - startTime;
|
|
167
|
-
|
|
168
|
-
// Store validator result
|
|
169
|
-
await this.storeValidatorScore(
|
|
170
|
-
sessionId,
|
|
171
|
-
validatorId,
|
|
172
|
-
score,
|
|
173
|
-
validationTime,
|
|
174
|
-
null
|
|
175
|
-
);
|
|
176
|
-
|
|
177
|
-
// Store evidence
|
|
178
|
-
await this.storeEvidence(
|
|
179
|
-
sessionId,
|
|
180
|
-
validatorId,
|
|
181
|
-
'validation_score',
|
|
182
|
-
JSON.stringify({
|
|
183
|
-
score,
|
|
184
|
-
validationTime,
|
|
185
|
-
strategy: strategy.name,
|
|
186
|
-
})
|
|
187
|
-
);
|
|
188
|
-
|
|
189
|
-
return {
|
|
190
|
-
validatorId,
|
|
191
|
-
score,
|
|
192
|
-
validationTime,
|
|
193
|
-
sessionId,
|
|
194
|
-
};
|
|
195
|
-
} catch (error) {
|
|
196
|
-
const validationTime = Date.now() - startTime;
|
|
197
|
-
await this.storeValidatorScore(
|
|
198
|
-
sessionId,
|
|
199
|
-
validatorId,
|
|
200
|
-
0,
|
|
201
|
-
validationTime,
|
|
202
|
-
error.message
|
|
203
|
-
);
|
|
204
|
-
throw error;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
detectLoopsBasic(template) {
|
|
209
|
-
// Basic loop detection - simplified for demonstration
|
|
210
|
-
const resources = template.Resources || {};
|
|
211
|
-
const hasLoops = Object.keys(resources).length > 10; // Simplified logic
|
|
212
|
-
return hasLoops ? Math.random() * 0.3 + 0.6 : Math.random() * 0.2 + 0.8;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
detectLoopsAdvanced(template) {
|
|
216
|
-
// Advanced loop detection
|
|
217
|
-
const resources = template.Resources || {};
|
|
218
|
-
const conditions = template.Conditions || {};
|
|
219
|
-
|
|
220
|
-
let loopScore = 0.5;
|
|
221
|
-
|
|
222
|
-
// Check for circular references
|
|
223
|
-
const resourceNames = Object.keys(resources);
|
|
224
|
-
for (let i = 0; i < resourceNames.length; i++) {
|
|
225
|
-
for (let j = i + 1; j < resourceNames.length; j++) {
|
|
226
|
-
if (
|
|
227
|
-
this.hasCircularDependency(
|
|
228
|
-
resources[resourceNames[i]],
|
|
229
|
-
resources[resourceNames[j]]
|
|
230
|
-
)
|
|
231
|
-
) {
|
|
232
|
-
loopScore += 0.1;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
return Math.min(loopScore, 1.0);
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
detectLoopsDeepAnalysis(template) {
|
|
241
|
-
// Deep analysis with comprehensive checks
|
|
242
|
-
const resources = template.Resources || {};
|
|
243
|
-
const conditions = template.Conditions || {};
|
|
244
|
-
const outputs = template.Outputs || {};
|
|
245
|
-
|
|
246
|
-
let score = 0.5;
|
|
247
|
-
|
|
248
|
-
// Analyze resource dependencies
|
|
249
|
-
score += this.analyzeResourceDependencies(resources) * 0.3;
|
|
250
|
-
|
|
251
|
-
// Check condition loops
|
|
252
|
-
score += this.analyzeConditionLoops(conditions) * 0.2;
|
|
253
|
-
|
|
254
|
-
// Check output dependencies
|
|
255
|
-
score += this.analyzeOutputDependencies(outputs, resources) * 0.2;
|
|
256
|
-
|
|
257
|
-
// Check intrinsic function complexity
|
|
258
|
-
score += this.analyzeIntrinsicFunctions(template) * 0.3;
|
|
259
|
-
|
|
260
|
-
return Math.min(score, 1.0);
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
hasCircularDependency(resource1, resource2) {
|
|
264
|
-
// Simplified circular dependency check
|
|
265
|
-
return Math.random() > 0.7; // Random for demo
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
analyzeResourceDependencies(resources) {
|
|
269
|
-
const resourceNames = Object.keys(resources);
|
|
270
|
-
let complexity = 0;
|
|
271
|
-
|
|
272
|
-
resourceNames.forEach((name) => {
|
|
273
|
-
const resource = resources[name];
|
|
274
|
-
const properties = resource.Properties || {};
|
|
275
|
-
const dependsOn = resource.DependsOn || [];
|
|
276
|
-
|
|
277
|
-
complexity += dependsOn.length * 0.1;
|
|
278
|
-
});
|
|
279
|
-
|
|
280
|
-
return Math.min(complexity / resourceNames.length, 1.0);
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
analyzeConditionLoops(conditions) {
|
|
284
|
-
const conditionNames = Object.keys(conditions);
|
|
285
|
-
let loopCount = 0;
|
|
286
|
-
|
|
287
|
-
// Check for condition references
|
|
288
|
-
conditionNames.forEach((name) => {
|
|
289
|
-
const condition = conditions[name];
|
|
290
|
-
if (condition && typeof condition === 'object') {
|
|
291
|
-
const fn = condition.Fn || condition.Ref || condition.Condition;
|
|
292
|
-
if (fn && conditionNames.includes(fn)) {
|
|
293
|
-
loopCount++;
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
});
|
|
297
|
-
|
|
298
|
-
return Math.min(loopCount / conditionNames.length, 1.0);
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
analyzeOutputDependencies(outputs, resources) {
|
|
302
|
-
const outputNames = Object.keys(outputs);
|
|
303
|
-
let dependencyCount = 0;
|
|
304
|
-
|
|
305
|
-
outputNames.forEach((name) => {
|
|
306
|
-
const output = outputs[name];
|
|
307
|
-
const value = output.Value;
|
|
308
|
-
if (value && typeof value === 'string') {
|
|
309
|
-
// Check if output references resources
|
|
310
|
-
const resourceNames = Object.keys(resources);
|
|
311
|
-
resourceNames.forEach((resourceName) => {
|
|
312
|
-
if (
|
|
313
|
-
value.includes(`!Ref ${resourceName}`) ||
|
|
314
|
-
value.includes(`!GetAtt ${resourceName}`)
|
|
315
|
-
) {
|
|
316
|
-
dependencyCount++;
|
|
317
|
-
}
|
|
318
|
-
});
|
|
319
|
-
}
|
|
320
|
-
});
|
|
321
|
-
|
|
322
|
-
return Math.min(dependencyCount / outputNames.length, 1.0);
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
analyzeIntrinsicFunctions(template) {
|
|
326
|
-
const templateString = JSON.stringify(template);
|
|
327
|
-
const intrinsicFunctions = [
|
|
328
|
-
'Fn::If',
|
|
329
|
-
'Fn::Join',
|
|
330
|
-
'Fn::Select',
|
|
331
|
-
'Fn::Split',
|
|
332
|
-
'Fn::FindInMap',
|
|
333
|
-
'Fn::GetAZs',
|
|
334
|
-
'Fn::ImportValue',
|
|
335
|
-
'Fn::GetAtt',
|
|
336
|
-
'Fn::Join',
|
|
337
|
-
'Fn::Select',
|
|
338
|
-
'Fn::Split',
|
|
339
|
-
];
|
|
340
|
-
|
|
341
|
-
let functionCount = 0;
|
|
342
|
-
intrinsicFunctions.forEach((fn) => {
|
|
343
|
-
const regex = new RegExp(`"${fn}"`, 'g');
|
|
344
|
-
const matches = templateString.match(regex);
|
|
345
|
-
if (matches) {
|
|
346
|
-
functionCount += matches.length;
|
|
347
|
-
}
|
|
348
|
-
});
|
|
349
|
-
|
|
350
|
-
return Math.min(functionCount / 10, 1.0); // Normalize to 0-1
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
async calculateConsensus(results, sessionId) {
|
|
354
|
-
if (results.length === 0) {
|
|
355
|
-
return { consensusAchieved: false, averageScore: 0 };
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
const scores = results.map((r) => r.score);
|
|
359
|
-
const averageScore =
|
|
360
|
-
scores.reduce((sum, score) => sum + score, 0) / scores.length;
|
|
361
|
-
const standardDeviation = Math.sqrt(
|
|
362
|
-
scores.reduce(
|
|
363
|
-
(sum, score) => sum + Math.pow(score - averageScore, 2),
|
|
364
|
-
0
|
|
365
|
-
) / scores.length
|
|
366
|
-
);
|
|
367
|
-
|
|
368
|
-
const consensusAchieved =
|
|
369
|
-
averageScore >= this.consensusThreshold && standardDeviation <= 0.1;
|
|
370
|
-
|
|
371
|
-
await this.storeEvidence(
|
|
372
|
-
sessionId,
|
|
373
|
-
'consensus_calculator',
|
|
374
|
-
'consensus_result',
|
|
375
|
-
JSON.stringify({
|
|
376
|
-
scores,
|
|
377
|
-
averageScore,
|
|
378
|
-
standardDeviation,
|
|
379
|
-
consensusThreshold: this.consensusThreshold,
|
|
380
|
-
consensusAchieved,
|
|
381
|
-
})
|
|
382
|
-
);
|
|
383
|
-
|
|
384
|
-
return { consensusAchieved, averageScore, standardDeviation };
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
async storeValidatorScore(
|
|
388
|
-
sessionId,
|
|
389
|
-
validatorId,
|
|
390
|
-
score,
|
|
391
|
-
validationTime,
|
|
392
|
-
errors
|
|
393
|
-
) {
|
|
394
|
-
return new Promise((resolve, reject) => {
|
|
395
|
-
const stmt = this.db.prepare(`
|
|
396
|
-
INSERT INTO validator_scores (session_id, validator_id, score, validation_time, errors)
|
|
397
|
-
VALUES (?, ?, ?, ?, ?)
|
|
398
|
-
`);
|
|
399
|
-
|
|
400
|
-
stmt.run(
|
|
401
|
-
[sessionId, validatorId, score, validationTime, errors],
|
|
402
|
-
(err) => {
|
|
403
|
-
if (err) reject(err);
|
|
404
|
-
else resolve();
|
|
405
|
-
}
|
|
406
|
-
);
|
|
407
|
-
|
|
408
|
-
stmt.finalize();
|
|
409
|
-
});
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
async storeEvidence(sessionId, validatorId, evidenceType, evidenceData) {
|
|
413
|
-
return new Promise((resolve, reject) => {
|
|
414
|
-
const stmt = this.db.prepare(`
|
|
415
|
-
INSERT INTO validation_evidence (template_id, validator_id, score, evidence_type, evidence_data)
|
|
416
|
-
VALUES (?, ?, ?, ?, ?)
|
|
417
|
-
`);
|
|
418
|
-
|
|
419
|
-
stmt.run(
|
|
420
|
-
[sessionId, validatorId, 0, evidenceType, evidenceData],
|
|
421
|
-
(err) => {
|
|
422
|
-
if (err) reject(err);
|
|
423
|
-
else resolve();
|
|
424
|
-
}
|
|
425
|
-
);
|
|
426
|
-
|
|
427
|
-
stmt.finalize();
|
|
428
|
-
});
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
async recordConsensusSession(
|
|
432
|
-
sessionId,
|
|
433
|
-
templateId,
|
|
434
|
-
finalScore,
|
|
435
|
-
consensusAchieved,
|
|
436
|
-
retryCount
|
|
437
|
-
) {
|
|
438
|
-
return new Promise((resolve, reject) => {
|
|
439
|
-
const stmt = this.db.prepare(`
|
|
440
|
-
INSERT INTO consensus_sessions (session_id, template_id, mode, final_score, consensus_achieved, retry_count)
|
|
441
|
-
VALUES (?, ?, ?, ?, ?, ?)
|
|
442
|
-
`);
|
|
443
|
-
|
|
444
|
-
stmt.run(
|
|
445
|
-
[
|
|
446
|
-
sessionId,
|
|
447
|
-
templateId,
|
|
448
|
-
this.mode,
|
|
449
|
-
finalScore,
|
|
450
|
-
consensusAchieved,
|
|
451
|
-
retryCount,
|
|
452
|
-
],
|
|
453
|
-
(err) => {
|
|
454
|
-
if (err) reject(err);
|
|
455
|
-
else resolve();
|
|
456
|
-
}
|
|
457
|
-
);
|
|
458
|
-
|
|
459
|
-
stmt.finalize();
|
|
460
|
-
});
|
|
461
|
-
}
|
|
462
|
-
|
|
463
|
-
generateSessionId() {
|
|
464
|
-
return `session_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
465
|
-
}
|
|
466
|
-
|
|
467
|
-
async close() {
|
|
468
|
-
return new Promise((resolve, reject) => {
|
|
469
|
-
this.db.close((err) => {
|
|
470
|
-
if (err) reject(err);
|
|
471
|
-
else resolve();
|
|
472
|
-
});
|
|
473
|
-
});
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
|
|
477
|
-
module.exports = CFNLoopValidator;
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
-- CFN Loop Validation Evidence Chain Schema
|
|
2
|
-
-- SQLite database schema for storing validation results and audit trails
|
|
3
|
-
|
|
4
|
-
-- Main validation runs table
|
|
5
|
-
CREATE TABLE IF NOT EXISTS validation_runs (
|
|
6
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
7
|
-
run_id TEXT NOT NULL UNIQUE,
|
|
8
|
-
template_id TEXT NOT NULL,
|
|
9
|
-
template_version TEXT NOT NULL,
|
|
10
|
-
validation_mode TEXT NOT NULL CHECK (validation_mode IN ('mvp', 'standard', 'enterprise')),
|
|
11
|
-
status TEXT NOT NULL CHECK (status IN ('pending', 'running', 'completed', 'failed', 'retrying')),
|
|
12
|
-
start_time INTEGER NOT NULL,
|
|
13
|
-
end_time INTEGER,
|
|
14
|
-
consensus_score REAL,
|
|
15
|
-
consensus_threshold REAL,
|
|
16
|
-
validator_count INTEGER,
|
|
17
|
-
max_retries INTEGER,
|
|
18
|
-
retry_count INTEGER DEFAULT 0,
|
|
19
|
-
error_message TEXT,
|
|
20
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now'))
|
|
21
|
-
);
|
|
22
|
-
|
|
23
|
-
-- Individual validator results table
|
|
24
|
-
CREATE TABLE IF NOT EXISTS validator_results (
|
|
25
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
26
|
-
run_id TEXT NOT NULL,
|
|
27
|
-
validator_id TEXT NOT NULL,
|
|
28
|
-
validator_type TEXT NOT NULL,
|
|
29
|
-
score REAL NOT NULL CHECK (score >= 0 AND score <= 1),
|
|
30
|
-
execution_time INTEGER NOT NULL,
|
|
31
|
-
status TEXT NOT NULL CHECK (status IN ('success', 'failed', 'timeout', 'error')),
|
|
32
|
-
error_message TEXT,
|
|
33
|
-
metadata TEXT, -- JSON blob for additional data
|
|
34
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
35
|
-
FOREIGN KEY (run_id) REFERENCES validation_runs(run_id) ON DELETE CASCADE
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
-- Evidence chain table for detailed validation steps
|
|
39
|
-
CREATE TABLE IF NOT EXISTS evidence_chain (
|
|
40
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
41
|
-
run_id TEXT NOT NULL,
|
|
42
|
-
step_type TEXT NOT NULL,
|
|
43
|
-
step_order INTEGER NOT NULL,
|
|
44
|
-
validator_id TEXT,
|
|
45
|
-
input_data TEXT, -- JSON blob
|
|
46
|
-
output_data TEXT, -- JSON blob
|
|
47
|
-
validation_result TEXT, -- JSON blob
|
|
48
|
-
timestamp INTEGER NOT NULL,
|
|
49
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
50
|
-
FOREIGN KEY (run_id) REFERENCES validation_runs(run_id) ON DELETE CASCADE
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
-- Retry log table for tracking retry attempts
|
|
54
|
-
CREATE TABLE IF NOT EXISTS retry_log (
|
|
55
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
56
|
-
run_id TEXT NOT NULL,
|
|
57
|
-
attempt_number INTEGER NOT NULL,
|
|
58
|
-
delay_ms INTEGER NOT NULL,
|
|
59
|
-
reason TEXT NOT NULL,
|
|
60
|
-
consensus_score REAL,
|
|
61
|
-
validator_count INTEGER,
|
|
62
|
-
timestamp INTEGER NOT NULL,
|
|
63
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
64
|
-
FOREIGN KEY (run_id) REFERENCES validation_runs(run_id) ON DELETE CASCADE
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
-- Performance metrics table
|
|
68
|
-
CREATE TABLE IF NOT EXISTS performance_metrics (
|
|
69
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
70
|
-
run_id TEXT NOT NULL,
|
|
71
|
-
metric_name TEXT NOT NULL,
|
|
72
|
-
metric_value REAL NOT NULL,
|
|
73
|
-
unit TEXT NOT NULL,
|
|
74
|
-
timestamp INTEGER NOT NULL,
|
|
75
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
76
|
-
FOREIGN KEY (run_id) REFERENCES validation_runs(run_id) ON DELETE CASCADE
|
|
77
|
-
);
|
|
78
|
-
|
|
79
|
-
-- Error tracking table
|
|
80
|
-
CREATE TABLE IF NOT EXISTS error_tracking (
|
|
81
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
82
|
-
run_id TEXT NOT NULL,
|
|
83
|
-
error_type TEXT NOT NULL,
|
|
84
|
-
error_message TEXT NOT NULL,
|
|
85
|
-
stack_trace TEXT,
|
|
86
|
-
validator_id TEXT,
|
|
87
|
-
timestamp INTEGER NOT NULL,
|
|
88
|
-
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
89
|
-
FOREIGN KEY (run_id) REFERENCES validation_runs(run_id) ON DELETE CASCADE
|
|
90
|
-
);
|
|
91
|
-
|
|
92
|
-
-- Indexes for performance optimization
|
|
93
|
-
CREATE INDEX IF NOT EXISTS idx_validation_runs_status ON validation_runs(status);
|
|
94
|
-
CREATE INDEX IF NOT EXISTS idx_validation_runs_mode ON validation_runs(validation_mode);
|
|
95
|
-
CREATE INDEX IF NOT EXISTS idx_validation_runs_created_at ON validation_runs(created_at);
|
|
96
|
-
CREATE INDEX IF NOT EXISTS idx_validator_results_run_id ON validator_results(run_id);
|
|
97
|
-
CREATE INDEX IF NOT EXISTS idx_validator_results_validator_id ON validator_results(validator_id);
|
|
98
|
-
CREATE INDEX IF NOT EXISTS idx_validator_results_created_at ON validator_results(created_at);
|
|
99
|
-
CREATE INDEX IF NOT EXISTS idx_evidence_chain_run_id ON evidence_chain(run_id);
|
|
100
|
-
CREATE INDEX IF NOT EXISTS idx_evidence_chain_timestamp ON evidence_chain(timestamp);
|
|
101
|
-
CREATE INDEX IF NOT EXISTS idx_retry_log_run_id ON retry_log(run_id);
|
|
102
|
-
CREATE INDEX IF NOT EXISTS idx_performance_metrics_run_id ON performance_metrics(run_id);
|
|
103
|
-
CREATE INDEX IF NOT EXISTS idx_error_tracking_run_id ON error_tracking(run_id);
|
|
104
|
-
|
|
105
|
-
-- View for completed validation runs
|
|
106
|
-
CREATE VIEW IF NOT EXISTS completed_validation_runs AS
|
|
107
|
-
SELECT
|
|
108
|
-
vr.run_id,
|
|
109
|
-
vr.template_id,
|
|
110
|
-
vr.template_version,
|
|
111
|
-
vr.validation_mode,
|
|
112
|
-
vr.status,
|
|
113
|
-
vr.start_time,
|
|
114
|
-
vr.end_time,
|
|
115
|
-
vr.consensus_score,
|
|
116
|
-
vr.consensus_threshold,
|
|
117
|
-
vr.validator_count,
|
|
118
|
-
vr.error_message,
|
|
119
|
-
(vr.end_time - vr.start_time) as duration_ms,
|
|
120
|
-
COUNT(vr.id) as total_validators,
|
|
121
|
-
SUM(CASE WHEN vrs.status = 'success' THEN 1 ELSE 0 END) as successful_validators,
|
|
122
|
-
AVG(vrs.score) as average_score
|
|
123
|
-
FROM validation_runs vr
|
|
124
|
-
LEFT JOIN validator_results vrs ON vr.run_id = vrs.run_id
|
|
125
|
-
WHERE vr.status = 'completed'
|
|
126
|
-
GROUP BY vr.run_id, vr.template_id, vr.template_version, vr.validation_mode, vr.status;
|
|
127
|
-
|
|
128
|
-
-- View for retry statistics
|
|
129
|
-
CREATE VIEW IF NOT EXISTS retry_statistics AS
|
|
130
|
-
SELECT
|
|
131
|
-
rl.run_id,
|
|
132
|
-
vr.template_id,
|
|
133
|
-
vr.validation_mode,
|
|
134
|
-
COUNT(rl.id) as total_retries,
|
|
135
|
-
MAX(rl.attempt_number) as max_attempt,
|
|
136
|
-
AVG(rl.delay_ms) as avg_delay_ms,
|
|
137
|
-
MIN(rl.consensus_score) as min_consensus_score,
|
|
138
|
-
MAX(rl.consensus_score) as max_consensus_score
|
|
139
|
-
FROM retry_log rl
|
|
140
|
-
JOIN validation_runs vr ON rl.run_id = vr.run_id
|
|
141
|
-
GROUP BY rl.run_id, vr.template_id, vr.validation_mode;
|
|
142
|
-
|
|
143
|
-
-- Trigger to cleanup old records (optional - uncomment if needed)
|
|
144
|
-
-- CREATE TRIGGER IF NOT EXISTS cleanup_old_records
|
|
145
|
-
-- AFTER INSERT ON validation_runs
|
|
146
|
-
-- FOR EACH ROW
|
|
147
|
-
-- BEGIN
|
|
148
|
-
-- DELETE FROM validator_results WHERE run_id IN (
|
|
149
|
-
-- SELECT run_id FROM validation_runs WHERE created_at < strftime('%s', 'now') - 2592000 -- 30 days
|
|
150
|
-
-- );
|
|
151
|
-
-- DELETE FROM evidence_chain WHERE run_id IN (
|
|
152
|
-
-- SELECT run_id FROM validation_runs WHERE created_at < strftime('%s', 'now') - 2592000
|
|
153
|
-
-- );
|
|
154
|
-
-- DELETE FROM retry_log WHERE run_id IN (
|
|
155
|
-
-- SELECT run_id FROM validation_runs WHERE created_at < strftime('%s', 'now') - 2592000
|
|
156
|
-
-- );
|
|
157
|
-
-- DELETE FROM performance_metrics WHERE run_id IN (
|
|
158
|
-
-- SELECT run_id FROM validation_runs WHERE created_at < strftime('%s', 'now') - 2592000
|
|
159
|
-
-- );
|
|
160
|
-
-- DELETE FROM error_tracking WHERE run_id IN (
|
|
161
|
-
-- SELECT run_id FROM validation_runs WHERE created_at < strftime('%s', 'now') - 2592000
|
|
162
|
-
-- );
|
|
163
|
-
-- END;
|