claude-flow-novice 2.9.0 → 2.10.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 (353) hide show
  1. package/.claude/agents/cfn-dev-team/CLAUDE.md +1086 -0
  2. package/.claude/agents/cfn-dev-team/README.md +116 -0
  3. package/.claude/agents/cfn-dev-team/architecture/api-designer-persona.md +149 -0
  4. package/.claude/agents/cfn-dev-team/architecture/base-template-generator.md +196 -0
  5. package/.claude/agents/cfn-dev-team/architecture/goal-planner.md +183 -0
  6. package/.claude/agents/cfn-dev-team/architecture/planner.md +182 -0
  7. package/.claude/agents/cfn-dev-team/architecture/system-architect.md +162 -0
  8. package/.claude/agents/cfn-dev-team/coordinators/cfn-frontend-coordinator.md +540 -0
  9. package/.claude/agents/cfn-dev-team/coordinators/cfn-v3-coordinator.md +20 -14
  10. package/.claude/agents/cfn-dev-team/coordinators/consensus-builder.md +167 -0
  11. package/.claude/agents/cfn-dev-team/dev-ops/devops-engineer.md +148 -0
  12. package/.claude/agents/cfn-dev-team/dev-ops/github-commit-agent.md +118 -0
  13. package/.claude/agents/cfn-dev-team/dev-ops/kubernetes-specialist.md +540 -0
  14. package/.claude/agents/cfn-dev-team/developers/backend-dev.md +20 -0
  15. package/.claude/agents/cfn-dev-team/developers/data/data-engineer.md +585 -0
  16. package/.claude/agents/cfn-dev-team/developers/database/database-architect.md +276 -0
  17. package/.claude/agents/cfn-dev-team/developers/dev-backend-api.md +147 -0
  18. package/.claude/agents/cfn-dev-team/developers/frontend/mobile-dev.md +218 -0
  19. package/.claude/agents/cfn-dev-team/developers/{react-frontend-engineer.md → frontend/react-frontend-engineer.md} +53 -5
  20. package/.claude/agents/cfn-dev-team/developers/frontend/spec-mobile-react-native.md +199 -0
  21. package/.claude/agents/cfn-dev-team/developers/graphql-specialist.md +615 -0
  22. package/.claude/agents/cfn-dev-team/developers/rust-developer.md +174 -0
  23. package/.claude/agents/cfn-dev-team/documentation/README-VALIDATION.md +243 -0
  24. package/.claude/agents/cfn-dev-team/documentation/agent-type-guidelines.md +465 -0
  25. package/.claude/agents/cfn-dev-team/documentation/api-docs.md +103 -0
  26. package/.claude/agents/cfn-dev-team/documentation/docs-api-openapi.md +98 -0
  27. package/.claude/agents/cfn-dev-team/documentation/pseudocode.md +159 -0
  28. package/.claude/agents/cfn-dev-team/documentation/specification.md +157 -0
  29. package/.claude/agents/cfn-dev-team/product-owners/accessibility-advocate-persona.md +109 -0
  30. package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/cto-agent.md +8 -6
  31. package/.claude/agents/cfn-dev-team/product-owners/power-user-persona.md +190 -0
  32. package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/product-owner.md +85 -59
  33. package/.claude/agents/cfn-dev-team/reviewers/quality/analyze-code-quality.md +141 -0
  34. package/.claude/agents/cfn-dev-team/reviewers/quality/code-analyzer.md +200 -0
  35. package/.claude/agents/cfn-dev-team/reviewers/quality/cyclomatic-complexity-reducer.md +321 -0
  36. package/.claude/agents/cfn-dev-team/reviewers/quality/perf-analyzer.md +238 -0
  37. package/.claude/agents/cfn-dev-team/reviewers/quality/performance-benchmarker.md +101 -0
  38. package/.claude/agents/cfn-dev-team/reviewers/quality/quality-metrics.md +375 -0
  39. package/.claude/agents/cfn-dev-team/reviewers/quality/security-specialist.md +193 -0
  40. package/.claude/agents/cfn-dev-team/reviewers/reviewer.md +39 -0
  41. package/.claude/agents/cfn-dev-team/testers/interaction-tester.md +31 -0
  42. package/.claude/agents/cfn-dev-team/testers/load-testing-specialist.md +469 -0
  43. package/.claude/agents/cfn-dev-team/testers/playwright-tester.md +24 -0
  44. package/.claude/agents/cfn-dev-team/testers/tester.md +20 -0
  45. package/.claude/agents/cfn-dev-team/utility/agent-builder.md +151 -0
  46. package/.claude/agents/cfn-dev-team/utility/analyst.md +178 -0
  47. package/.claude/agents/cfn-dev-team/utility/claude-code-expert.md +1043 -0
  48. package/.claude/agents/cfn-dev-team/utility/code-booster.md +139 -0
  49. package/.claude/agents/cfn-dev-team/utility/context-curator.md +99 -0
  50. package/.claude/agents/cfn-dev-team/{developers → utility}/researcher.md +6 -4
  51. package/.claude/commands/cfn/CFN_LOOP_FRONTEND.md +741 -0
  52. package/.claude/commands/cfn/CFN_LOOP_TASK_MODE.md +353 -0
  53. package/.claude/commands/cfn/cfn-loop-frontend.md +555 -0
  54. package/.claude/commands/cfn/cfn-loop.md +168 -7
  55. package/{CFN-CLAUDE.md → .claude/root-claude-distribute/CFN-CLAUDE.md} +23 -3
  56. package/.claude/skills/cfn-ace-system/SKILL.md +364 -0
  57. package/.claude/skills/cfn-ace-system/add-bullet.sh +145 -0
  58. package/.claude/skills/cfn-ace-system/analyze-anti-pattern-effectiveness.sh +56 -0
  59. package/.claude/skills/cfn-ace-system/classify-task.sh +18 -0
  60. package/.claude/skills/cfn-ace-system/export-ace-metrics.sh +48 -0
  61. package/.claude/skills/cfn-ace-system/extract-tags.sh +385 -0
  62. package/.claude/skills/cfn-ace-system/format-negative-context.sh +180 -0
  63. package/.claude/skills/cfn-ace-system/init-indexes.sql +160 -0
  64. package/.claude/skills/cfn-ace-system/invoke-context-curate.sh +192 -0
  65. package/.claude/skills/cfn-ace-system/invoke-context-inject.sh +361 -0
  66. package/.claude/skills/cfn-ace-system/invoke-context-query.sh +139 -0
  67. package/.claude/skills/cfn-ace-system/invoke-context-reflect.sh +343 -0
  68. package/.claude/skills/cfn-ace-system/invoke-context-stats.sh +227 -0
  69. package/.claude/skills/cfn-ace-system/log-merge.sh +67 -0
  70. package/.claude/skills/cfn-ace-system/monitor-injection-performance.sh +138 -0
  71. package/.claude/skills/cfn-ace-system/optimize-injection-pipeline.sh +169 -0
  72. package/.claude/skills/cfn-ace-system/query-anti-patterns.sh +276 -0
  73. package/.claude/skills/cfn-ace-system/query-contexts.sh +150 -0
  74. package/.claude/skills/cfn-ace-system/query-reflections.sh +35 -0
  75. package/.claude/skills/cfn-ace-system/schema/001-create-context-reflections.sql +237 -0
  76. package/.claude/skills/cfn-ace-system/schema/README.md +723 -0
  77. package/.claude/skills/cfn-ace-system/schema/SCHEMA_DESIGN_SUMMARY.md +564 -0
  78. package/.claude/skills/cfn-ace-system/schema/populate-test-data-simple.sh +62 -0
  79. package/.claude/skills/cfn-ace-system/schema/populate-test-data.sh +247 -0
  80. package/.claude/skills/cfn-ace-system/schema/run-migration.sh +231 -0
  81. package/.claude/skills/cfn-ace-system/schema/validate-schema.sql +280 -0
  82. package/.claude/skills/cfn-ace-system/score-relevance-adapter.sh +138 -0
  83. package/.claude/skills/cfn-ace-system/score-relevance.sh +253 -0
  84. package/.claude/skills/cfn-ace-system/sprint-7-lessons.json +46 -0
  85. package/.claude/skills/cfn-ace-system/store-reflection.sh +46 -0
  86. package/.claude/skills/cfn-ace-system/test-ace-skill.sh +312 -0
  87. package/.claude/skills/cfn-ace-system/track-ab-test.sh +42 -0
  88. package/.claude/skills/cfn-ace-system/update-reflection.sh +41 -0
  89. package/.claude/skills/cfn-agent-discovery/SKILL.md +40 -0
  90. package/.claude/skills/cfn-agent-discovery/agents-registry-clean.json +0 -0
  91. package/.claude/skills/cfn-agent-discovery/agents-registry-fixed.json +19 -0
  92. package/.claude/skills/cfn-agent-discovery/agents-registry.json +718 -0
  93. package/.claude/skills/cfn-agent-discovery/discover-agents.py +184 -0
  94. package/.claude/skills/cfn-agent-discovery/discover-agents.sh +87 -0
  95. package/.claude/skills/cfn-agent-discovery/invoke-registry.sh +11 -0
  96. package/.claude/skills/cfn-agent-discovery/temp_script.py +0 -0
  97. package/.claude/skills/cfn-agent-execution/execute-agent.sh +126 -0
  98. package/.claude/skills/cfn-agent-output-processing/SKILL.md +359 -0
  99. package/.claude/skills/cfn-agent-selector/SKILL.md +90 -0
  100. package/.claude/skills/cfn-agent-selector/select-agents.sh +112 -0
  101. package/.claude/skills/cfn-agent-spawning/SKILL.md +135 -0
  102. package/.claude/skills/cfn-agent-spawning/agent-selection-guide.md +814 -0
  103. package/.claude/skills/cfn-agent-spawning/check-dependencies.sh +30 -0
  104. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh +263 -0
  105. package/.claude/skills/cfn-agent-spawning/spawn-templates.sh +613 -0
  106. package/.claude/skills/cfn-analytics/description-refinement-guide.md +164 -0
  107. package/.claude/skills/cfn-analytics/log-skill-invocation.js +122 -0
  108. package/.claude/skills/cfn-analytics/run-production-criteria-tests.sh +126 -0
  109. package/.claude/skills/cfn-analytics/skill-analytics-dashboard.js +113 -0
  110. package/.claude/skills/cfn-analytics/skill-invocation-hook.sh +28 -0
  111. package/.claude/skills/cfn-analytics/skill-invocations.sql +58 -0
  112. package/.claude/skills/cfn-analytics/test-corpus.json +32 -0
  113. package/.claude/skills/cfn-analytics/test-data-generator.js +115 -0
  114. package/.claude/skills/cfn-analytics/test-manual-override-rate.js +285 -0
  115. package/.claude/skills/cfn-analytics/validate-skill-selection.js +188 -0
  116. package/.claude/skills/cfn-config-management/SKILL.md +34 -0
  117. package/.claude/skills/cfn-config-management/check-dependencies.sh +56 -0
  118. package/.claude/skills/cfn-config-management/config.json +32 -0
  119. package/.claude/skills/cfn-config-management/manage-config.sh +113 -0
  120. package/.claude/skills/cfn-event-bus/SKILL.md +412 -0
  121. package/.claude/skills/cfn-event-bus/config.json +111 -0
  122. package/.claude/skills/cfn-event-bus/eventbus-wrapper.cjs +69 -0
  123. package/.claude/skills/cfn-event-bus/invoke-event-publish.sh +147 -0
  124. package/.claude/skills/cfn-event-bus/invoke-event-subscribe.sh +171 -0
  125. package/.claude/skills/cfn-event-bus/invoke-lifecycle-track.sh +201 -0
  126. package/.claude/skills/cfn-event-bus/test-event-bus.sh +280 -0
  127. package/.claude/skills/cfn-fleet-manager/SKILL.md +412 -0
  128. package/.claude/skills/cfn-fleet-manager/config.json +60 -0
  129. package/.claude/skills/cfn-fleet-manager/invoke-fleet-allocate.sh +182 -0
  130. package/.claude/skills/cfn-fleet-manager/invoke-fleet-balance.sh +239 -0
  131. package/.claude/skills/cfn-fleet-manager/invoke-fleet-metrics.sh +193 -0
  132. package/.claude/skills/cfn-fleet-manager/invoke-fleet-register.sh +124 -0
  133. package/.claude/skills/cfn-fleet-manager/test-fleet-manager.sh +345 -0
  134. package/.claude/skills/cfn-hook-pipeline/SKILL.md +148 -0
  135. package/.claude/skills/cfn-hook-pipeline/auto-resolve.sh +66 -0
  136. package/.claude/skills/cfn-hook-pipeline/check-dependencies.sh +40 -0
  137. package/.claude/skills/cfn-hook-pipeline/feedback-resolver.sh +452 -0
  138. package/.claude/skills/cfn-hook-pipeline/post-edit-handler.sh +154 -0
  139. package/.claude/skills/cfn-hook-pipeline/security-scan.json +60 -0
  140. package/.claude/skills/cfn-hook-pipeline/security-scanner.sh +121 -0
  141. package/.claude/skills/cfn-hook-pipeline/test-root-warning-resolution.sh +148 -0
  142. package/.claude/skills/cfn-hybrid-routing/SKILL.md +46 -0
  143. package/.claude/skills/cfn-hybrid-routing/check-dependencies.sh +52 -0
  144. package/.claude/skills/cfn-hybrid-routing/config.json +26 -0
  145. package/.claude/skills/cfn-hybrid-routing/spawn-worker.sh +44 -0
  146. package/.claude/skills/cfn-loop-orchestration/SKILL.md +299 -0
  147. package/.claude/skills/cfn-loop-orchestration/helpers/auto-tune-timeouts.sh +228 -0
  148. package/.claude/skills/cfn-loop-orchestration/helpers/consensus.sh +84 -0
  149. package/.claude/skills/cfn-loop-orchestration/helpers/context-injection.sh +142 -0
  150. package/.claude/skills/cfn-loop-orchestration/helpers/context-lookup.sh +359 -0
  151. package/.claude/skills/cfn-loop-orchestration/helpers/deliverable-verifier.sh +71 -0
  152. package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +90 -0
  153. package/.claude/skills/cfn-loop-orchestration/helpers/iteration-manager.sh +87 -0
  154. package/.claude/skills/cfn-loop-orchestration/helpers/spawn-agents.sh +271 -0
  155. package/.claude/skills/cfn-loop-orchestration/helpers/timeout-calculator.sh +51 -0
  156. package/.claude/skills/cfn-loop-orchestration/inject-loop-context.sh +41 -0
  157. package/.claude/skills/cfn-loop-orchestration/monitor-execution.sh +156 -0
  158. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +884 -0
  159. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh.backup +840 -0
  160. package/.claude/skills/cfn-loop-orchestration/security_utils.sh +99 -0
  161. package/.claude/skills/cfn-loop-orchestration/test-cfn-orchestration.sh +281 -0
  162. package/.claude/skills/cfn-loop-orchestration/test-edge-cases.sh +188 -0
  163. package/.claude/skills/cfn-loop-validation/SKILL.md +353 -0
  164. package/.claude/skills/cfn-loop-validation/check-dependencies.sh +31 -0
  165. package/.claude/skills/cfn-loop-validation/config.json +161 -0
  166. package/.claude/skills/cfn-loop-validation/consensus-calculator.js +477 -0
  167. package/.claude/skills/cfn-loop-validation/evidence-chain.sql +163 -0
  168. package/.claude/skills/cfn-loop-validation/examples/README.md +453 -0
  169. package/.claude/skills/cfn-loop-validation/examples/coordinator-full-cfn-loop.sh +234 -0
  170. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop2-consensus.sh +132 -0
  171. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop3-gate.sh +115 -0
  172. package/.claude/skills/cfn-loop-validation/examples/coordinator-redis-integration.sh +186 -0
  173. package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -0
  174. package/.claude/skills/cfn-loop-validation/validate-iteration.sh +134 -0
  175. package/.claude/skills/cfn-process-lifecycle/SKILL.md +39 -0
  176. package/.claude/skills/cfn-process-lifecycle/check-dependencies.sh +58 -0
  177. package/.claude/skills/cfn-process-lifecycle/config.json +39 -0
  178. package/.claude/skills/cfn-process-lifecycle/process-manager.sh +144 -0
  179. package/.claude/skills/cfn-product-owner-decision/SKILL.md +332 -0
  180. package/.claude/skills/cfn-product-owner-decision/execute-decision.sh +176 -0
  181. package/.claude/skills/cfn-product-owner-decision/parse-decision.sh +66 -0
  182. package/.claude/skills/cfn-product-owner-decision/validate-deliverables.sh +82 -0
  183. package/.claude/skills/cfn-redis-coordination/AGENT_LOGGING.md +280 -0
  184. package/.claude/skills/cfn-redis-coordination/BZPOPMIN_FIX_SUMMARY.md +209 -0
  185. package/.claude/skills/cfn-redis-coordination/HEARTBEAT.md +57 -0
  186. package/.claude/skills/cfn-redis-coordination/HEARTBEAT_MONITORING.md +267 -0
  187. package/.claude/skills/cfn-redis-coordination/LOGGING.md +260 -0
  188. package/.claude/skills/cfn-redis-coordination/SECURITY_REVIEW.md +25 -0
  189. package/.claude/skills/cfn-redis-coordination/SHUTDOWN_HANDLING.md +164 -0
  190. package/.claude/skills/cfn-redis-coordination/SKILL.md +720 -0
  191. package/.claude/skills/cfn-redis-coordination/agent-log.sh +124 -0
  192. package/.claude/skills/cfn-redis-coordination/agent-recovery.sh +75 -0
  193. package/.claude/skills/cfn-redis-coordination/analyze-task-complexity.sh +277 -0
  194. package/.claude/skills/cfn-redis-coordination/cancel-swarm.sh +221 -0
  195. package/.claude/skills/cfn-redis-coordination/cfn-loop-exec.sh +468 -0
  196. package/.claude/skills/cfn-redis-coordination/cfn-loop-relaunch.sh +29 -0
  197. package/.claude/skills/cfn-redis-coordination/check-dependencies.sh +32 -0
  198. package/.claude/skills/cfn-redis-coordination/collect-confidence-scores.sh +179 -0
  199. package/.claude/skills/cfn-redis-coordination/collect-results.sh +75 -0
  200. package/.claude/skills/cfn-redis-coordination/complete-swarm.sh +75 -0
  201. package/.claude/skills/cfn-redis-coordination/config.json +61 -0
  202. package/.claude/skills/cfn-redis-coordination/data/cfn-loop.db +0 -0
  203. package/.claude/skills/cfn-redis-coordination/demos/phase4-wake-queue-test-report.md +82 -0
  204. package/.claude/skills/cfn-redis-coordination/demos/test-bzpopmin-fix.sh +274 -0
  205. package/.claude/skills/cfn-redis-coordination/demos/test-cancel-swarm.sh +276 -0
  206. package/.claude/skills/cfn-redis-coordination/demos/test-dlq.sh +129 -0
  207. package/.claude/skills/cfn-redis-coordination/demos/test-iteration-feedback.sh +320 -0
  208. package/.claude/skills/cfn-redis-coordination/demos/test-orchestrator.sh +249 -0
  209. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4-unix.sh +148 -0
  210. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4.sh +163 -0
  211. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake.sh +138 -0
  212. package/.claude/skills/cfn-redis-coordination/demos/test-quick-fix.sh +81 -0
  213. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-absolute.sh +45 -0
  214. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-fallback.sh +68 -0
  215. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-percentage.sh +56 -0
  216. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-with-retry.sh +81 -0
  217. package/.claude/skills/cfn-redis-coordination/demos/test-quorum.sh +57 -0
  218. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown-handling.sh +187 -0
  219. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown.sh +160 -0
  220. package/.claude/skills/cfn-redis-coordination/demos/test-utils-unix.sh +97 -0
  221. package/.claude/skills/cfn-redis-coordination/demos/test-utils.sh +97 -0
  222. package/.claude/skills/cfn-redis-coordination/demos/test-waiting-mode.sh +59 -0
  223. package/.claude/skills/cfn-redis-coordination/examples/README.md +73 -0
  224. package/.claude/skills/cfn-redis-coordination/examples/grafana-dashboard.json +352 -0
  225. package/.claude/skills/cfn-redis-coordination/examples/hierarchical-pattern.sh +127 -0
  226. package/.claude/skills/cfn-redis-coordination/examples/mesh-pattern.sh +171 -0
  227. package/.claude/skills/cfn-redis-coordination/examples/timeout-handling.sh +227 -0
  228. package/.claude/skills/cfn-redis-coordination/examples/waiting-mode-pattern.sh +239 -0
  229. package/.claude/skills/cfn-redis-coordination/execute-product-owner-decision.sh +258 -0
  230. package/.claude/skills/cfn-redis-coordination/get-agent-timeout.sh +177 -0
  231. package/.claude/skills/cfn-redis-coordination/heartbeat-functions.sh +137 -0
  232. package/.claude/skills/cfn-redis-coordination/heartbeat-protocol.md +106 -0
  233. package/.claude/skills/cfn-redis-coordination/heartbeat.sh +126 -0
  234. package/.claude/skills/cfn-redis-coordination/init-swarm.sh +148 -0
  235. package/.claude/skills/cfn-redis-coordination/invoke-redis-pattern.sh +220 -0
  236. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh +283 -0
  237. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh.backup-p7 +423 -0
  238. package/.claude/skills/cfn-redis-coordination/list-active-swarms.sh +147 -0
  239. package/.claude/skills/cfn-redis-coordination/log-event.sh +109 -0
  240. package/.claude/skills/cfn-redis-coordination/metrics-export.sh +674 -0
  241. package/.claude/skills/cfn-redis-coordination/metrics-schema.json +66 -0
  242. package/.claude/skills/cfn-redis-coordination/metrics-storage.md +31 -0
  243. package/.claude/skills/cfn-redis-coordination/monitor-cfn-violations.sh +391 -0
  244. package/.claude/skills/cfn-redis-coordination/monitor-heartbeats.sh +101 -0
  245. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop-v3.sh +141 -0
  246. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh +31 -0
  247. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup +38 -0
  248. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-1761167675 +1672 -0
  249. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-p5 +1604 -0
  250. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase1 +1550 -0
  251. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase2 +1621 -0
  252. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase3 +1621 -0
  253. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
  254. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.broken +1627 -0
  255. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.corrupted +80 -0
  256. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.deprecated +1864 -0
  257. package/.claude/skills/cfn-redis-coordination/priority-wake-mechanism.md +75 -0
  258. package/.claude/skills/cfn-redis-coordination/priority_wake.py +134 -0
  259. package/.claude/skills/cfn-redis-coordination/query-dlq.sh +162 -0
  260. package/.claude/skills/cfn-redis-coordination/query-logs.sh +103 -0
  261. package/.claude/skills/cfn-redis-coordination/redis-pattern.sh +619 -0
  262. package/.claude/skills/cfn-redis-coordination/retrieve-context.sh +58 -0
  263. package/.claude/skills/cfn-redis-coordination/select-specialist-agent.sh +371 -0
  264. package/.claude/skills/cfn-redis-coordination/semantic-match-tfidf.py +252 -0
  265. package/.claude/skills/cfn-redis-coordination/send-heartbeat.sh +165 -0
  266. package/.claude/skills/cfn-redis-coordination/signal.sh +38 -0
  267. package/.claude/skills/cfn-redis-coordination/store-context.sh +86 -0
  268. package/.claude/skills/cfn-redis-coordination/store-epic-context.sh +123 -0
  269. package/.claude/skills/cfn-redis-coordination/test-context-injection.sh +354 -0
  270. package/.claude/skills/cfn-redis-coordination/test-timeout-enforcement.sh +513 -0
  271. package/.claude/skills/cfn-redis-coordination/tests/convert-line-endings.sh +15 -0
  272. package/.claude/skills/cfn-redis-coordination/tests/dlq-functionality-test.sh +102 -0
  273. package/.claude/skills/cfn-redis-coordination/tests/edge-cases-test.sh +99 -0
  274. package/.claude/skills/cfn-redis-coordination/tests/integration-test.sh +170 -0
  275. package/.claude/skills/cfn-redis-coordination/tests/retry-mechanism-test.sh +82 -0
  276. package/.claude/skills/cfn-redis-coordination/tests/run-test-suite.sh +92 -0
  277. package/.claude/skills/cfn-redis-coordination/tests/run-tests.sh +4 -0
  278. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-monitoring.sh +418 -0
  279. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-simple.sh +124 -0
  280. package/.claude/skills/cfn-redis-coordination/tests/test-primitives.sh +166 -0
  281. package/.claude/skills/cfn-redis-coordination/tests/test-utils.sh +54 -0
  282. package/.claude/skills/cfn-redis-coordination/tests/test_coordination_primitives.sh.deprecated +20 -0
  283. package/.claude/skills/cfn-redis-coordination/tests/test_utils.sh +49 -0
  284. package/.claude/skills/cfn-redis-coordination/v2_modularization/core_orchestration.sh +76 -0
  285. package/.claude/skills/cfn-redis-coordination/validate-parameters.sh +492 -0
  286. package/.claude/skills/cfn-sqlite-memory/IMPLEMENTATION_REPORT.md +393 -0
  287. package/.claude/skills/cfn-sqlite-memory/QUICK_REFERENCE.md +204 -0
  288. package/.claude/skills/cfn-sqlite-memory/SKILL.md +415 -0
  289. package/.claude/skills/cfn-sqlite-memory/acl-queries.sql +452 -0
  290. package/.claude/skills/cfn-sqlite-memory/check-dependencies.sh +36 -0
  291. package/.claude/skills/cfn-sqlite-memory/config.json +45 -0
  292. package/.claude/skills/cfn-sqlite-memory/memory-cli.sh +88 -0
  293. package/.claude/skills/cfn-sqlite-memory/test-state-persistence.js +187 -0
  294. package/.claude/skills/cfn-sqlite-memory/ttl-cleanup.sh +274 -0
  295. package/.claude/skills/cfn-test-execution/SKILL.md +128 -0
  296. package/.claude/skills/cfn-test-execution/check-dependencies.sh +36 -0
  297. package/.claude/skills/cfn-test-execution/test-cache-reader.sh +134 -0
  298. package/.claude/skills/cfn-test-execution/test-concurrent-conflicts.sh +115 -0
  299. package/.claude/skills/cfn-test-execution/test-coordinator-pattern.sh +109 -0
  300. package/.claude/skills/cfn-transparency-middleware/Cargo.toml +18 -0
  301. package/.claude/skills/cfn-transparency-middleware/SECURITY.md +41 -0
  302. package/.claude/skills/cfn-transparency-middleware/SKILL.md +91 -0
  303. package/.claude/skills/cfn-transparency-middleware/TEST_RESULTS.md +174 -0
  304. package/.claude/skills/cfn-transparency-middleware/config.json +31 -0
  305. package/.claude/skills/cfn-transparency-middleware/examples/basic-usage.ts +39 -0
  306. package/.claude/skills/cfn-transparency-middleware/examples/batch-processing.ts +52 -0
  307. package/.claude/skills/cfn-transparency-middleware/examples/custom-filtering.ts +61 -0
  308. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-filter.sh +98 -0
  309. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-init.sh +224 -0
  310. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-level.sh +333 -0
  311. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-metrics.sh +345 -0
  312. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-observe.sh +140 -0
  313. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-stop.sh +235 -0
  314. package/.claude/skills/cfn-transparency-middleware/memory_query.rs +85 -0
  315. package/.claude/skills/cfn-transparency-middleware/memory_repository.rs +140 -0
  316. package/.claude/skills/cfn-transparency-middleware/memory_schema.rs +64 -0
  317. package/.claude/skills/cfn-transparency-middleware/middleware-config.sh +29 -0
  318. package/.claude/skills/cfn-transparency-middleware/performance-benchmark.sh +79 -0
  319. package/.claude/skills/cfn-transparency-middleware/test-e2e.sh +406 -0
  320. package/.claude/skills/cfn-transparency-middleware/test-integration.sh +162 -0
  321. package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh +368 -0
  322. package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh.unix +126 -0
  323. package/.claude/skills/cfn-transparency-middleware/tests/input-validation.sh +93 -0
  324. package/.claude/skills/cfn-transparency-middleware/wrap-agent.sh +132 -0
  325. package/.claude/skills/cfn-webapp-testing/SCREENSHOT_NAMING_CONVENTION.md +547 -0
  326. package/.claude/skills/cfn-webapp-testing/SKILL.md +877 -0
  327. package/.claude/skills/cfn-webapp-testing/capture-screenshot.sh +238 -0
  328. package/.claude/skills/cfn-webapp-testing/cfn-loop-integration.sh +265 -0
  329. package/.claude/skills/cfn-webapp-testing/compare-screenshots.sh +199 -0
  330. package/.claude/skills/cfn-webapp-testing/init-storage.sh +150 -0
  331. package/.claude/skills/cfn-webapp-testing/set-baseline.sh +196 -0
  332. package/.claude/skills/cfn-webapp-testing/test-webapp-testing.sh +233 -0
  333. package/README.md +51 -2
  334. package/dist/ace/ace-reflector.js +109 -10
  335. package/dist/ace/ace-reflector.js.map +1 -1
  336. package/dist/agents/agent-loader.js +165 -146
  337. package/dist/agents/agent-loader.js.map +1 -1
  338. package/dist/cli/agent-executor.js +1 -1
  339. package/dist/cli/agent-executor.js.map +1 -1
  340. package/dist/cli/config-manager.js +109 -91
  341. package/dist/cli/config-manager.js.map +1 -1
  342. package/package.json +43 -7
  343. package/readme/README.md +15 -4
  344. package/scripts/init-project.js +84 -29
  345. package/scripts/run-marketing-tests.sh +43 -0
  346. package/scripts/update_paths.sh +47 -0
  347. package/tools/install-lizard.sh +37 -0
  348. package/tools/simple-complexity.sh +44 -0
  349. package/.claude/agents/cfn-dev-team/developers/coder.md +0 -270
  350. package/.claude/agents/cfn-dev-team/developers/state-architect.md +0 -127
  351. package/.claude/agents/cfn-dev-team/reviewers/code-quality-validator.md +0 -128
  352. /package/.claude/agents/cfn-dev-team/developers/{ui-designer.md → frontend/ui-designer.md} +0 -0
  353. /package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/product-owner-agent.md +0 -0
@@ -0,0 +1,368 @@
1
+ #!/bin/bash
2
+
3
+ # Transparency Middleware Test Suite
4
+ # Version: 1.0.0
5
+ # Sprint: 1.2 Middleware Skills Wrapper
6
+
7
+ set -euo pipefail
8
+
9
+ # Import testing utilities
10
+ source .claude/skills/cfn-common/test-utils.sh
11
+ source .claude/skills/cfn-transparency-middleware/middleware-config.sh
12
+
13
+ # Logging configuration
14
+ LOG_FILE="/tmp/transparency-middleware-tests.log"
15
+ touch "$LOG_FILE"
16
+
17
+ # Redis connection parameters
18
+ REDIS_HOST="${REDIS_HOST:-localhost}"
19
+ REDIS_PORT="${REDIS_PORT:-6379}"
20
+
21
+ # Test suite global variables
22
+ TEST_TASK_ID="transparency-test-$(date +%s)"
23
+ TOTAL_TESTS=10
24
+ PASSED_TESTS=0
25
+
26
+ # Utility Functions
27
+ log_test_start() {
28
+ echo "[TEST] Starting: $1" | tee -a "$LOG_FILE"
29
+ }
30
+
31
+ log_test_result() {
32
+ local status="$1"
33
+ local message="$2"
34
+ if [ "$status" -eq 0 ]; then
35
+ echo "[PASS] $message" | tee -a "$LOG_FILE"
36
+ ((PASSED_TESTS++))
37
+ else
38
+ echo "[FAIL] $message" | tee -a "$LOG_FILE"
39
+ fi
40
+ }
41
+
42
+ # Test 1: Initialization
43
+ test_initialization() {
44
+ log_test_start "Initialization Tests"
45
+ local test_result=0
46
+
47
+ # Test minimal transparency level
48
+ ./invoke-transparency-middleware.sh init \
49
+ --task-id "$TEST_TASK_ID" \
50
+ --level minimal || test_result=1
51
+
52
+ # Verify configuration
53
+ local config=$(redis-cli hget "transparency:${TEST_TASK_ID}" config)
54
+ [[ "$config" =~ "level:minimal" ]] || test_result=1
55
+
56
+ # Test Redis connection
57
+ redis-cli ping || test_result=1
58
+
59
+ log_test_result "$test_result" "Initialization Test"
60
+ return "$test_result"
61
+ }
62
+
63
+ # Test 2: Message Observation
64
+ test_message_observation() {
65
+ log_test_start "Message Observation"
66
+ local test_result=0
67
+
68
+ # Simulate message generation
69
+ ./invoke-transparency-middleware.sh subscribe \
70
+ --task-id "$TEST_TASK_ID" \
71
+ --channel "test-channel" || test_result=1
72
+
73
+ # Publish test message
74
+ redis-cli publish "test-channel" "Test observation message" || test_result=1
75
+
76
+ # Check message reception
77
+ local message=$(redis-cli blpop "transparency:${TEST_TASK_ID}:messages" 5)
78
+ [[ -n "$message" ]] || test_result=1
79
+
80
+ log_test_result "$test_result" "Message Observation Test"
81
+ return "$test_result"
82
+ }
83
+
84
+ # Test 3: Transparency Level Changes
85
+ test_transparency_levels() {
86
+ log_test_start "Transparency Level Changes"
87
+ local test_result=0
88
+
89
+ # Test level progression
90
+ local levels=("minimal" "detailed" "verbose" "debug")
91
+ for level in "${levels[@]}"; do
92
+ ./invoke-transparency-middleware.sh set-level \
93
+ --task-id "$TEST_TASK_ID" \
94
+ --level "$level" || test_result=1
95
+ done
96
+
97
+ log_test_result "$test_result" "Transparency Level Changes Test"
98
+ return "$test_result"
99
+ }
100
+
101
+ # Test 4: Filter Management
102
+ test_filter_management() {
103
+ log_test_start "Filter Management"
104
+ local test_result=0
105
+
106
+ # Initialize
107
+ ./invoke-transparency-middleware.sh init \
108
+ --task-id "$TEST_TASK_ID" \
109
+ --level detailed || test_result=1
110
+
111
+ # Add include filter
112
+ ./invoke-transparency-middleware.sh add-filter \
113
+ --task-id "$TEST_TASK_ID" \
114
+ --name "Error Filter" \
115
+ --type include \
116
+ --pattern "error|critical" || test_result=1
117
+
118
+ # List filters
119
+ local filters=$(./invoke-transparency-middleware.sh list-filters \
120
+ --task-id "$TEST_TASK_ID")
121
+ [[ "$filters" =~ "Error Filter" ]] || test_result=1
122
+
123
+ # Test filter pattern
124
+ local match=$(./invoke-transparency-middleware.sh test-filter \
125
+ --task-id "$TEST_TASK_ID" \
126
+ --name "Error Filter" \
127
+ --message "critical system error")
128
+ [[ "$match" == "true" ]] || test_result=1
129
+
130
+ # Remove filter
131
+ ./invoke-transparency-middleware.sh remove-filter \
132
+ --task-id "$TEST_TASK_ID" \
133
+ --name "Error Filter" || test_result=1
134
+
135
+ log_test_result "$test_result" "Filter Management Test"
136
+ return "$test_result"
137
+ }
138
+
139
+ # Test 5: Performance Metrics
140
+ test_performance_metrics() {
141
+ log_test_start "Performance Metrics"
142
+ local test_result=0
143
+
144
+ # Initialize with verbose level
145
+ ./invoke-transparency-middleware.sh init \
146
+ --task-id "$TEST_TASK_ID" \
147
+ --level verbose || test_result=1
148
+
149
+ # Query metrics
150
+ local metrics=$(./invoke-transparency-middleware.sh get-metrics \
151
+ --task-id "$TEST_TASK_ID")
152
+
153
+ # Verify metric fields
154
+ [[ "$metrics" =~ "messages_generated" ]] || test_result=1
155
+ [[ "$metrics" =~ "messages_filtered" ]] || test_result=1
156
+ [[ "$metrics" =~ "overhead_percentage" ]] || test_result=1
157
+ [[ "$metrics" =~ "queue_size" ]] || test_result=1
158
+
159
+ # Verify overhead is reasonable (less than 10%)
160
+ local overhead=$(echo "$metrics" | grep -o "overhead_percentage:[0-9.]*" | cut -d: -f2)
161
+ (( $(echo "$overhead < 10" | bc -l) )) || test_result=1
162
+
163
+ log_test_result "$test_result" "Performance Metrics Test"
164
+ return "$test_result"
165
+ }
166
+
167
+ # Test 6: Redis Integration
168
+ test_redis_integration() {
169
+ log_test_start "Redis Integration"
170
+ local test_result=0
171
+
172
+ # Initialize
173
+ ./invoke-transparency-middleware.sh init \
174
+ --task-id "$TEST_TASK_ID" \
175
+ --level detailed || test_result=1
176
+
177
+ # Verify Redis keys created
178
+ local config_keys=$(redis-cli keys "transparency:config:*$TEST_TASK_ID*")
179
+ local state_keys=$(redis-cli keys "transparency:state:*$TEST_TASK_ID*")
180
+
181
+ [[ -n "$config_keys" ]] || test_result=1
182
+ [[ -n "$state_keys" ]] || test_result=1
183
+
184
+ # Publish test message
185
+ redis-cli publish "transparency:messages:$TEST_TASK_ID" \
186
+ '{"type":"test","message":"Redis integration test"}' || test_result=1
187
+
188
+ # Observe message (with timeout)
189
+ local message=$(timeout 5s ./invoke-transparency-middleware.sh observe \
190
+ --task-id "$TEST_TASK_ID" \
191
+ --timeout 3)
192
+ [[ -n "$message" ]] || test_result=1
193
+
194
+ # Cleanup
195
+ ./invoke-transparency-middleware.sh stop \
196
+ --task-id "$TEST_TASK_ID" || test_result=1
197
+
198
+ log_test_result "$test_result" "Redis Integration Test"
199
+ return "$test_result"
200
+ }
201
+
202
+ # Test 7: Multi-Agent Scenarios
203
+ test_multi_agent() {
204
+ log_test_start "Multi-Agent Scenarios"
205
+ local test_result=0
206
+
207
+ # Initialize with different agent configs
208
+ ./invoke-transparency-middleware.sh init \
209
+ --task-id "${TEST_TASK_ID}-agent1" \
210
+ --agent-id "agent-1" \
211
+ --level detailed || test_result=1
212
+
213
+ ./invoke-transparency-middleware.sh init \
214
+ --task-id "${TEST_TASK_ID}-agent2" \
215
+ --agent-id "agent-2" \
216
+ --level verbose || test_result=1
217
+
218
+ # Verify different levels per agent
219
+ local agent1_level=$(./invoke-transparency-middleware.sh get-level \
220
+ --agent-id "agent-1")
221
+ local agent2_level=$(./invoke-transparency-middleware.sh get-level \
222
+ --agent-id "agent-2")
223
+
224
+ [[ "$agent1_level" == "detailed" ]] || test_result=1
225
+ [[ "$agent2_level" == "verbose" ]] || test_result=1
226
+
227
+ # Cleanup
228
+ ./invoke-transparency-middleware.sh stop \
229
+ --agent-id "agent-1" || test_result=1
230
+ ./invoke-transparency-middleware.sh stop \
231
+ --agent-id "agent-2" || test_result=1
232
+
233
+ log_test_result "$test_result" "Multi-Agent Scenarios Test"
234
+ return "$test_result"
235
+ }
236
+
237
+ # Test 8: Performance Overhead
238
+ test_performance_overhead() {
239
+ log_test_start "Performance Overhead"
240
+ local test_result=0
241
+
242
+ # Test each transparency level
243
+ local levels=("minimal" "detailed" "verbose" "debug")
244
+ local max_overheads=(1.0 3.0 5.0 10.0)
245
+
246
+ for i in "${!levels[@]}"; do
247
+ local level="${levels[i]}"
248
+ local max_overhead="${max_overheads[i]}"
249
+
250
+ ./invoke-transparency-middleware.sh init \
251
+ --task-id "${TEST_TASK_ID}-${level}" \
252
+ --level "$level" || test_result=1
253
+
254
+ local metrics=$(./invoke-transparency-middleware.sh get-metrics \
255
+ --task-id "${TEST_TASK_ID}-${level}")
256
+
257
+ local overhead=$(echo "$metrics" | grep -o "overhead_percentage:[0-9.]*" | cut -d: -f2)
258
+ (( $(echo "$overhead <= $max_overhead" | bc -l) )) || {
259
+ echo "❌ Level $level overhead $overhead% exceeds $max_overhead%"
260
+ test_result=1
261
+ }
262
+
263
+ ./invoke-transparency-middleware.sh stop \
264
+ --task-id "${TEST_TASK_ID}-${level}" || test_result=1
265
+ done
266
+
267
+ log_test_result "$test_result" "Performance Overhead Test"
268
+ return "$test_result"
269
+ }
270
+
271
+ # Test 9: Error Handling
272
+ test_error_handling() {
273
+ log_test_start "Error Handling"
274
+ local test_result=0
275
+
276
+ # Test invalid transparency level
277
+ ! ./invoke-transparency-middleware.sh init \
278
+ --task-id "$TEST_TASK_ID" \
279
+ --level invalid 2>/dev/null || test_result=1
280
+
281
+ # Test invalid task-id
282
+ ! ./invoke-transparency-middleware.sh observe \
283
+ --task-id "" 2>/dev/null || test_result=1
284
+
285
+ # Test missing required parameters
286
+ ! ./invoke-transparency-middleware.sh add-filter \
287
+ --task-id "$TEST_TASK_ID" 2>/dev/null || test_result=1
288
+
289
+ # Test invalid filter pattern
290
+ ! ./invoke-transparency-middleware.sh add-filter \
291
+ --task-id "$TEST_TASK_ID" \
292
+ --name "test" \
293
+ --pattern "" 2>/dev/null || test_result=1
294
+
295
+ # Test observe on non-existent task
296
+ ! ./invoke-transparency-middleware.sh observe \
297
+ --task-id "nonexistent-task-12345" 2>/dev/null || test_result=1
298
+
299
+ log_test_result "$test_result" "Error Handling Test"
300
+ return "$test_result"
301
+ }
302
+
303
+ # Test 10: Graceful Shutdown
304
+ test_graceful_shutdown() {
305
+ log_test_start "Graceful Shutdown"
306
+ local test_result=0
307
+
308
+ # Initialize
309
+ ./invoke-transparency-middleware.sh init \
310
+ --task-id "$TEST_TASK_ID" \
311
+ --level detailed || test_result=1
312
+
313
+ # Add some data
314
+ ./invoke-transparency-middleware.sh add-filter \
315
+ --task-id "$TEST_TASK_ID" \
316
+ --name "Test Filter" \
317
+ --pattern "test" || test_result=1
318
+
319
+ # Shutdown with flush
320
+ ./invoke-transparency-middleware.sh stop \
321
+ --task-id "$TEST_TASK_ID" \
322
+ --flush || test_result=1
323
+
324
+ # Verify Redis keys cleaned up
325
+ local keys=$(redis-cli keys "transparency:*$TEST_TASK_ID*")
326
+ [[ -z "$keys" ]] || test_result=1
327
+
328
+ # Test shutdown without flush
329
+ ./invoke-transparency-middleware.sh init \
330
+ --task-id "${TEST_TASK_ID}-noflush" \
331
+ --level minimal || test_result=1
332
+
333
+ ./invoke-transparency-middleware.sh stop \
334
+ --task-id "${TEST_TASK_ID}-noflush" || test_result=1
335
+
336
+ log_test_result "$test_result" "Graceful Shutdown Test"
337
+ return "$test_result"
338
+ }
339
+
340
+ # Main Test Execution
341
+ main() {
342
+ echo "Starting Transparency Middleware Test Suite" | tee -a "$LOG_FILE"
343
+
344
+ test_initialization
345
+ test_message_observation
346
+ test_transparency_levels
347
+ test_filter_management
348
+ test_performance_metrics
349
+ test_redis_integration
350
+ test_multi_agent
351
+ test_performance_overhead
352
+ test_error_handling
353
+ test_graceful_shutdown
354
+
355
+ # Final Report
356
+ echo "Test Results: $PASSED_TESTS/$TOTAL_TESTS passed" | tee -a "$LOG_FILE"
357
+
358
+ if [ "$PASSED_TESTS" -eq "$TOTAL_TESTS" ]; then
359
+ redis-cli publish "swarm:sprint-1.2:devops" "test_suite_passed:1.0"
360
+ exit 0
361
+ else
362
+ redis-cli publish "swarm:sprint-1.2:devops" "test_suite_failed:0.0"
363
+ exit 1
364
+ fi
365
+ }
366
+
367
+ # Execute main function
368
+ main
@@ -0,0 +1,126 @@
1
+ #!/bin/bash
2
+
3
+ # Transparency Middleware Test Suite
4
+ # Version: 1.0.0
5
+ # Sprint: 1.2 Middleware Skills Wrapper
6
+
7
+ set -euo pipefail
8
+
9
+ # Import testing utilities
10
+ source .claude/skills/common/test-utils.sh
11
+ source .claude/skills/transparency-middleware/middleware-config.sh
12
+
13
+ # Logging configuration
14
+ LOG_FILE="/tmp/transparency-middleware-tests.log"
15
+ touch "$LOG_FILE"
16
+
17
+ # Redis connection parameters
18
+ REDIS_HOST="${REDIS_HOST:-localhost}"
19
+ REDIS_PORT="${REDIS_PORT:-6379}"
20
+
21
+ # Test suite global variables
22
+ TEST_TASK_ID="transparency-test-$(date +%s)"
23
+ TOTAL_TESTS=10
24
+ PASSED_TESTS=0
25
+
26
+ # Utility Functions
27
+ log_test_start() {
28
+ echo "[TEST] Starting: $1" | tee -a "$LOG_FILE"
29
+ }
30
+
31
+ log_test_result() {
32
+ local status="$1"
33
+ local message="$2"
34
+ if [ "$status" -eq 0 ]; then
35
+ echo "[PASS] $message" | tee -a "$LOG_FILE"
36
+ ((PASSED_TESTS++))
37
+ else
38
+ echo "[FAIL] $message" | tee -a "$LOG_FILE"
39
+ fi
40
+ }
41
+
42
+ # Test 1: Initialization
43
+ test_initialization() {
44
+ log_test_start "Initialization Tests"
45
+ local test_result=0
46
+
47
+ # Test minimal transparency level
48
+ ./invoke-transparency-middleware.sh init \
49
+ --task-id "$TEST_TASK_ID" \
50
+ --level minimal || test_result=1
51
+
52
+ # Verify configuration
53
+ local config=$(redis-cli hget "transparency:${TEST_TASK_ID}" config)
54
+ [[ "$config" =~ "level:minimal" ]] || test_result=1
55
+
56
+ # Test Redis connection
57
+ redis-cli ping || test_result=1
58
+
59
+ log_test_result "$test_result" "Initialization Test"
60
+ return "$test_result"
61
+ }
62
+
63
+ # Test 2: Message Observation
64
+ test_message_observation() {
65
+ log_test_start "Message Observation"
66
+ local test_result=0
67
+
68
+ # Simulate message generation
69
+ ./invoke-transparency-middleware.sh subscribe \
70
+ --task-id "$TEST_TASK_ID" \
71
+ --channel "test-channel" || test_result=1
72
+
73
+ # Publish test message
74
+ redis-cli publish "test-channel" "Test observation message" || test_result=1
75
+
76
+ # Check message reception
77
+ local message=$(redis-cli blpop "transparency:${TEST_TASK_ID}:messages" 5)
78
+ [[ -n "$message" ]] || test_result=1
79
+
80
+ log_test_result "$test_result" "Message Observation Test"
81
+ return "$test_result"
82
+ }
83
+
84
+ # Test 3: Transparency Level Changes
85
+ test_transparency_levels() {
86
+ log_test_start "Transparency Level Changes"
87
+ local test_result=0
88
+
89
+ # Test level progression
90
+ local levels=("minimal" "detailed" "verbose" "debug")
91
+ for level in "${levels[@]}"; do
92
+ ./invoke-transparency-middleware.sh set-level \
93
+ --task-id "$TEST_TASK_ID" \
94
+ --level "$level" || test_result=1
95
+ done
96
+
97
+ log_test_result "$test_result" "Transparency Level Changes Test"
98
+ return "$test_result"
99
+ }
100
+
101
+ # Test 4-10: Additional tests would be implemented similarly
102
+ # ... (other test functions)
103
+
104
+ # Main Test Execution
105
+ main() {
106
+ echo "Starting Transparency Middleware Test Suite" | tee -a "$LOG_FILE"
107
+
108
+ test_initialization
109
+ test_message_observation
110
+ test_transparency_levels
111
+ # Call other test functions...
112
+
113
+ # Final Report
114
+ echo "Test Results: $PASSED_TESTS/$TOTAL_TESTS passed" | tee -a "$LOG_FILE"
115
+
116
+ if [ "$PASSED_TESTS" -eq "$TOTAL_TESTS" ]; then
117
+ redis-cli publish "swarm:sprint-1.2:devops" "test_suite_passed:1.0"
118
+ exit 0
119
+ else
120
+ redis-cli publish "swarm:sprint-1.2:devops" "test_suite_failed:0.0"
121
+ exit 1
122
+ fi
123
+ }
124
+
125
+ # Execute main function
126
+ main
@@ -0,0 +1,93 @@
1
+ #!/usr/bin/env bash
2
+ # Input Validation and Security Test Suite
3
+ # Validates input handling and prevents potential injection scenarios
4
+
5
+ set -euo pipefail
6
+
7
+ # Source the main script to access validation functions
8
+ source "$(dirname "$0")/.claude/skills/cfn-cfn-test-integration.sh"
9
+
10
+ # Test Cases for validate_input function
11
+ test_input_validation() {
12
+ local test_cases=(
13
+ "valid_task_id:integration-test-task:task_id:pass"
14
+ "valid_agent_id:test-agent-1:agent_id:pass"
15
+ "invalid_task_id_with_space:test task:task_id:fail"
16
+ "invalid_task_id_with_special_chars:test@task:task_id:fail"
17
+ "invalid_agent_id_with_special_chars:test!agent:agent_id:fail"
18
+ )
19
+
20
+ for test_case in "${test_cases[@]}"; do
21
+ local name=$(echo "$test_case" | cut -d: -f1)
22
+ local input=$(echo "$test_case" | cut -d: -f2)
23
+ local input_type=$(echo "$test_case" | cut -d: -f3)
24
+ local expected=$(echo "$test_case" | cut -d: -f4)
25
+
26
+ echo "Running test case: $name"
27
+
28
+ if [[ "$expected" == "pass" ]]; then
29
+ validate_input "$input" "$input_type"
30
+ echo "✅ PASS: $name - Successfully validated"
31
+ else
32
+ set +e
33
+ validate_input "$input" "$input_type" 2>/dev/null
34
+ local exit_code=$?
35
+ set -e
36
+
37
+ if [ "$exit_code" -ne 0 ]; then
38
+ echo "✅ PASS: $name - Correctly rejected invalid input"
39
+ else
40
+ echo "❌ FAIL: $name - Failed to reject invalid input"
41
+ exit 1
42
+ fi
43
+ fi
44
+ done
45
+ }
46
+
47
+ # Test SQLite Query Safety
48
+ test_sqlite_query_safety() {
49
+ local db_file=$(mktemp)
50
+ local bad_input="'; DROP TABLE agent_memory; --"
51
+
52
+ # Setup test database
53
+ sqlite3 "$db_file" <<EOF
54
+ CREATE TABLE agent_memory (
55
+ task_id TEXT,
56
+ event_data TEXT
57
+ );
58
+ INSERT INTO agent_memory VALUES ('test-task', 'sample data');
59
+ EOF
60
+
61
+ # Attempt query with malicious input
62
+ set +e
63
+ local query_result=$(sqlite3 "$db_file" \
64
+ "SELECT COUNT(*) FROM agent_memory WHERE task_id = '$bad_input';" 2>/dev/null)
65
+ local exit_code=$?
66
+ set -e
67
+
68
+ # Verify query did not modify the database
69
+ local row_count=$(sqlite3 "$db_file" "SELECT COUNT(*) FROM agent_memory;")
70
+
71
+ if [ "$row_count" -eq 1 ] && [ "$exit_code" -eq 0 ]; then
72
+ echo "✅ PASS: SQLite query safety - Malicious input contained"
73
+ else
74
+ echo "❌ FAIL: SQLite query safety - Potential vulnerability"
75
+ exit 1
76
+ fi
77
+
78
+ # Cleanup
79
+ rm -f "$db_file"
80
+ }
81
+
82
+ # Main test runner
83
+ main() {
84
+ echo "=== Input Validation Security Tests ==="
85
+
86
+ test_input_validation
87
+ test_sqlite_query_safety
88
+
89
+ echo "=== All Security Tests Passed ==="
90
+ }
91
+
92
+ # Run tests
93
+ main