claude-flow-novice 2.6.0 → 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.
Files changed (659) hide show
  1. package/.claude/agents/cfn-dev-team/coordinators/README.md +42 -0
  2. package/.claude/agents/cfn-dev-team/coordinators/cfn-v3-coordinator.md +440 -0
  3. package/.claude/agents/{product-owner-team → cfn-dev-team/coordinators}/cto-agent.md +154 -187
  4. package/.claude/agents/cfn-dev-team/coordinators/multi-sprint-coordinator.md +50 -0
  5. package/.claude/agents/{product-owner-team → cfn-dev-team/coordinators}/product-owner-agent.md +7 -40
  6. package/.claude/agents/{cfn-loop → cfn-dev-team/coordinators}/product-owner.md +73 -18
  7. package/.claude/agents/cfn-dev-team/developers/README.md +69 -0
  8. package/.claude/agents/cfn-dev-team/developers/backend-dev.md +77 -0
  9. package/.claude/agents/{core-agents → cfn-dev-team/developers}/coder.md +132 -27
  10. package/.claude/agents/cfn-dev-team/developers/react-frontend-engineer.md +121 -0
  11. package/.claude/agents/{frontend → cfn-dev-team/developers}/state-architect.md +1 -0
  12. package/.claude/agents/{frontend → cfn-dev-team/developers}/ui-designer.md +1 -0
  13. package/.claude/agents/cfn-dev-team/reviewers/README.md +58 -0
  14. package/.claude/agents/{analysis → cfn-dev-team/reviewers}/code-quality-validator.md +9 -18
  15. package/.claude/agents/{core-agents → cfn-dev-team/reviewers}/reviewer.md +62 -23
  16. package/.claude/agents/cfn-dev-team/testers/README.md +94 -0
  17. package/.claude/agents/{testing → cfn-dev-team/testers}/e2e/playwright-agent.md +2 -21
  18. package/.claude/agents/{testing → cfn-dev-team/testers}/interaction-tester.md +2 -21
  19. package/.claude/agents/{testing → cfn-dev-team/testers}/playwright-tester.md +1 -1
  20. package/.claude/agents/cfn-dev-team/testers/tester.md +139 -0
  21. package/.claude/agents/cfn-dev-team/testers/unit/tdd-london-swarm.md +49 -0
  22. package/.claude/agents/cfn-dev-team/testers/validation/production-validator.md +33 -0
  23. package/.claude/cfn-data/cfn-loop.db +0 -0
  24. package/.claude/cfn-data/cfn_loop_logs.db +0 -0
  25. package/.claude/commands/{CFN_COORDINATOR_PARAMETERS.md → cfn/CFN_COORDINATOR_PARAMETERS.md} +22 -22
  26. package/.claude/commands/{cfn-loop-epic.md → cfn/cfn-loop-epic.md} +6 -6
  27. package/.claude/commands/{cfn-loop-single.md → cfn/cfn-loop-single.md} +9 -9
  28. package/.claude/commands/{cfn-loop-sprints.md → cfn/cfn-loop-sprints.md} +1 -1
  29. package/.claude/commands/{cfn-loop.md → cfn/cfn-loop.md} +9 -9
  30. package/.claude/commands/cfn/cfn-mode.md +20 -0
  31. package/.claude/commands/{cfn-optimize-agents.md → cfn/cfn-optimize-agents.md} +1 -1
  32. package/.claude/commands/{context-curate.md → cfn/context-curate.md} +2 -2
  33. package/.claude/commands/{context-inject.md → cfn/context-inject.md} +3 -3
  34. package/.claude/commands/{context-reflect.md → cfn/context-reflect.md} +1 -1
  35. package/.claude/commands/{context-stats.md → cfn/context-stats.md} +1 -1
  36. package/.claude/commands/{list-agents-rebuild.md → cfn/list-agents-rebuild.md} +12 -12
  37. package/.claude/commands/cfn/write-plan.md +104 -0
  38. package/.claude/hooks/cfn-BACKUP_USAGE.md +243 -0
  39. package/.claude/hooks/cfn-post-edit-cfn-retrospective.sh +79 -0
  40. package/.claude/hooks/cfn-post-edit.sh +21 -0
  41. package/.claude/hooks/cfn-pre-edit-backup.sh +71 -0
  42. package/.claude/hooks/cfn-restore-from-backup.sh +37 -0
  43. package/.claude/skills/cfn-loop-orchestration/README.md +41 -0
  44. package/.claude/skills/cfn-redis-coordination/README.md +65 -0
  45. package/.claude/skills/cfn-webapp-testing/README.md +142 -0
  46. package/CFN-CLAUDE.md +776 -0
  47. package/README.md +598 -251
  48. package/dist/agents/agent-loader.js +146 -165
  49. package/dist/agents/agent-loader.js.map +1 -1
  50. package/dist/cli/agent-command.js +2 -0
  51. package/dist/cli/agent-command.js.map +1 -1
  52. package/dist/cli/agent-definition-parser.js +7 -0
  53. package/dist/cli/agent-definition-parser.js.map +1 -1
  54. package/dist/cli/agent-executor.js +145 -11
  55. package/dist/cli/agent-executor.js.map +1 -1
  56. package/dist/cli/agent-prompt-builder.js +81 -1
  57. package/dist/cli/agent-prompt-builder.js.map +1 -1
  58. package/dist/cli/agent-spawn.js +10 -1
  59. package/dist/cli/agent-spawn.js.map +1 -1
  60. package/dist/cli/anthropic-client.js +192 -13
  61. package/dist/cli/anthropic-client.js.map +1 -1
  62. package/dist/cli/cfn-context.js +150 -0
  63. package/dist/cli/cfn-context.js.map +1 -1
  64. package/dist/cli/cfn-fork.js +159 -0
  65. package/dist/cli/cfn-fork.js.map +1 -0
  66. package/dist/cli/cli-agent-context.js +8 -3
  67. package/dist/cli/cli-agent-context.js.map +1 -1
  68. package/dist/cli/conversation-fork.js +201 -0
  69. package/dist/cli/conversation-fork.js.map +1 -0
  70. package/dist/cli/index.js +4 -0
  71. package/dist/cli/index.js.map +1 -1
  72. package/dist/cli/init-command.js +20 -0
  73. package/dist/cli/init-command.js.map +1 -0
  74. package/dist/cli/tool-definitions.js +263 -0
  75. package/dist/cli/tool-definitions.js.map +1 -0
  76. package/dist/cli/tool-executor.js +247 -0
  77. package/dist/cli/tool-executor.js.map +1 -0
  78. package/dist/hello.js +8 -0
  79. package/dist/hello.js.map +1 -0
  80. package/package.json +26 -12
  81. package/scripts/README.md +68 -0
  82. package/scripts/cfn-intervention-example.sh +21 -0
  83. package/scripts/init-project.js +148 -0
  84. package/scripts/migrate-test-infrastructure.sh +40 -0
  85. package/scripts/restructure-cfn-namespace.sh +161 -0
  86. package/scripts/validate-test-migration.sh +49 -0
  87. package/scripts/verify-no-secrets.sh +55 -0
  88. package/.claude/SLASH-COMMANDS-READY.md +0 -53
  89. package/.claude/WORKING-SETUP.md +0 -67
  90. package/.claude/ace-system-overview.md +0 -524
  91. package/.claude/agent-principles/agent-template.md +0 -96
  92. package/.claude/agents/CLAUDE.md +0 -995
  93. package/.claude/agents/README-VALIDATION.md +0 -243
  94. package/.claude/agents/agent-principles/README.md +0 -226
  95. package/.claude/agents/agent-principles/agent-type-guidelines.md +0 -465
  96. package/.claude/agents/agent-principles/format-selection.md +0 -224
  97. package/.claude/agents/agent-principles/phase4-template-optimization.md +0 -494
  98. package/.claude/agents/agent-principles/prompt-engineering.md +0 -501
  99. package/.claude/agents/agent-principles/quality-metrics.md +0 -375
  100. package/.claude/agents/analysis/code-analyzer.md +0 -192
  101. package/.claude/agents/analysis/code-review/analyze-code-quality.md +0 -133
  102. package/.claude/agents/analysis/perf-analyzer.md +0 -230
  103. package/.claude/agents/architecture/system-architect.md +0 -161
  104. package/.claude/agents/architecture/system-architect.md.backup +0 -603
  105. package/.claude/agents/code-booster.md +0 -131
  106. package/.claude/agents/consensus/consensus-builder.md +0 -159
  107. package/.claude/agents/consensus/crdt-synchronizer.md +0 -192
  108. package/.claude/agents/consensus/performance-benchmarker.md +0 -101
  109. package/.claude/agents/consensus/quorum-manager.md +0 -168
  110. package/.claude/agents/consensus/raft-manager.md +0 -106
  111. package/.claude/agents/consensus/security-manager.md +0 -107
  112. package/.claude/agents/context/context-curator.md +0 -84
  113. package/.claude/agents/context/context-reflector.md +0 -81
  114. package/.claude/agents/context-curator.md +0 -167
  115. package/.claude/agents/context-reflector.md +0 -65
  116. package/.claude/agents/core-agents/analyst.md +0 -170
  117. package/.claude/agents/core-agents/architect.md +0 -200
  118. package/.claude/agents/core-agents/base-template-generator.md +0 -188
  119. package/.claude/agents/core-agents/cfn-loop-coordinator.md +0 -134
  120. package/.claude/agents/core-agents/code-quality-validator.md +0 -149
  121. package/.claude/agents/core-agents/context-curator.md +0 -452
  122. package/.claude/agents/core-agents/context-reflector.md +0 -273
  123. package/.claude/agents/core-agents/coordinator.md +0 -182
  124. package/.claude/agents/core-agents/cost-savings-cfn-loop-coordinator.md +0 -235
  125. package/.claude/agents/core-agents/cost-savings-coordinator.md +0 -167
  126. package/.claude/agents/core-agents/performance-benchmarker.md +0 -148
  127. package/.claude/agents/core-agents/planner.md +0 -174
  128. package/.claude/agents/core-agents/security-manager.md +0 -111
  129. package/.claude/agents/core-agents/tester.md +0 -170
  130. package/.claude/agents/custom/agent-builder.md +0 -637
  131. package/.claude/agents/development/backend/dev-backend-api.md +0 -139
  132. package/.claude/agents/development/backend-dev.md +0 -165
  133. package/.claude/agents/development/npm-package-specialist.md +0 -347
  134. package/.claude/agents/devops/devops-engineer.md +0 -148
  135. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -98
  136. package/.claude/agents/documentation/api-docs.md +0 -103
  137. package/.claude/agents/frontend/README.md +0 -640
  138. package/.claude/agents/frontend/interaction-tester.md +0 -139
  139. package/.claude/agents/frontend/react-frontend-engineer.md +0 -9
  140. package/.claude/agents/github/github-commit-agent.md +0 -118
  141. package/.claude/agents/goal/goal-planner.md +0 -183
  142. package/.claude/agents/personas/accessibility-advocate-persona.md +0 -107
  143. package/.claude/agents/planning-team/api-designer-persona.md +0 -147
  144. package/.claude/agents/planning-team/security-architect-persona.md +0 -190
  145. package/.claude/agents/planning-team/system-architect-persona.md +0 -190
  146. package/.claude/agents/product-owner-team/accessibility-advocate-persona.md +0 -161
  147. package/.claude/agents/product-owner-team/power-user-persona.md +0 -182
  148. package/.claude/agents/security/security-specialist-existing.md +0 -154
  149. package/.claude/agents/security/security-specialist.md +0 -185
  150. package/.claude/agents/sparc/architecture.md +0 -149
  151. package/.claude/agents/sparc/pseudocode.md +0 -159
  152. package/.claude/agents/sparc/refinement.md +0 -106
  153. package/.claude/agents/sparc/specification.md +0 -157
  154. package/.claude/agents/specialized/cli-agent-optimizer.md +0 -122
  155. package/.claude/agents/specialized/code-booster.md +0 -143
  156. package/.claude/agents/specialized/devops-engineer.md +0 -150
  157. package/.claude/agents/specialized/mobile/mobile-dev.md +0 -210
  158. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -191
  159. package/.claude/agents/specialized/rust-developer.md +0 -166
  160. package/.claude/agents/specialized/rust-enterprise-developer.md +0 -144
  161. package/.claude/agents/specialized/rust-mvp-developer.md +0 -142
  162. package/.claude/agents/testing/production-validator.md +0 -179
  163. package/.claude/agents/testing/tdd-london-swarm.md +0 -209
  164. package/.claude/agents/testing/unit/tdd-london-swarm.md +0 -43
  165. package/.claude/agents/testing/validation/production-validator.md +0 -43
  166. package/.claude/agents/validate-agent.js +0 -841
  167. package/.claude/agents-ignore/cfn-coordinator-enterprise.md +0 -1303
  168. package/.claude/agents-ignore/cfn-coordinator-mvp.md +0 -942
  169. package/.claude/agents-ignore/cfn-coordinator-standard.md +0 -1062
  170. package/.claude/agents-ignore/deprecated-coordinators/adaptive-coordinator-enhanced.md +0 -145
  171. package/.claude/agents-ignore/deprecated-coordinators/adaptive-coordinator.md +0 -161
  172. package/.claude/agents-ignore/deprecated-coordinators/blocking-coordinator-example.md +0 -732
  173. package/.claude/agents-ignore/deprecated-coordinators/byzantine-coordinator.md +0 -94
  174. package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-enterprise.md +0 -323
  175. package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-mvp.md +0 -157
  176. package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-standard.md +0 -229
  177. package/.claude/agents-ignore/deprecated-coordinators/cfn-coordinator-unified.md +0 -149
  178. package/.claude/agents-ignore/deprecated-coordinators/coordinator-hybrid.md +0 -231
  179. package/.claude/agents-ignore/deprecated-coordinators/gossip-coordinator.md +0 -165
  180. package/.claude/agents-ignore/deprecated-coordinators/hierarchical-coordinator.md +0 -91
  181. package/.claude/agents-ignore/deprecated-coordinators/mesh-coordinator.md +0 -131
  182. package/.claude/agents-ignore/deprecated-coordinators/task-coordinator.md +0 -105
  183. package/.claude/agents-ignore/deprecated-coordinators/test-coordinator.md +0 -141
  184. package/.claude/api-configs/config-current-zai-config.env +0 -62
  185. package/.claude/api-configs/config-test-zai-config.env +0 -62
  186. package/.claude/api-configs/env-backups/before-anthropic-20251020-025404.env +0 -62
  187. package/.claude/api-configs/env-backups/before-restore-20251020-025431.env +0 -62
  188. package/.claude/architecture/mesh-get-polling-design.md +0 -87
  189. package/.claude/architecture/mesh-get-polling-implementation.md +0 -89
  190. package/.claude/architecture/typescript-microservices.md +0 -50
  191. package/.claude/artifacts/reflection-merge-logs/cli-agent-spawning-v2.5.2-merge-report.md +0 -61
  192. package/.claude/cfn-loop-rules.md +0 -73
  193. package/.claude/cfn-mode-patterns.md +0 -571
  194. package/.claude/claude-md-backup-pre-skills.md +0 -15
  195. package/.claude/commands/agents/README.md +0 -10
  196. package/.claude/commands/agents/agent-capabilities.md +0 -21
  197. package/.claude/commands/agents/agent-coordination.md +0 -28
  198. package/.claude/commands/agents/agent-spawning.md +0 -28
  199. package/.claude/commands/agents/agent-types.md +0 -26
  200. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +0 -54
  201. package/.claude/commands/analysis/README.md +0 -9
  202. package/.claude/commands/analysis/bottleneck-detect.md +0 -162
  203. package/.claude/commands/analysis/performance-bottlenecks.md +0 -59
  204. package/.claude/commands/analysis/performance-report.md +0 -25
  205. package/.claude/commands/analysis/token-efficiency.md +0 -45
  206. package/.claude/commands/analysis/token-usage.md +0 -25
  207. package/.claude/commands/automation/README.md +0 -9
  208. package/.claude/commands/automation/auto-agent.md +0 -122
  209. package/.claude/commands/automation/self-healing.md +0 -106
  210. package/.claude/commands/automation/session-memory.md +0 -90
  211. package/.claude/commands/automation/smart-agents.md +0 -73
  212. package/.claude/commands/automation/smart-spawn.md +0 -25
  213. package/.claude/commands/automation/workflow-select.md +0 -25
  214. package/.claude/commands/claude-md.js +0 -237
  215. package/.claude/commands/claude-soul.js +0 -28
  216. package/.claude/commands/cli-integration.js +0 -216
  217. package/.claude/commands/coordination/README.md +0 -9
  218. package/.claude/commands/coordination/agent-spawn.md +0 -25
  219. package/.claude/commands/coordination/coordination-system.md +0 -88
  220. package/.claude/commands/coordination/init.md +0 -44
  221. package/.claude/commands/coordination/orchestrate.md +0 -43
  222. package/.claude/commands/coordination/spawn.md +0 -45
  223. package/.claude/commands/coordination/swarm-init.md +0 -85
  224. package/.claude/commands/coordination/task-orchestrate.md +0 -25
  225. package/.claude/commands/github/README.md +0 -11
  226. package/.claude/commands/github/code-review-swarm.md +0 -514
  227. package/.claude/commands/github/code-review.md +0 -25
  228. package/.claude/commands/github/github-modes.md +0 -147
  229. package/.claude/commands/github/github-swarm.md +0 -121
  230. package/.claude/commands/github/issue-tracker.md +0 -292
  231. package/.claude/commands/github/issue-triage.md +0 -25
  232. package/.claude/commands/github/multi-repo-swarm.md +0 -519
  233. package/.claude/commands/github/pr-enhance.md +0 -26
  234. package/.claude/commands/github/pr-manager.md +0 -170
  235. package/.claude/commands/github/project-board-sync.md +0 -471
  236. package/.claude/commands/github/release-manager.md +0 -338
  237. package/.claude/commands/github/release-swarm.md +0 -544
  238. package/.claude/commands/github/repo-analyze.md +0 -25
  239. package/.claude/commands/github/repo-architect.md +0 -367
  240. package/.claude/commands/github/swarm-issue.md +0 -482
  241. package/.claude/commands/github/swarm-pr.md +0 -285
  242. package/.claude/commands/github/sync-coordinator.md +0 -301
  243. package/.claude/commands/github/workflow-automation.md +0 -442
  244. package/.claude/commands/github.js +0 -638
  245. package/.claude/commands/hive-mind/README.md +0 -17
  246. package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -8
  247. package/.claude/commands/hive-mind/hive-mind-init.md +0 -18
  248. package/.claude/commands/hive-mind/hive-mind-memory.md +0 -8
  249. package/.claude/commands/hive-mind/hive-mind-metrics.md +0 -8
  250. package/.claude/commands/hive-mind/hive-mind-resume.md +0 -8
  251. package/.claude/commands/hive-mind/hive-mind-sessions.md +0 -8
  252. package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -21
  253. package/.claude/commands/hive-mind/hive-mind-status.md +0 -8
  254. package/.claude/commands/hive-mind/hive-mind-stop.md +0 -8
  255. package/.claude/commands/hive-mind/hive-mind-wizard.md +0 -8
  256. package/.claude/commands/hive-mind/hive-mind.md +0 -27
  257. package/.claude/commands/hooks/README.md +0 -11
  258. package/.claude/commands/hooks/overview.md +0 -58
  259. package/.claude/commands/hooks/post-edit.md +0 -117
  260. package/.claude/commands/hooks/post-task.md +0 -112
  261. package/.claude/commands/hooks/pre-edit.md +0 -113
  262. package/.claude/commands/hooks/pre-task.md +0 -111
  263. package/.claude/commands/hooks/session-end.md +0 -118
  264. package/.claude/commands/hooks/session-start.md +0 -9
  265. package/.claude/commands/hooks/setup.md +0 -103
  266. package/.claude/commands/hooks.js +0 -651
  267. package/.claude/commands/index.js +0 -119
  268. package/.claude/commands/memory/README.md +0 -9
  269. package/.claude/commands/memory/memory-bank.md +0 -58
  270. package/.claude/commands/memory/memory-persist.md +0 -25
  271. package/.claude/commands/memory/memory-search.md +0 -25
  272. package/.claude/commands/memory/memory-usage.md +0 -25
  273. package/.claude/commands/memory/neural.md +0 -47
  274. package/.claude/commands/memory/usage.md +0 -46
  275. package/.claude/commands/monitoring/README.md +0 -9
  276. package/.claude/commands/monitoring/agent-metrics.md +0 -25
  277. package/.claude/commands/monitoring/agents.md +0 -44
  278. package/.claude/commands/monitoring/real-time-view.md +0 -25
  279. package/.claude/commands/monitoring/status.md +0 -46
  280. package/.claude/commands/monitoring/swarm-monitor.md +0 -25
  281. package/.claude/commands/neural.js +0 -572
  282. package/.claude/commands/optimization/README.md +0 -9
  283. package/.claude/commands/optimization/auto-topology.md +0 -62
  284. package/.claude/commands/optimization/cache-manage.md +0 -25
  285. package/.claude/commands/optimization/parallel-execute.md +0 -25
  286. package/.claude/commands/optimization/parallel-execution.md +0 -50
  287. package/.claude/commands/optimization/topology-optimize.md +0 -25
  288. package/.claude/commands/pair/README.md +0 -261
  289. package/.claude/commands/pair/commands.md +0 -546
  290. package/.claude/commands/pair/config.md +0 -510
  291. package/.claude/commands/pair/examples.md +0 -512
  292. package/.claude/commands/pair/modes.md +0 -348
  293. package/.claude/commands/pair/session.md +0 -407
  294. package/.claude/commands/pair/start.md +0 -209
  295. package/.claude/commands/parse-epic.js +0 -180
  296. package/.claude/commands/performance.js +0 -582
  297. package/.claude/commands/register-all-commands.js +0 -320
  298. package/.claude/commands/register-claude-md.js +0 -82
  299. package/.claude/commands/register-claude-soul.js +0 -80
  300. package/.claude/commands/sparc/analyzer.md +0 -52
  301. package/.claude/commands/sparc/architect.md +0 -53
  302. package/.claude/commands/sparc/batch-executor.md +0 -54
  303. package/.claude/commands/sparc/coder.md +0 -54
  304. package/.claude/commands/sparc/debugger.md +0 -54
  305. package/.claude/commands/sparc/designer.md +0 -53
  306. package/.claude/commands/sparc/documenter.md +0 -54
  307. package/.claude/commands/sparc/innovator.md +0 -54
  308. package/.claude/commands/sparc/memory-manager.md +0 -54
  309. package/.claude/commands/sparc/optimizer.md +0 -54
  310. package/.claude/commands/sparc/orchestrator.md +0 -132
  311. package/.claude/commands/sparc/researcher.md +0 -54
  312. package/.claude/commands/sparc/reviewer.md +0 -54
  313. package/.claude/commands/sparc/sparc-modes.md +0 -174
  314. package/.claude/commands/sparc/swarm-coordinator.md +0 -54
  315. package/.claude/commands/sparc/tdd.md +0 -54
  316. package/.claude/commands/sparc/tester.md +0 -54
  317. package/.claude/commands/sparc/workflow-manager.md +0 -54
  318. package/.claude/commands/sparc.js +0 -110
  319. package/.claude/commands/stream-chain/pipeline.md +0 -121
  320. package/.claude/commands/stream-chain/run.md +0 -70
  321. package/.claude/commands/swarm/README.md +0 -15
  322. package/.claude/commands/swarm/analysis.md +0 -95
  323. package/.claude/commands/swarm/development.md +0 -96
  324. package/.claude/commands/swarm/examples.md +0 -168
  325. package/.claude/commands/swarm/maintenance.md +0 -102
  326. package/.claude/commands/swarm/optimization.md +0 -117
  327. package/.claude/commands/swarm/research.md +0 -136
  328. package/.claude/commands/swarm/swarm-analysis.md +0 -8
  329. package/.claude/commands/swarm/swarm-background.md +0 -8
  330. package/.claude/commands/swarm/swarm-init.md +0 -19
  331. package/.claude/commands/swarm/swarm-modes.md +0 -8
  332. package/.claude/commands/swarm/swarm-monitor.md +0 -8
  333. package/.claude/commands/swarm/swarm-spawn.md +0 -19
  334. package/.claude/commands/swarm/swarm-status.md +0 -8
  335. package/.claude/commands/swarm/swarm-strategies.md +0 -8
  336. package/.claude/commands/swarm/swarm.md +0 -27
  337. package/.claude/commands/swarm/testing.md +0 -131
  338. package/.claude/commands/swarm.js +0 -423
  339. package/.claude/commands/testing/playwright-e2e.md +0 -288
  340. package/.claude/commands/training/README.md +0 -9
  341. package/.claude/commands/training/model-update.md +0 -25
  342. package/.claude/commands/training/neural-patterns.md +0 -74
  343. package/.claude/commands/training/neural-train.md +0 -25
  344. package/.claude/commands/training/pattern-learn.md +0 -25
  345. package/.claude/commands/training/specialization.md +0 -63
  346. package/.claude/commands/truth/start.md +0 -143
  347. package/.claude/commands/validate-commands.js +0 -223
  348. package/.claude/commands/verify/check.md +0 -50
  349. package/.claude/commands/verify/start.md +0 -128
  350. package/.claude/commands/workflow.js +0 -606
  351. package/.claude/commands/workflows/README.md +0 -9
  352. package/.claude/commands/workflows/development.md +0 -78
  353. package/.claude/commands/workflows/research.md +0 -63
  354. package/.claude/commands/workflows/workflow-create.md +0 -25
  355. package/.claude/commands/workflows/workflow-execute.md +0 -25
  356. package/.claude/commands/workflows/workflow-export.md +0 -25
  357. package/.claude/coordinator-feedback-pattern.md +0 -326
  358. package/.claude/coordinator-patterns.md +0 -126
  359. package/.claude/core/agent-manager.js +0 -80
  360. package/.claude/core/agent-manager.js.map +0 -1
  361. package/.claude/core/config.js +0 -1221
  362. package/.claude/core/config.js.map +0 -1
  363. package/.claude/core/event-bus.js +0 -136
  364. package/.claude/core/event-bus.js.map +0 -1
  365. package/.claude/core/index.js +0 -6
  366. package/.claude/core/index.js.map +0 -1
  367. package/.claude/core/json-persistence.js +0 -112
  368. package/.claude/core/json-persistence.js.map +0 -1
  369. package/.claude/core/logger.js +0 -245
  370. package/.claude/core/logger.js.map +0 -1
  371. package/.claude/core/orchestrator-fixed.js +0 -236
  372. package/.claude/core/orchestrator-fixed.js.map +0 -1
  373. package/.claude/core/orchestrator.js +0 -1136
  374. package/.claude/core/orchestrator.js.map +0 -1
  375. package/.claude/core/persistence.js +0 -185
  376. package/.claude/core/persistence.js.map +0 -1
  377. package/.claude/core/project-manager.js +0 -80
  378. package/.claude/core/project-manager.js.map +0 -1
  379. package/.claude/core/slash-command.js +0 -24
  380. package/.claude/core/version.js +0 -35
  381. package/.claude/core/version.js.map +0 -1
  382. package/.claude/helpers/checkpoint-manager.sh +0 -251
  383. package/.claude/helpers/github-safe.js +0 -106
  384. package/.claude/helpers/github-setup.sh +0 -28
  385. package/.claude/helpers/quick-start.sh +0 -19
  386. package/.claude/helpers/setup-mcp.sh +0 -18
  387. package/.claude/helpers/standard-checkpoint-hooks.sh +0 -179
  388. package/.claude/hooks.json +0 -21
  389. package/.claude/logs/sprint1-hybrid-routing-v2-decision.json +0 -18
  390. package/.claude/redis-agent-dependencies.md +0 -494
  391. package/.claude/root-claude-distribute/CLAUDE.md +0 -428
  392. package/.claude/settings.json +0 -129
  393. package/.claude/settings.local.json +0 -33
  394. package/.claude/skills/CFN-LOOP-VALIDATION.md +0 -202
  395. package/.claude/skills/REDIS-COORDINATION.md +0 -187
  396. package/.claude/skills/SKILL.md +0 -229
  397. package/.claude/skills/ace-system/SKILL.md +0 -364
  398. package/.claude/skills/ace-system/add-bullet.sh +0 -145
  399. package/.claude/skills/ace-system/invoke-context-curate.sh +0 -192
  400. package/.claude/skills/ace-system/invoke-context-inject.sh +0 -166
  401. package/.claude/skills/ace-system/invoke-context-query.sh +0 -127
  402. package/.claude/skills/ace-system/invoke-context-reflect.sh +0 -98
  403. package/.claude/skills/ace-system/invoke-context-stats.sh +0 -188
  404. package/.claude/skills/ace-system/log-merge.sh +0 -67
  405. package/.claude/skills/ace-system/query-reflections.sh +0 -35
  406. package/.claude/skills/ace-system/store-reflection.sh +0 -149
  407. package/.claude/skills/ace-system/test-ace-skill.sh +0 -312
  408. package/.claude/skills/ace-system/update-reflection.sh +0 -41
  409. package/.claude/skills/agent-execution/execute-agent.sh +0 -126
  410. package/.claude/skills/agent-spawning/SKILL.md +0 -135
  411. package/.claude/skills/agent-spawning/agent-selection-guide.md +0 -814
  412. package/.claude/skills/agent-spawning/check-dependencies.sh +0 -30
  413. package/.claude/skills/agent-spawning/spawn-agent.sh +0 -263
  414. package/.claude/skills/agent-spawning/spawn-templates.sh +0 -613
  415. package/.claude/skills/analytics/description-refinement-guide.md +0 -164
  416. package/.claude/skills/analytics/log-skill-invocation.js +0 -122
  417. package/.claude/skills/analytics/run-production-criteria-tests.sh +0 -126
  418. package/.claude/skills/analytics/skill-analytics-dashboard.js +0 -113
  419. package/.claude/skills/analytics/skill-invocation-hook.sh +0 -28
  420. package/.claude/skills/analytics/skill-invocations.sql +0 -58
  421. package/.claude/skills/analytics/test-corpus.json +0 -32
  422. package/.claude/skills/analytics/test-data-generator.js +0 -115
  423. package/.claude/skills/analytics/test-manual-override-rate.js +0 -285
  424. package/.claude/skills/analytics/validate-skill-selection.js +0 -188
  425. package/.claude/skills/cfn-loop-validation/SKILL.md +0 -263
  426. package/.claude/skills/cfn-loop-validation/check-dependencies.sh +0 -31
  427. package/.claude/skills/cfn-loop-validation/config.json +0 -161
  428. package/.claude/skills/cfn-loop-validation/consensus-calculator.js +0 -477
  429. package/.claude/skills/cfn-loop-validation/evidence-chain.sql +0 -163
  430. package/.claude/skills/cfn-loop-validation/examples/README.md +0 -453
  431. package/.claude/skills/cfn-loop-validation/examples/coordinator-full-cfn-loop.sh +0 -234
  432. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop2-consensus.sh +0 -132
  433. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop3-gate.sh +0 -115
  434. package/.claude/skills/cfn-loop-validation/examples/coordinator-redis-integration.sh +0 -186
  435. package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +0 -252
  436. package/.claude/skills/cfn-loop-validation/validate-iteration.sh +0 -134
  437. package/.claude/skills/cfn-loop-validation.sh +0 -70
  438. package/.claude/skills/config-management/SKILL.md +0 -34
  439. package/.claude/skills/config-management/check-dependencies.sh +0 -56
  440. package/.claude/skills/config-management/config.json +0 -32
  441. package/.claude/skills/config-management/manage-config.sh +0 -113
  442. package/.claude/skills/consensus-calculator.js +0 -45
  443. package/.claude/skills/event-bus/SKILL.md +0 -412
  444. package/.claude/skills/event-bus/config.json +0 -111
  445. package/.claude/skills/event-bus/eventbus-wrapper.cjs +0 -69
  446. package/.claude/skills/event-bus/invoke-event-publish.sh +0 -147
  447. package/.claude/skills/event-bus/invoke-event-subscribe.sh +0 -171
  448. package/.claude/skills/event-bus/invoke-lifecycle-track.sh +0 -201
  449. package/.claude/skills/event-bus/test-event-bus.sh +0 -280
  450. package/.claude/skills/evidence-chain.sql +0 -66
  451. package/.claude/skills/fleet-manager/SKILL.md +0 -412
  452. package/.claude/skills/fleet-manager/config.json +0 -60
  453. package/.claude/skills/fleet-manager/invoke-fleet-allocate.sh +0 -182
  454. package/.claude/skills/fleet-manager/invoke-fleet-balance.sh +0 -239
  455. package/.claude/skills/fleet-manager/invoke-fleet-metrics.sh +0 -193
  456. package/.claude/skills/fleet-manager/invoke-fleet-register.sh +0 -124
  457. package/.claude/skills/fleet-manager/test-fleet-manager.sh +0 -345
  458. package/.claude/skills/hook-pipeline/SKILL.md +0 -148
  459. package/.claude/skills/hook-pipeline/auto-resolve.sh +0 -66
  460. package/.claude/skills/hook-pipeline/check-dependencies.sh +0 -40
  461. package/.claude/skills/hook-pipeline/feedback-resolver.sh +0 -452
  462. package/.claude/skills/hook-pipeline/post-edit-handler.sh +0 -154
  463. package/.claude/skills/hook-pipeline/security-scan.json +0 -60
  464. package/.claude/skills/hook-pipeline/security-scanner.sh +0 -121
  465. package/.claude/skills/hook-pipeline/test-root-warning-resolution.sh +0 -148
  466. package/.claude/skills/hybrid-routing/SKILL.md +0 -46
  467. package/.claude/skills/hybrid-routing/check-dependencies.sh +0 -52
  468. package/.claude/skills/hybrid-routing/config.json +0 -26
  469. package/.claude/skills/hybrid-routing/spawn-worker.sh +0 -44
  470. package/.claude/skills/process-lifecycle/SKILL.md +0 -39
  471. package/.claude/skills/process-lifecycle/check-dependencies.sh +0 -58
  472. package/.claude/skills/process-lifecycle/config.json +0 -39
  473. package/.claude/skills/process-lifecycle/process-manager.sh +0 -144
  474. package/.claude/skills/redis-coordination/AGENT_LOGGING.md +0 -280
  475. package/.claude/skills/redis-coordination/BZPOPMIN_FIX_SUMMARY.md +0 -209
  476. package/.claude/skills/redis-coordination/HEARTBEAT.md +0 -57
  477. package/.claude/skills/redis-coordination/HEARTBEAT_MONITORING.md +0 -267
  478. package/.claude/skills/redis-coordination/README.md +0 -64
  479. package/.claude/skills/redis-coordination/SECURITY_REVIEW.md +0 -25
  480. package/.claude/skills/redis-coordination/SHUTDOWN_HANDLING.md +0 -164
  481. package/.claude/skills/redis-coordination/SKILL.md +0 -118
  482. package/.claude/skills/redis-coordination/agent-log.sh +0 -124
  483. package/.claude/skills/redis-coordination/agent-recovery.sh +0 -75
  484. package/.claude/skills/redis-coordination/cancel-swarm.sh +0 -221
  485. package/.claude/skills/redis-coordination/cfn-loop-relaunch.sh +0 -29
  486. package/.claude/skills/redis-coordination/check-dependencies.sh +0 -32
  487. package/.claude/skills/redis-coordination/complete-swarm.sh +0 -75
  488. package/.claude/skills/redis-coordination/config.json +0 -61
  489. package/.claude/skills/redis-coordination/examples/README.md +0 -73
  490. package/.claude/skills/redis-coordination/examples/grafana-dashboard.json +0 -352
  491. package/.claude/skills/redis-coordination/examples/hierarchical-pattern.sh +0 -127
  492. package/.claude/skills/redis-coordination/examples/mesh-pattern.sh +0 -171
  493. package/.claude/skills/redis-coordination/examples/timeout-handling.sh +0 -227
  494. package/.claude/skills/redis-coordination/examples/waiting-mode-pattern.sh +0 -239
  495. package/.claude/skills/redis-coordination/get-agent-timeout.sh +0 -177
  496. package/.claude/skills/redis-coordination/heartbeat-functions.sh +0 -137
  497. package/.claude/skills/redis-coordination/heartbeat-protocol.md +0 -106
  498. package/.claude/skills/redis-coordination/heartbeat.sh +0 -126
  499. package/.claude/skills/redis-coordination/init-swarm.sh +0 -148
  500. package/.claude/skills/redis-coordination/invoke-redis-pattern.sh +0 -220
  501. package/.claude/skills/redis-coordination/invoke-waiting-mode.sh +0 -417
  502. package/.claude/skills/redis-coordination/list-active-swarms.sh +0 -147
  503. package/.claude/skills/redis-coordination/metrics-export.sh +0 -674
  504. package/.claude/skills/redis-coordination/metrics-schema.json +0 -66
  505. package/.claude/skills/redis-coordination/metrics-storage.md +0 -31
  506. package/.claude/skills/redis-coordination/monitor-heartbeats.sh +0 -101
  507. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh +0 -993
  508. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1760949407 +0 -933
  509. package/.claude/skills/redis-coordination/phase4-wake-queue-test-report.md +0 -82
  510. package/.claude/skills/redis-coordination/priority-wake-mechanism.md +0 -75
  511. package/.claude/skills/redis-coordination/priority_wake.py +0 -134
  512. package/.claude/skills/redis-coordination/query-dlq.sh +0 -162
  513. package/.claude/skills/redis-coordination/redis-pattern.sh +0 -619
  514. package/.claude/skills/redis-coordination/send-heartbeat.sh +0 -73
  515. package/.claude/skills/redis-coordination/store-epic-context.sh +0 -123
  516. package/.claude/skills/redis-coordination/test-bzpopmin-fix.sh +0 -274
  517. package/.claude/skills/redis-coordination/test-cancel-swarm.sh +0 -276
  518. package/.claude/skills/redis-coordination/test-dlq.sh +0 -129
  519. package/.claude/skills/redis-coordination/test-iteration-feedback.sh +0 -320
  520. package/.claude/skills/redis-coordination/test-orchestrator.sh +0 -224
  521. package/.claude/skills/redis-coordination/test-priority-wake-phase4-unix.sh +0 -148
  522. package/.claude/skills/redis-coordination/test-priority-wake-phase4.sh +0 -163
  523. package/.claude/skills/redis-coordination/test-priority-wake.sh +0 -138
  524. package/.claude/skills/redis-coordination/test-quick-fix.sh +0 -81
  525. package/.claude/skills/redis-coordination/test-quorum-absolute.sh +0 -45
  526. package/.claude/skills/redis-coordination/test-quorum-fallback.sh +0 -68
  527. package/.claude/skills/redis-coordination/test-quorum-percentage.sh +0 -56
  528. package/.claude/skills/redis-coordination/test-quorum-with-retry.sh +0 -81
  529. package/.claude/skills/redis-coordination/test-quorum.sh +0 -57
  530. package/.claude/skills/redis-coordination/test-shutdown-handling.sh +0 -187
  531. package/.claude/skills/redis-coordination/test-shutdown.sh +0 -160
  532. package/.claude/skills/redis-coordination/test-utils-unix.sh +0 -97
  533. package/.claude/skills/redis-coordination/test-utils.sh +0 -97
  534. package/.claude/skills/redis-coordination/test-waiting-mode.sh +0 -59
  535. package/.claude/skills/redis-coordination/tests/dlq-functionality-test.sh +0 -102
  536. package/.claude/skills/redis-coordination/tests/edge-cases-test.sh +0 -99
  537. package/.claude/skills/redis-coordination/tests/integration-test.sh +0 -170
  538. package/.claude/skills/redis-coordination/tests/retry-mechanism-test.sh +0 -82
  539. package/.claude/skills/redis-coordination/tests/run-test-suite.sh +0 -92
  540. package/.claude/skills/redis-coordination/tests/test-heartbeat-monitoring.sh +0 -418
  541. package/.claude/skills/redis-coordination/tests/test-heartbeat-simple.sh +0 -124
  542. package/.claude/skills/redis-coordination/tests/test-utils.sh +0 -122
  543. package/.claude/skills/skill-builder/SKILL.md +0 -910
  544. package/.claude/skills/sqlite-memory/IMPLEMENTATION_REPORT.md +0 -393
  545. package/.claude/skills/sqlite-memory/QUICK_REFERENCE.md +0 -204
  546. package/.claude/skills/sqlite-memory/SKILL.md +0 -415
  547. package/.claude/skills/sqlite-memory/acl-queries.sql +0 -452
  548. package/.claude/skills/sqlite-memory/check-dependencies.sh +0 -36
  549. package/.claude/skills/sqlite-memory/config.json +0 -45
  550. package/.claude/skills/sqlite-memory/memory-cli.sh +0 -88
  551. package/.claude/skills/sqlite-memory/test-state-persistence.js +0 -187
  552. package/.claude/skills/sqlite-memory/ttl-cleanup.sh +0 -274
  553. package/.claude/skills/test-execution/SKILL.md +0 -128
  554. package/.claude/skills/test-execution/check-dependencies.sh +0 -36
  555. package/.claude/skills/test-execution/test-cache-reader.sh +0 -134
  556. package/.claude/skills/test-execution/test-concurrent-conflicts.sh +0 -115
  557. package/.claude/skills/test-execution/test-coordinator-pattern.sh +0 -109
  558. package/.claude/skills/test-execution-coordinator-pattern.md +0 -228
  559. package/.claude/skills/transparency-middleware/Cargo.toml +0 -18
  560. package/.claude/skills/transparency-middleware/SECURITY.md +0 -41
  561. package/.claude/skills/transparency-middleware/SKILL.md +0 -91
  562. package/.claude/skills/transparency-middleware/TEST_RESULTS.md +0 -174
  563. package/.claude/skills/transparency-middleware/config.json +0 -31
  564. package/.claude/skills/transparency-middleware/examples/basic-usage.ts +0 -39
  565. package/.claude/skills/transparency-middleware/examples/batch-processing.ts +0 -52
  566. package/.claude/skills/transparency-middleware/examples/custom-filtering.ts +0 -61
  567. package/.claude/skills/transparency-middleware/invoke-transparency-filter.sh +0 -98
  568. package/.claude/skills/transparency-middleware/invoke-transparency-init.sh +0 -224
  569. package/.claude/skills/transparency-middleware/invoke-transparency-level.sh +0 -333
  570. package/.claude/skills/transparency-middleware/invoke-transparency-metrics.sh +0 -345
  571. package/.claude/skills/transparency-middleware/invoke-transparency-observe.sh +0 -140
  572. package/.claude/skills/transparency-middleware/invoke-transparency-stop.sh +0 -235
  573. package/.claude/skills/transparency-middleware/memory_query.rs +0 -85
  574. package/.claude/skills/transparency-middleware/memory_repository.rs +0 -140
  575. package/.claude/skills/transparency-middleware/memory_schema.rs +0 -64
  576. package/.claude/skills/transparency-middleware/middleware-config.sh +0 -29
  577. package/.claude/skills/transparency-middleware/performance-benchmark.sh +0 -79
  578. package/.claude/skills/transparency-middleware/test-e2e.sh +0 -406
  579. package/.claude/skills/transparency-middleware/test-integration.sh +0 -162
  580. package/.claude/skills/transparency-middleware/test-transparency-skill.sh +0 -368
  581. package/.claude/skills/transparency-middleware/test-transparency-skill.sh.unix +0 -126
  582. package/.claude/skills/transparency-middleware/tests/input-validation.sh +0 -93
  583. package/.claude/skills/transparency-middleware/wrap-agent.sh +0 -132
  584. package/.claude/skills/web-portal/DESIGN.md +0 -117
  585. package/.claude/skills/web-portal/SKILL.md +0 -679
  586. package/.claude/skills/web-portal/invoke-portal-agents.sh +0 -129
  587. package/.claude/skills/web-portal/invoke-portal-dashboard.sh +0 -85
  588. package/.claude/skills/web-portal/invoke-portal-events.sh +0 -125
  589. package/.claude/skills/web-portal/invoke-portal-metrics.sh +0 -112
  590. package/.claude/skills/web-portal/invoke-portal-start.sh +0 -135
  591. package/.claude/skills/web-portal/invoke-portal-stop.sh +0 -121
  592. package/.claude/skills/web-portal/test-web-portal-skill.sh +0 -51
  593. package/.claude/skills/web-portal/validate-deployment.sh +0 -85
  594. package/.claude/slash-commands.json +0 -92
  595. package/.claude/spawn-pattern-examples.md +0 -500
  596. package/.claude/sprint-configs/cfn-naming-standardization.json +0 -729
  597. package/.claude/sprint-reports/sprint-1.4-self-correction-monitoring.json +0 -64
  598. package/.claude/swarm-memory.db +0 -0
  599. package/.claude/templates/agent-optimization-plan.md +0 -439
  600. package/.claude/templates/bulk-optimization-strategy.md +0 -367
  601. package/.claude/templates/cfn-loop-mechanics.md +0 -80
  602. package/.claude/templates/coordinator-patterns.md +0 -75
  603. package/.claude/templates/memory-operations.md +0 -200
  604. package/.claude/templates/post-edit-validation.md +0 -109
  605. package/.claude/templates/redis-coordination.md +0 -140
  606. package/.claude/templates/remaining-agent-analysis.md +0 -121
  607. package/.claude/templates/swarm-coordination.md +0 -103
  608. package/.claude/templates/team-dynamics.md +0 -82
  609. package/CLAUDE.md +0 -502
  610. package/dist/cli/cli-agent-context.test.js +0 -451
  611. package/dist/cli/cli-agent-context.test.js.map +0 -1
  612. package/dist/coordination/fleet-manager.test.js +0 -141
  613. package/dist/coordination/fleet-manager.test.js.map +0 -1
  614. package/dist/middleware/transparency-middleware.test.js +0 -184
  615. package/dist/middleware/transparency-middleware.test.js.map +0 -1
  616. package/readme/CLAUDE.md +0 -429
  617. /package/.claude/agents/{core-agents → cfn-dev-team/developers}/researcher.md +0 -0
  618. /package/.claude/commands/{README.md → cfn/README.md} +0 -0
  619. /package/.claude/commands/{auto-compact.md → cfn/auto-compact.md} +0 -0
  620. /package/.claude/commands/{cfn-claude-sync.md → cfn/cfn-claude-sync.md} +0 -0
  621. /package/.claude/commands/{cfn-loop-document.md → cfn/cfn-loop-document.md} +0 -0
  622. /package/.claude/commands/{claude-md.md → cfn/claude-md.md} +0 -0
  623. /package/.claude/commands/{claude-soul.md → cfn/claude-soul.md} +0 -0
  624. /package/.claude/commands/{context-query.md → cfn/context-query.md} +0 -0
  625. /package/.claude/commands/{cost-savings-off.md → cfn/cost-savings-off.md} +0 -0
  626. /package/.claude/commands/{cost-savings-on.md → cfn/cost-savings-on.md} +0 -0
  627. /package/.claude/commands/{cost-savings-status.md → cfn/cost-savings-status.md} +0 -0
  628. /package/.claude/commands/{custom-routing-activate.md → cfn/custom-routing-activate.md} +0 -0
  629. /package/.claude/commands/{custom-routing-deactivate.md → cfn/custom-routing-deactivate.md} +0 -0
  630. /package/.claude/commands/{dependency-recommendations.md → cfn/dependency-recommendations.md} +0 -0
  631. /package/.claude/commands/{fullstack.md → cfn/fullstack.md} +0 -0
  632. /package/.claude/commands/{github-commit.md → cfn/github-commit.md} +0 -0
  633. /package/.claude/commands/{github.md → cfn/github.md} +0 -0
  634. /package/.claude/commands/{hello-world-tests.md → cfn/hello-world-tests.md} +0 -0
  635. /package/.claude/commands/{hooks.md → cfn/hooks.md} +0 -0
  636. /package/.claude/commands/{launch-web-dashboard.md → cfn/launch-web-dashboard.md} +0 -0
  637. /package/.claude/commands/{metrics-summary.md → cfn/metrics-summary.md} +0 -0
  638. /package/.claude/commands/{neural.md → cfn/neural.md} +0 -0
  639. /package/.claude/commands/{parse-epic.md → cfn/parse-epic.md} +0 -0
  640. /package/.claude/commands/{performance.md → cfn/performance.md} +0 -0
  641. /package/.claude/commands/{sparc.md → cfn/sparc.md} +0 -0
  642. /package/.claude/commands/{suggest-improvements.md → cfn/suggest-improvements.md} +0 -0
  643. /package/.claude/commands/{suggest-templates.md → cfn/suggest-templates.md} +0 -0
  644. /package/.claude/commands/{swarm.md → cfn/swarm.md} +0 -0
  645. /package/.claude/commands/{switch-api.md → cfn/switch-api.md} +0 -0
  646. /package/.claude/commands/{workflow.md → cfn/workflow.md} +0 -0
  647. /package/.claude/hooks/{invoke-post-edit.sh → cfn-invoke-post-edit.sh} +0 -0
  648. /package/.claude/hooks/{post-edit.config.json → cfn-post-edit.config.json} +0 -0
  649. /package/.claude/skills/{agent-spawning → cfn-agent-spawning}/README.md +0 -0
  650. /package/.claude/skills/{analytics → cfn-analytics}/README.md +0 -0
  651. /package/.claude/skills/{config-management → cfn-config-management}/README.md +0 -0
  652. /package/.claude/skills/{event-bus → cfn-event-bus}/README.md +0 -0
  653. /package/.claude/skills/{fleet-manager → cfn-fleet-manager}/README.md +0 -0
  654. /package/.claude/skills/{hook-pipeline → cfn-hook-pipeline}/README.md +0 -0
  655. /package/.claude/skills/{hybrid-routing → cfn-hybrid-routing}/README.md +0 -0
  656. /package/.claude/skills/{process-lifecycle → cfn-process-lifecycle}/README.md +0 -0
  657. /package/.claude/skills/{sqlite-memory → cfn-sqlite-memory}/README.md +0 -0
  658. /package/.claude/skills/{test-execution → cfn-test-execution}/README.md +0 -0
  659. /package/.claude/skills/{transparency-middleware → cfn-transparency-middleware}/README.md +0 -0
@@ -1,418 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- ##############################################################################
4
- # Heartbeat Monitoring Test Suite
5
- # Validates agent heartbeat detection and quorum-aware handling
6
- ##############################################################################
7
-
8
- set -euo pipefail
9
-
10
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
11
- REDIS_COORDINATION_DIR="$(dirname "$SCRIPT_DIR")"
12
-
13
- # Test configuration
14
- TASK_ID="test-heartbeat-$(date +%s)"
15
- TEST_RESULTS=()
16
- FAILED_TESTS=0
17
-
18
- # Colors for output
19
- RED='\033[0;31m'
20
- GREEN='\033[0;32m'
21
- YELLOW='\033[1;33m'
22
- NC='\033[0m' # No Color
23
-
24
- ##############################################################################
25
- # Test Helper Functions
26
- ##############################################################################
27
- function setup_test() {
28
- local test_name="$1"
29
- echo ""
30
- echo "=========================================="
31
- echo "TEST: $test_name"
32
- echo "=========================================="
33
-
34
- # Clean up any previous test data
35
- redis-cli --scan --pattern "swarm:${TASK_ID}:*" | xargs -r redis-cli DEL >/dev/null 2>&1 || true
36
- }
37
-
38
- function assert_equals() {
39
- local expected="$1"
40
- local actual="$2"
41
- local message="$3"
42
-
43
- if [ "$expected" = "$actual" ]; then
44
- echo -e "${GREEN}✓${NC} $message"
45
- return 0
46
- else
47
- echo -e "${RED}✗${NC} $message"
48
- echo " Expected: $expected"
49
- echo " Actual: $actual"
50
- return 1
51
- fi
52
- }
53
-
54
- function assert_not_equals() {
55
- local not_expected="$1"
56
- local actual="$2"
57
- local message="$3"
58
-
59
- if [ "$not_expected" != "$actual" ]; then
60
- echo -e "${GREEN}✓${NC} $message"
61
- return 0
62
- else
63
- echo -e "${RED}✗${NC} $message"
64
- echo " Should not be: $not_expected"
65
- echo " Actual: $actual"
66
- return 1
67
- fi
68
- }
69
-
70
- function record_result() {
71
- local test_name="$1"
72
- local result="$2"
73
-
74
- TEST_RESULTS+=("$test_name: $result")
75
-
76
- if [ "$result" = "PASS" ]; then
77
- echo -e "${GREEN}RESULT: PASS${NC}"
78
- else
79
- echo -e "${RED}RESULT: FAIL${NC}"
80
- FAILED_TESTS=$((FAILED_TESTS + 1))
81
- fi
82
- }
83
-
84
- ##############################################################################
85
- # Test 1: Agent with active heartbeat is detected as alive
86
- ##############################################################################
87
- function test_active_heartbeat() {
88
- setup_test "Active Heartbeat Detection"
89
-
90
- local agent="test-agent-1"
91
- local hb_key="swarm:${TASK_ID}:${agent}:heartbeat"
92
-
93
- # Set heartbeat
94
- redis-cli SET "$hb_key" "{\"timestamp\": $(date +%s), \"status\": \"working\"}" >/dev/null
95
- redis-cli EXPIRE "$hb_key" 60 >/dev/null
96
-
97
- # Source heartbeat functions
98
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
99
-
100
- # Check heartbeat
101
- if check_agent_heartbeat "$agent" "$TASK_ID"; then
102
- record_result "test_active_heartbeat" "PASS"
103
- else
104
- record_result "test_active_heartbeat" "FAIL"
105
- fi
106
- }
107
-
108
- ##############################################################################
109
- # Test 2: Agent without heartbeat is detected as dead
110
- ##############################################################################
111
- function test_missing_heartbeat() {
112
- setup_test "Missing Heartbeat Detection"
113
-
114
- local agent="test-agent-2"
115
-
116
- # Source heartbeat functions
117
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
118
-
119
- # Check heartbeat (should fail - no heartbeat set)
120
- if ! check_agent_heartbeat "$agent" "$TASK_ID"; then
121
- record_result "test_missing_heartbeat" "PASS"
122
- else
123
- record_result "test_missing_heartbeat" "FAIL"
124
- fi
125
- }
126
-
127
- ##############################################################################
128
- # Test 3: Missed heartbeat counter increments correctly
129
- ##############################################################################
130
- function test_missed_heartbeat_counter() {
131
- setup_test "Missed Heartbeat Counter"
132
-
133
- local agent="test-agent-3"
134
-
135
- # Source heartbeat functions
136
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
137
-
138
- # Initialize variables
139
- LOOP3_FAILED_AGENTS=()
140
- LOOP2_FAILED_AGENTS=()
141
- LOOP3_COMPLETED_AGENTS=()
142
- LOOP2_COMPLETED_AGENTS=()
143
- MIN_QUORUM_LOOP3=1
144
- MIN_QUORUM_LOOP2=1
145
- LOOP3_TOTAL=3
146
- LOOP2_TOTAL=3
147
- LOOP3_AGENTS="$agent"
148
- LOOP2_AGENTS=""
149
-
150
- # First check - should increment to 1
151
- check_heartbeats_loop "$TASK_ID" "test" "$agent" 2>/dev/null || true
152
-
153
- if [ "${MISSED_HEARTBEATS[$agent]:-0}" -eq 1 ]; then
154
- echo -e "${GREEN}✓${NC} Counter incremented to 1"
155
-
156
- # Second check - should increment to 2
157
- check_heartbeats_loop "$TASK_ID" "test" "$agent" 2>/dev/null || true
158
-
159
- if [ "${MISSED_HEARTBEATS[$agent]:-0}" -eq 2 ]; then
160
- echo -e "${GREEN}✓${NC} Counter incremented to 2"
161
- record_result "test_missed_heartbeat_counter" "PASS"
162
- else
163
- echo -e "${RED}✗${NC} Counter should be 2, got ${MISSED_HEARTBEATS[$agent]:-0}"
164
- record_result "test_missed_heartbeat_counter" "FAIL"
165
- fi
166
- else
167
- echo -e "${RED}✗${NC} Counter should be 1, got ${MISSED_HEARTBEATS[$agent]:-0}"
168
- record_result "test_missed_heartbeat_counter" "FAIL"
169
- fi
170
- }
171
-
172
- ##############################################################################
173
- # Test 4: Heartbeat counter resets when agent recovers
174
- ##############################################################################
175
- function test_heartbeat_recovery() {
176
- setup_test "Heartbeat Recovery"
177
-
178
- local agent="test-agent-4"
179
- local hb_key="swarm:${TASK_ID}:${agent}:heartbeat"
180
-
181
- # Source heartbeat functions
182
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
183
-
184
- # Initialize variables
185
- LOOP3_FAILED_AGENTS=()
186
- LOOP2_FAILED_AGENTS=()
187
- LOOP3_COMPLETED_AGENTS=()
188
- LOOP2_COMPLETED_AGENTS=()
189
- MIN_QUORUM_LOOP3=1
190
- MIN_QUORUM_LOOP2=1
191
- LOOP3_TOTAL=3
192
- LOOP2_TOTAL=3
193
- LOOP3_AGENTS="$agent"
194
- LOOP2_AGENTS=""
195
-
196
- # Miss heartbeat twice
197
- check_heartbeats_loop "$TASK_ID" "test" "$agent" 2>/dev/null || true
198
- check_heartbeats_loop "$TASK_ID" "test" "$agent" 2>/dev/null || true
199
-
200
- if [ "${MISSED_HEARTBEATS[$agent]:-0}" -eq 2 ]; then
201
- echo -e "${GREEN}✓${NC} Counter at 2 after missing heartbeats"
202
-
203
- # Agent recovers - set heartbeat
204
- redis-cli SET "$hb_key" "{\"timestamp\": $(date +%s), \"status\": \"working\"}" >/dev/null
205
- redis-cli EXPIRE "$hb_key" 60 >/dev/null
206
-
207
- # Check again - should reset
208
- check_heartbeats_loop "$TASK_ID" "test" "$agent" 2>/dev/null || true
209
-
210
- if [ "${MISSED_HEARTBEATS[$agent]:-0}" -eq 0 ]; then
211
- echo -e "${GREEN}✓${NC} Counter reset to 0 after recovery"
212
- record_result "test_heartbeat_recovery" "PASS"
213
- else
214
- echo -e "${RED}✗${NC} Counter should reset to 0, got ${MISSED_HEARTBEATS[$agent]:-0}"
215
- record_result "test_heartbeat_recovery" "FAIL"
216
- fi
217
- else
218
- echo -e "${RED}✗${NC} Counter should be 2, got ${MISSED_HEARTBEATS[$agent]:-0}"
219
- record_result "test_heartbeat_recovery" "FAIL"
220
- fi
221
- }
222
-
223
- ##############################################################################
224
- # Test 5: Heartbeat monitor starts and stops correctly
225
- ##############################################################################
226
- function test_monitor_lifecycle() {
227
- setup_test "Monitor Lifecycle"
228
-
229
- local agent1="test-agent-5a"
230
- local agent2="test-agent-5b"
231
-
232
- # Source heartbeat functions
233
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
234
-
235
- # Initialize variables
236
- LOOP3_FAILED_AGENTS=()
237
- LOOP2_FAILED_AGENTS=()
238
- LOOP3_COMPLETED_AGENTS=()
239
- LOOP2_COMPLETED_AGENTS=()
240
- MIN_QUORUM_LOOP3=1
241
- MIN_QUORUM_LOOP2=1
242
- LOOP3_TOTAL=2
243
- LOOP2_TOTAL=2
244
- LOOP3_AGENTS="$agent1,$agent2"
245
- LOOP2_AGENTS=""
246
- SHUTDOWN_REQUESTED=0
247
-
248
- # Start monitor
249
- MONITOR_PID=$(start_heartbeat_monitor "$TASK_ID" "test" "$agent1" "$agent2")
250
-
251
- if [ -n "$MONITOR_PID" ] && kill -0 "$MONITOR_PID" 2>/dev/null; then
252
- echo -e "${GREEN}✓${NC} Monitor started successfully (PID: $MONITOR_PID)"
253
-
254
- # Wait a moment
255
- sleep 1
256
-
257
- # Check marker file exists
258
- if [ -f "/tmp/heartbeat-monitor-${TASK_ID}-test.active" ]; then
259
- echo -e "${GREEN}✓${NC} Monitor marker file created"
260
-
261
- # Stop monitor
262
- stop_heartbeat_monitor "$TASK_ID" "test" "$MONITOR_PID"
263
-
264
- # Wait a moment for cleanup
265
- sleep 1
266
-
267
- # Check marker file removed
268
- if [ ! -f "/tmp/heartbeat-monitor-${TASK_ID}-test.active" ]; then
269
- echo -e "${GREEN}✓${NC} Monitor marker file removed"
270
-
271
- # Check process stopped
272
- if ! kill -0 "$MONITOR_PID" 2>/dev/null; then
273
- echo -e "${GREEN}✓${NC} Monitor process stopped"
274
- record_result "test_monitor_lifecycle" "PASS"
275
- else
276
- echo -e "${RED}✗${NC} Monitor process still running"
277
- kill "$MONITOR_PID" 2>/dev/null || true
278
- record_result "test_monitor_lifecycle" "FAIL"
279
- fi
280
- else
281
- echo -e "${RED}✗${NC} Monitor marker file not removed"
282
- stop_heartbeat_monitor "$TASK_ID" "test" "$MONITOR_PID"
283
- record_result "test_monitor_lifecycle" "FAIL"
284
- fi
285
- else
286
- echo -e "${RED}✗${NC} Monitor marker file not created"
287
- stop_heartbeat_monitor "$TASK_ID" "test" "$MONITOR_PID"
288
- record_result "test_monitor_lifecycle" "FAIL"
289
- fi
290
- else
291
- echo -e "${RED}✗${NC} Monitor failed to start"
292
- record_result "test_monitor_lifecycle" "FAIL"
293
- fi
294
- }
295
-
296
- ##############################################################################
297
- # Test 6: Monitor respects shutdown flag
298
- ##############################################################################
299
- function test_monitor_shutdown() {
300
- setup_test "Monitor Shutdown Handling"
301
-
302
- local agent="test-agent-6"
303
-
304
- # Source heartbeat functions
305
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
306
-
307
- # Initialize variables
308
- LOOP3_FAILED_AGENTS=()
309
- LOOP2_FAILED_AGENTS=()
310
- LOOP3_COMPLETED_AGENTS=()
311
- LOOP2_COMPLETED_AGENTS=()
312
- MIN_QUORUM_LOOP3=1
313
- MIN_QUORUM_LOOP2=1
314
- LOOP3_TOTAL=1
315
- LOOP2_TOTAL=1
316
- LOOP3_AGENTS="$agent"
317
- LOOP2_AGENTS=""
318
- SHUTDOWN_REQUESTED=0
319
-
320
- # Start monitor
321
- MONITOR_PID=$(start_heartbeat_monitor "$TASK_ID" "test" "$agent")
322
-
323
- if [ -n "$MONITOR_PID" ] && kill -0 "$MONITOR_PID" 2>/dev/null; then
324
- echo -e "${GREEN}✓${NC} Monitor started"
325
-
326
- # Set shutdown flag
327
- SHUTDOWN_REQUESTED=1
328
- export SHUTDOWN_REQUESTED
329
-
330
- # Wait for monitor to detect shutdown
331
- sleep 2
332
-
333
- # Monitor should have stopped on its own
334
- if ! kill -0 "$MONITOR_PID" 2>/dev/null; then
335
- echo -e "${GREEN}✓${NC} Monitor stopped automatically on shutdown flag"
336
-
337
- # Cleanup
338
- rm -f "/tmp/heartbeat-monitor-${TASK_ID}-test.active"
339
- record_result "test_monitor_shutdown" "PASS"
340
- else
341
- echo -e "${YELLOW}⚠${NC} Monitor still running, forcing cleanup"
342
- stop_heartbeat_monitor "$TASK_ID" "test" "$MONITOR_PID"
343
- record_result "test_monitor_shutdown" "PASS" # Still pass since cleanup works
344
- fi
345
- else
346
- echo -e "${RED}✗${NC} Monitor failed to start"
347
- record_result "test_monitor_shutdown" "FAIL"
348
- fi
349
- }
350
-
351
- ##############################################################################
352
- # Run All Tests
353
- ##############################################################################
354
- echo "=========================================="
355
- echo "Heartbeat Monitoring Test Suite"
356
- echo "Task ID: $TASK_ID"
357
- echo "=========================================="
358
-
359
- test_active_heartbeat
360
- test_missing_heartbeat
361
- test_missed_heartbeat_counter
362
- test_heartbeat_recovery
363
- test_monitor_lifecycle
364
- test_monitor_shutdown
365
-
366
- ##############################################################################
367
- # Cleanup
368
- ##############################################################################
369
- echo ""
370
- echo "=========================================="
371
- echo "Cleanup"
372
- echo "=========================================="
373
-
374
- # Clean up all test Redis keys
375
- KEYS_DELETED=$(redis-cli --scan --pattern "swarm:${TASK_ID}:*" | xargs -r redis-cli DEL 2>/dev/null || echo "0")
376
- echo "Deleted $KEYS_DELETED Redis keys"
377
-
378
- # Clean up any remaining marker files
379
- rm -f /tmp/heartbeat-monitor-${TASK_ID}-*.active 2>/dev/null || true
380
- echo "Removed marker files"
381
-
382
- ##############################################################################
383
- # Summary
384
- ##############################################################################
385
- echo ""
386
- echo "=========================================="
387
- echo "Test Summary"
388
- echo "=========================================="
389
-
390
- TOTAL_TESTS=${#TEST_RESULTS[@]}
391
- PASSED_TESTS=$((TOTAL_TESTS - FAILED_TESTS))
392
-
393
- echo "Total Tests: $TOTAL_TESTS"
394
- echo -e "Passed: ${GREEN}$PASSED_TESTS${NC}"
395
- echo -e "Failed: ${RED}$FAILED_TESTS${NC}"
396
-
397
- echo ""
398
- echo "Individual Results:"
399
- for result in "${TEST_RESULTS[@]}"; do
400
- if [[ "$result" == *"PASS"* ]]; then
401
- echo -e " ${GREEN}✓${NC} $result"
402
- else
403
- echo -e " ${RED}✗${NC} $result"
404
- fi
405
- done
406
-
407
- echo ""
408
- if [ $FAILED_TESTS -eq 0 ]; then
409
- echo -e "${GREEN}=========================================="
410
- echo "ALL TESTS PASSED!"
411
- echo -e "==========================================${NC}"
412
- exit 0
413
- else
414
- echo -e "${RED}=========================================="
415
- echo "SOME TESTS FAILED"
416
- echo -e "==========================================${NC}"
417
- exit 1
418
- fi
@@ -1,124 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- ##############################################################################
4
- # Simple Heartbeat Monitoring Test
5
- # Validates core heartbeat detection functionality
6
- ##############################################################################
7
-
8
- set -euo pipefail
9
-
10
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
11
- REDIS_COORDINATION_DIR="$(dirname "$SCRIPT_DIR")"
12
-
13
- # Test configuration
14
- TASK_ID="test-hb-$(date +%s)"
15
-
16
- # Source functions
17
- source "$REDIS_COORDINATION_DIR/heartbeat-functions.sh"
18
-
19
- echo "=========================================="
20
- echo "Simple Heartbeat Test"
21
- echo "Task ID: $TASK_ID"
22
- echo "=========================================="
23
-
24
- ##############################################################################
25
- # Test 1: Active heartbeat detected
26
- ##############################################################################
27
- echo ""
28
- echo "Test 1: Active heartbeat detection"
29
- AGENT1="agent-alive"
30
- HB_KEY="swarm:${TASK_ID}:${AGENT1}:heartbeat"
31
-
32
- redis-cli SET "$HB_KEY" '{"timestamp": 1234567890, "status": "working"}' >/dev/null
33
- redis-cli EXPIRE "$HB_KEY" 60 >/dev/null
34
-
35
- if check_agent_heartbeat "$AGENT1" "$TASK_ID"; then
36
- echo "✓ PASS: Active heartbeat detected"
37
- else
38
- echo "✗ FAIL: Active heartbeat not detected"
39
- fi
40
-
41
- ##############################################################################
42
- # Test 2: Missing heartbeat detected
43
- ##############################################################################
44
- echo ""
45
- echo "Test 2: Missing heartbeat detection"
46
- AGENT2="agent-dead"
47
-
48
- if ! check_agent_heartbeat "$AGENT2" "$TASK_ID"; then
49
- echo "✓ PASS: Missing heartbeat detected"
50
- else
51
- echo "✗ FAIL: Missing heartbeat should have been detected"
52
- fi
53
-
54
- ##############################################################################
55
- # Test 3: Counter increments
56
- ##############################################################################
57
- echo ""
58
- echo "Test 3: Missed heartbeat counter"
59
- AGENT3="agent-flaky"
60
-
61
- # Initialize required variables
62
- LOOP3_FAILED_AGENTS=()
63
- LOOP2_FAILED_AGENTS=()
64
- LOOP3_COMPLETED_AGENTS=()
65
- LOOP2_COMPLETED_AGENTS=()
66
- MIN_QUORUM_LOOP3=1
67
- MIN_QUORUM_LOOP2=1
68
- LOOP3_TOTAL=1
69
- LOOP2_TOTAL=1
70
- LOOP3_AGENTS="$AGENT3"
71
- LOOP2_AGENTS=""
72
-
73
- # Check twice (agent has no heartbeat)
74
- check_heartbeats_loop "$TASK_ID" "test" "$AGENT3" 2>/dev/null || true
75
- check_heartbeats_loop "$TASK_ID" "test" "$AGENT3" 2>/dev/null || true
76
-
77
- if [ "${MISSED_HEARTBEATS[$AGENT3]:-0}" -eq 2 ]; then
78
- echo "✓ PASS: Counter incremented correctly to 2"
79
- else
80
- echo "✗ FAIL: Counter should be 2, got ${MISSED_HEARTBEATS[$AGENT3]:-0}"
81
- fi
82
-
83
- ##############################################################################
84
- # Test 4: Counter resets on recovery
85
- ##############################################################################
86
- echo ""
87
- echo "Test 4: Counter reset on recovery"
88
- AGENT4="agent-recover"
89
-
90
- # Initialize
91
- LOOP3_AGENTS="$AGENT4"
92
-
93
- # Miss twice
94
- check_heartbeats_loop "$TASK_ID" "test" "$AGENT4" 2>/dev/null || true
95
- check_heartbeats_loop "$TASK_ID" "test" "$AGENT4" 2>/dev/null || true
96
-
97
- BEFORE="${MISSED_HEARTBEATS[$AGENT4]:-0}"
98
-
99
- # Set heartbeat
100
- HB_KEY4="swarm:${TASK_ID}:${AGENT4}:heartbeat"
101
- redis-cli SET "$HB_KEY4" '{"timestamp": 1234567890, "status": "recovered"}' >/dev/null
102
-
103
- # Check again
104
- check_heartbeats_loop "$TASK_ID" "test" "$AGENT4" 2>/dev/null || true
105
-
106
- AFTER="${MISSED_HEARTBEATS[$AGENT4]:-0}"
107
-
108
- if [ "$BEFORE" -eq 2 ] && [ "$AFTER" -eq 0 ]; then
109
- echo "✓ PASS: Counter reset from 2 to 0 on recovery"
110
- else
111
- echo "✗ FAIL: Counter should reset (before=$BEFORE, after=$AFTER)"
112
- fi
113
-
114
- ##############################################################################
115
- # Cleanup
116
- ##############################################################################
117
- echo ""
118
- echo "Cleaning up..."
119
- redis-cli --scan --pattern "swarm:${TASK_ID}:*" | xargs -r redis-cli DEL >/dev/null 2>&1 || true
120
-
121
- echo ""
122
- echo "=========================================="
123
- echo "Tests complete"
124
- echo "=========================================="
@@ -1,122 +0,0 @@
1
- #!/bin/bash
2
- # Shared Test Utilities for Redis Coordination Test Suite
3
-
4
- # Assertion utilities
5
- assert() {
6
- local condition="$1"
7
- local message="${2:-Assertion failed}"
8
-
9
- if ! eval "$condition"; then
10
- echo "❌ $message"
11
- return 1
12
- fi
13
- echo "✅ $message"
14
- }
15
-
16
- assert_equal() {
17
- local actual="$1"
18
- local expected="$2"
19
- local message="${3:-Values not equal}"
20
-
21
- if [ "$actual" != "$expected" ]; then
22
- echo "❌ $message: Expected '$expected', got '$actual'"
23
- return 1
24
- fi
25
- echo "✅ $message"
26
- }
27
-
28
- assert_not_empty() {
29
- local value="$1"
30
- local message="${2:-Value is empty}"
31
-
32
- if [ -z "$value" ]; then
33
- echo "❌ $message"
34
- return 1
35
- fi
36
- echo "✅ $message"
37
- }
38
-
39
- assert_contains() {
40
- local haystack="$1"
41
- local needle="$2"
42
- local message="${3:-Value not found}"
43
-
44
- if [[ ! "$haystack" == *"$needle"* ]]; then
45
- echo "❌ $message"
46
- return 1
47
- fi
48
- echo "✅ $message"
49
- }
50
-
51
- assert_json_valid() {
52
- local json="$1"
53
- local message="${2:-Invalid JSON}"
54
-
55
- if ! echo "$json" | jq empty >/dev/null 2>&1; then
56
- echo "❌ $message"
57
- return 1
58
- fi
59
- echo "✅ $message"
60
- }
61
-
62
- assert_empty() {
63
- local value="$1"
64
- local message="${2:-Value is not empty}"
65
-
66
- if [ -n "$value" ]; then
67
- echo "❌ $message"
68
- return 1
69
- fi
70
- echo "✅ $message"
71
- }
72
-
73
- # Test suite runner
74
- run_tests() {
75
- local tests=("$@")
76
- local passed=0
77
- local failed=0
78
- local total=${#tests[@]}
79
-
80
- echo "Running $total test cases..."
81
-
82
- for test in "${tests[@]}"; do
83
- if "$test"; then
84
- ((passed++))
85
- else
86
- ((failed++))
87
- fi
88
- done
89
-
90
- echo "Test Summary: $passed/$total passed, $failed failed"
91
-
92
- if [ $failed -gt 0 ]; then
93
- return 1
94
- fi
95
- return 0
96
- }
97
-
98
- # Compute confidence score based on test results
99
- compute_confidence_score() {
100
- local passed="$1"
101
- local total="$2"
102
-
103
- # Compute percentage, convert to 0-1 range
104
- local confidence=$(echo "scale=2; $passed / $total" | bc)
105
- echo "$confidence"
106
- }
107
-
108
- # Prepare for CFN Loop reporting
109
- report_test_results() {
110
- local task_id="$1"
111
- local agent_id="$2"
112
- local passed="$3"
113
- local total="$4"
114
-
115
- local confidence=$(compute_confidence_score "$passed" "$total")
116
-
117
- ./.claude/skills/redis-coordination/invoke-waiting-mode.sh report \
118
- --task-id "$task_id" \
119
- --agent-id "$agent_id" \
120
- --confidence "$confidence" \
121
- --iteration 1
122
- }