claude-flow-novice 2.14.2 → 2.14.4

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 (161) hide show
  1. package/.claude/commands/CFN_LOOP_TASK_MODE.md +4 -47
  2. package/.claude/skills/cfn-redis-coordination/demos/test-cancel-swarm.sh +0 -276
  3. package/claude-assets/commands/CFN_LOOP_TASK_MODE.md +4 -47
  4. package/claude-assets/skills/cfn-redis-coordination/demos/test-cancel-swarm.sh +0 -276
  5. package/dist/cli/agent-prompt-builder.js +25 -0
  6. package/dist/cli/agent-prompt-builder.js.map +1 -1
  7. package/dist/cli/config-manager.js +91 -109
  8. package/package.json +1 -1
  9. package/scripts/init-project.js +1 -1
  10. package/.claude/skills/cfn-redis-coordination/HEARTBEAT.md +0 -57
  11. package/.claude/skills/cfn-redis-coordination/HEARTBEAT_MONITORING.md +0 -267
  12. package/.claude/skills/cfn-redis-coordination/LOGGING.md +0 -260
  13. package/.claude/skills/cfn-redis-coordination/README.md +0 -65
  14. package/.claude/skills/cfn-redis-coordination/SECURITY_REVIEW.md +0 -25
  15. package/.claude/skills/cfn-redis-coordination/SHUTDOWN_HANDLING.md +0 -164
  16. package/.claude/skills/cfn-redis-coordination/SKILL.md +0 -720
  17. package/.claude/skills/cfn-redis-coordination/demos/test-dlq.sh +0 -129
  18. package/.claude/skills/cfn-redis-coordination/demos/test-iteration-feedback.sh +0 -320
  19. package/.claude/skills/cfn-redis-coordination/demos/test-orchestrator.sh +0 -249
  20. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4-unix.sh +0 -148
  21. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4.sh +0 -163
  22. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake.sh +0 -138
  23. package/.claude/skills/cfn-redis-coordination/demos/test-quick-fix.sh +0 -81
  24. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-absolute.sh +0 -45
  25. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-fallback.sh +0 -68
  26. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-percentage.sh +0 -56
  27. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-with-retry.sh +0 -81
  28. package/.claude/skills/cfn-redis-coordination/demos/test-quorum.sh +0 -57
  29. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown-handling.sh +0 -187
  30. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown.sh +0 -160
  31. package/.claude/skills/cfn-redis-coordination/demos/test-utils-unix.sh +0 -97
  32. package/.claude/skills/cfn-redis-coordination/demos/test-utils.sh +0 -97
  33. package/.claude/skills/cfn-redis-coordination/demos/test-waiting-mode.sh +0 -59
  34. package/.claude/skills/cfn-redis-coordination/examples/README.md +0 -73
  35. package/.claude/skills/cfn-redis-coordination/examples/grafana-dashboard.json +0 -352
  36. package/.claude/skills/cfn-redis-coordination/examples/hierarchical-pattern.sh +0 -127
  37. package/.claude/skills/cfn-redis-coordination/examples/mesh-pattern.sh +0 -171
  38. package/.claude/skills/cfn-redis-coordination/examples/timeout-handling.sh +0 -227
  39. package/.claude/skills/cfn-redis-coordination/examples/waiting-mode-pattern.sh +0 -239
  40. package/.claude/skills/cfn-redis-coordination/execute-product-owner-decision.sh +0 -258
  41. package/.claude/skills/cfn-redis-coordination/get-agent-timeout.sh +0 -177
  42. package/.claude/skills/cfn-redis-coordination/heartbeat-functions.sh +0 -137
  43. package/.claude/skills/cfn-redis-coordination/heartbeat-protocol.md +0 -106
  44. package/.claude/skills/cfn-redis-coordination/heartbeat.sh +0 -126
  45. package/.claude/skills/cfn-redis-coordination/init-swarm.sh +0 -148
  46. package/.claude/skills/cfn-redis-coordination/invoke-redis-pattern.sh +0 -220
  47. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh +0 -283
  48. package/.claude/skills/cfn-redis-coordination/list-active-swarms.sh +0 -147
  49. package/.claude/skills/cfn-redis-coordination/log-event.sh +0 -109
  50. package/.claude/skills/cfn-redis-coordination/metrics-export.sh +0 -674
  51. package/.claude/skills/cfn-redis-coordination/metrics-schema.json +0 -66
  52. package/.claude/skills/cfn-redis-coordination/metrics-storage.md +0 -31
  53. package/.claude/skills/cfn-redis-coordination/monitor-cfn-violations.sh +0 -391
  54. package/.claude/skills/cfn-redis-coordination/monitor-heartbeats.sh +0 -101
  55. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop-v3.sh +0 -141
  56. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh +0 -31
  57. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
  58. package/.claude/skills/cfn-redis-coordination/priority-wake-mechanism.md +0 -75
  59. package/.claude/skills/cfn-redis-coordination/priority_wake.py +0 -134
  60. package/.claude/skills/cfn-redis-coordination/query-dlq.sh +0 -162
  61. package/.claude/skills/cfn-redis-coordination/query-logs.sh +0 -103
  62. package/.claude/skills/cfn-redis-coordination/redis-pattern.sh +0 -619
  63. package/.claude/skills/cfn-redis-coordination/retrieve-context.sh +0 -58
  64. package/.claude/skills/cfn-redis-coordination/select-specialist-agent.sh +0 -371
  65. package/.claude/skills/cfn-redis-coordination/semantic-match-tfidf.py +0 -252
  66. package/.claude/skills/cfn-redis-coordination/send-heartbeat.sh +0 -165
  67. package/.claude/skills/cfn-redis-coordination/signal.sh +0 -38
  68. package/.claude/skills/cfn-redis-coordination/store-context.sh +0 -86
  69. package/.claude/skills/cfn-redis-coordination/store-epic-context.sh +0 -123
  70. package/.claude/skills/cfn-redis-coordination/test-context-injection.sh +0 -354
  71. package/.claude/skills/cfn-redis-coordination/test-timeout-enforcement.sh +0 -513
  72. package/.claude/skills/cfn-redis-coordination/tests/convert-line-endings.sh +0 -15
  73. package/.claude/skills/cfn-redis-coordination/tests/dlq-functionality-test.sh +0 -102
  74. package/.claude/skills/cfn-redis-coordination/tests/edge-cases-test.sh +0 -99
  75. package/.claude/skills/cfn-redis-coordination/tests/integration-test.sh +0 -170
  76. package/.claude/skills/cfn-redis-coordination/tests/retry-mechanism-test.sh +0 -82
  77. package/.claude/skills/cfn-redis-coordination/tests/run-test-suite.sh +0 -92
  78. package/.claude/skills/cfn-redis-coordination/tests/run-tests.sh +0 -4
  79. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-monitoring.sh +0 -418
  80. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-simple.sh +0 -124
  81. package/.claude/skills/cfn-redis-coordination/tests/test-primitives.sh +0 -166
  82. package/.claude/skills/cfn-redis-coordination/tests/test-utils.sh +0 -54
  83. package/.claude/skills/cfn-redis-coordination/tests/test_utils.sh +0 -49
  84. package/.claude/skills/cfn-redis-coordination/v2_modularization/core_orchestration.sh +0 -76
  85. package/.claude/skills/cfn-redis-coordination/validate-parameters.sh +0 -492
  86. package/claude-assets/skills/cfn-redis-coordination/HEARTBEAT.md +0 -57
  87. package/claude-assets/skills/cfn-redis-coordination/HEARTBEAT_MONITORING.md +0 -267
  88. package/claude-assets/skills/cfn-redis-coordination/LOGGING.md +0 -260
  89. package/claude-assets/skills/cfn-redis-coordination/README.md +0 -65
  90. package/claude-assets/skills/cfn-redis-coordination/SECURITY_REVIEW.md +0 -25
  91. package/claude-assets/skills/cfn-redis-coordination/SHUTDOWN_HANDLING.md +0 -164
  92. package/claude-assets/skills/cfn-redis-coordination/SKILL.md +0 -720
  93. package/claude-assets/skills/cfn-redis-coordination/demos/test-dlq.sh +0 -129
  94. package/claude-assets/skills/cfn-redis-coordination/demos/test-iteration-feedback.sh +0 -320
  95. package/claude-assets/skills/cfn-redis-coordination/demos/test-orchestrator.sh +0 -249
  96. package/claude-assets/skills/cfn-redis-coordination/demos/test-priority-wake-phase4-unix.sh +0 -148
  97. package/claude-assets/skills/cfn-redis-coordination/demos/test-priority-wake-phase4.sh +0 -163
  98. package/claude-assets/skills/cfn-redis-coordination/demos/test-priority-wake.sh +0 -138
  99. package/claude-assets/skills/cfn-redis-coordination/demos/test-quick-fix.sh +0 -81
  100. package/claude-assets/skills/cfn-redis-coordination/demos/test-quorum-absolute.sh +0 -45
  101. package/claude-assets/skills/cfn-redis-coordination/demos/test-quorum-fallback.sh +0 -68
  102. package/claude-assets/skills/cfn-redis-coordination/demos/test-quorum-percentage.sh +0 -56
  103. package/claude-assets/skills/cfn-redis-coordination/demos/test-quorum-with-retry.sh +0 -81
  104. package/claude-assets/skills/cfn-redis-coordination/demos/test-quorum.sh +0 -57
  105. package/claude-assets/skills/cfn-redis-coordination/demos/test-shutdown-handling.sh +0 -187
  106. package/claude-assets/skills/cfn-redis-coordination/demos/test-shutdown.sh +0 -160
  107. package/claude-assets/skills/cfn-redis-coordination/demos/test-utils-unix.sh +0 -97
  108. package/claude-assets/skills/cfn-redis-coordination/demos/test-utils.sh +0 -97
  109. package/claude-assets/skills/cfn-redis-coordination/demos/test-waiting-mode.sh +0 -59
  110. package/claude-assets/skills/cfn-redis-coordination/examples/README.md +0 -73
  111. package/claude-assets/skills/cfn-redis-coordination/examples/grafana-dashboard.json +0 -352
  112. package/claude-assets/skills/cfn-redis-coordination/examples/hierarchical-pattern.sh +0 -127
  113. package/claude-assets/skills/cfn-redis-coordination/examples/mesh-pattern.sh +0 -171
  114. package/claude-assets/skills/cfn-redis-coordination/examples/timeout-handling.sh +0 -227
  115. package/claude-assets/skills/cfn-redis-coordination/examples/waiting-mode-pattern.sh +0 -239
  116. package/claude-assets/skills/cfn-redis-coordination/execute-product-owner-decision.sh +0 -258
  117. package/claude-assets/skills/cfn-redis-coordination/get-agent-timeout.sh +0 -177
  118. package/claude-assets/skills/cfn-redis-coordination/heartbeat-functions.sh +0 -137
  119. package/claude-assets/skills/cfn-redis-coordination/heartbeat-protocol.md +0 -106
  120. package/claude-assets/skills/cfn-redis-coordination/heartbeat.sh +0 -126
  121. package/claude-assets/skills/cfn-redis-coordination/init-swarm.sh +0 -148
  122. package/claude-assets/skills/cfn-redis-coordination/invoke-redis-pattern.sh +0 -220
  123. package/claude-assets/skills/cfn-redis-coordination/invoke-waiting-mode.sh +0 -283
  124. package/claude-assets/skills/cfn-redis-coordination/list-active-swarms.sh +0 -147
  125. package/claude-assets/skills/cfn-redis-coordination/log-event.sh +0 -109
  126. package/claude-assets/skills/cfn-redis-coordination/metrics-export.sh +0 -674
  127. package/claude-assets/skills/cfn-redis-coordination/metrics-schema.json +0 -66
  128. package/claude-assets/skills/cfn-redis-coordination/metrics-storage.md +0 -31
  129. package/claude-assets/skills/cfn-redis-coordination/monitor-cfn-violations.sh +0 -391
  130. package/claude-assets/skills/cfn-redis-coordination/monitor-heartbeats.sh +0 -101
  131. package/claude-assets/skills/cfn-redis-coordination/orchestrate-cfn-loop-v3.sh +0 -141
  132. package/claude-assets/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh +0 -31
  133. package/claude-assets/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
  134. package/claude-assets/skills/cfn-redis-coordination/priority-wake-mechanism.md +0 -75
  135. package/claude-assets/skills/cfn-redis-coordination/priority_wake.py +0 -134
  136. package/claude-assets/skills/cfn-redis-coordination/query-dlq.sh +0 -162
  137. package/claude-assets/skills/cfn-redis-coordination/query-logs.sh +0 -103
  138. package/claude-assets/skills/cfn-redis-coordination/redis-pattern.sh +0 -619
  139. package/claude-assets/skills/cfn-redis-coordination/retrieve-context.sh +0 -58
  140. package/claude-assets/skills/cfn-redis-coordination/select-specialist-agent.sh +0 -371
  141. package/claude-assets/skills/cfn-redis-coordination/semantic-match-tfidf.py +0 -252
  142. package/claude-assets/skills/cfn-redis-coordination/send-heartbeat.sh +0 -165
  143. package/claude-assets/skills/cfn-redis-coordination/signal.sh +0 -38
  144. package/claude-assets/skills/cfn-redis-coordination/store-context.sh +0 -86
  145. package/claude-assets/skills/cfn-redis-coordination/store-epic-context.sh +0 -123
  146. package/claude-assets/skills/cfn-redis-coordination/test-context-injection.sh +0 -354
  147. package/claude-assets/skills/cfn-redis-coordination/test-timeout-enforcement.sh +0 -513
  148. package/claude-assets/skills/cfn-redis-coordination/tests/convert-line-endings.sh +0 -15
  149. package/claude-assets/skills/cfn-redis-coordination/tests/dlq-functionality-test.sh +0 -102
  150. package/claude-assets/skills/cfn-redis-coordination/tests/edge-cases-test.sh +0 -99
  151. package/claude-assets/skills/cfn-redis-coordination/tests/integration-test.sh +0 -170
  152. package/claude-assets/skills/cfn-redis-coordination/tests/retry-mechanism-test.sh +0 -82
  153. package/claude-assets/skills/cfn-redis-coordination/tests/run-test-suite.sh +0 -92
  154. package/claude-assets/skills/cfn-redis-coordination/tests/run-tests.sh +0 -4
  155. package/claude-assets/skills/cfn-redis-coordination/tests/test-heartbeat-monitoring.sh +0 -418
  156. package/claude-assets/skills/cfn-redis-coordination/tests/test-heartbeat-simple.sh +0 -124
  157. package/claude-assets/skills/cfn-redis-coordination/tests/test-primitives.sh +0 -166
  158. package/claude-assets/skills/cfn-redis-coordination/tests/test-utils.sh +0 -54
  159. package/claude-assets/skills/cfn-redis-coordination/tests/test_utils.sh +0 -49
  160. package/claude-assets/skills/cfn-redis-coordination/v2_modularization/core_orchestration.sh +0 -76
  161. package/claude-assets/skills/cfn-redis-coordination/validate-parameters.sh +0 -492
@@ -1,354 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Context Injection Test Utility
4
- # Validates end-to-end context propagation through CFN Loop layers
5
-
6
- set -euo pipefail
7
-
8
- # Colors for output
9
- RED='\033[0;31m'
10
- GREEN='\033[0;32m'
11
- YELLOW='\033[1;33m'
12
- BLUE='\033[0;34m'
13
- NC='\033[0m' # No Color
14
-
15
- # Default configuration
16
- TASK_ID=""
17
- TEST_MODE=false
18
- VERBOSE=false
19
- EPIC_CONTEXT=""
20
- PHASE_CONTEXT=""
21
- SUCCESS_CRITERIA=""
22
-
23
- # Logging functions
24
- log_info() {
25
- if [[ "$VERBOSE" == true ]]; then
26
- echo -e "${BLUE}[INFO]${NC} $1"
27
- fi
28
- }
29
-
30
- log_success() {
31
- echo -e "${GREEN}[SUCCESS]${NC} $1"
32
- }
33
-
34
- log_error() {
35
- echo -e "${RED}[ERROR]${NC} $1"
36
- }
37
-
38
- log_warning() {
39
- echo -e "${YELLOW}[WARNING]${NC} $1"
40
- }
41
-
42
- # Usage information
43
- usage() {
44
- cat << EOF
45
- Context Injection Test Utility
46
-
47
- USAGE:
48
- $0 [OPTIONS]
49
-
50
- OPTIONS:
51
- -t, --task-id <ID> Task ID for Redis operations
52
- -e, --epic-context <JSON> Epic context JSON
53
- -p, --phase-context <JSON> Phase context JSON
54
- -s, --success-criteria <JSON> Success criteria JSON
55
- --test-mode Run in test mode with sample data
56
- -v, --verbose Enable verbose logging
57
- -h, --help Show this help message
58
-
59
- EXAMPLES:
60
- # Test mode (validates infrastructure)
61
- $0 --test-mode
62
-
63
- # Production mode with custom contexts
64
- $0 -t "my-task-123" \\
65
- -e '{"epicGoal":"Build feature","inScope":["API"]}' \\
66
- -p '{"phaseId":"phase-1","deliverables":["api.js"]}' \\
67
- -s '{"acceptanceCriteria":["Tests pass"],"gateThreshold":0.8}'
68
-
69
- EOF
70
- }
71
-
72
- # Parse command line arguments
73
- parse_args() {
74
- while [[ $# -gt 0 ]]; do
75
- case $1 in
76
- -t|--task-id)
77
- TASK_ID="$2"
78
- shift 2
79
- ;;
80
- -e|--epic-context)
81
- EPIC_CONTEXT="$2"
82
- shift 2
83
- ;;
84
- -p|--phase-context)
85
- PHASE_CONTEXT="$2"
86
- shift 2
87
- ;;
88
- -s|--success-criteria)
89
- SUCCESS_CRITERIA="$2"
90
- shift 2
91
- ;;
92
- --test-mode)
93
- TEST_MODE=true
94
- shift
95
- ;;
96
- -v|--verbose)
97
- VERBOSE=true
98
- shift
99
- ;;
100
- -h|--help)
101
- usage
102
- exit 0
103
- ;;
104
- *)
105
- log_error "Unknown option: $1"
106
- usage
107
- exit 1
108
- ;;
109
- esac
110
- done
111
- }
112
-
113
- # Validate Redis connectivity
114
- validate_redis() {
115
- log_info "Validating Redis connectivity..."
116
- if ! redis-cli ping > /dev/null 2>&1; then
117
- log_error "Redis is not available"
118
- return 1
119
- fi
120
- log_success "Redis connectivity validated"
121
- }
122
-
123
- # Validate JSON format
124
- validate_json() {
125
- local json_string="$1"
126
- local context_type="$2"
127
-
128
- log_info "Validating $context_type JSON format..."
129
- if ! echo "$json_string" | jq . > /dev/null 2>&1; then
130
- log_error "Invalid JSON in $context_type: $json_string"
131
- return 1
132
- fi
133
- log_success "$context_type JSON format validated"
134
- }
135
-
136
- # Store context in Redis
137
- store_context() {
138
- local context="$1"
139
- local context_type="$2"
140
- local redis_key="test:${TASK_ID}:${context_type}"
141
-
142
- log_info "Storing $context_type in Redis..."
143
- if ! redis-cli set "$redis_key" "$context" > /dev/null 2>&1; then
144
- log_error "Failed to store $context_type in Redis"
145
- return 1
146
- fi
147
- log_success "$context_type stored in Redis: $redis_key"
148
- }
149
-
150
- # Retrieve context from Redis
151
- retrieve_context() {
152
- local context_type="$1"
153
- local redis_key="test:${TASK_ID}:${context_type}"
154
-
155
- log_info "Retrieving $context_type from Redis..."
156
- local retrieved=$(redis-cli get "$redis_key" 2>/dev/null || echo "")
157
-
158
- if [[ -z "$retrieved" ]]; then
159
- log_error "Failed to retrieve $context_type from Redis"
160
- return 1
161
- fi
162
-
163
- log_success "$context_type retrieved from Redis"
164
- echo "$retrieved"
165
- }
166
-
167
- # Test context propagation
168
- test_propagation() {
169
- log_info "Testing context propagation..."
170
-
171
- local epic_retrieved=$(retrieve_context "epic-context")
172
- local phase_retrieved=$(retrieve_context "phase-context")
173
- local success_retrieved=$(retrieve_context "success-criteria")
174
-
175
- # Validate content matches
176
- if [[ "$epic_retrieved" != "$EPIC_CONTEXT" ]]; then
177
- log_error "Epic context mismatch"
178
- return 1
179
- fi
180
-
181
- if [[ "$phase_retrieved" != "$PHASE_CONTEXT" ]]; then
182
- log_error "Phase context mismatch"
183
- return 1
184
- fi
185
-
186
- if [[ "$success_retrieved" != "$SUCCESS_CRITERIA" ]]; then
187
- log_error "Success criteria mismatch"
188
- return 1
189
- fi
190
-
191
- log_success "All context propagation tests passed"
192
- }
193
-
194
- # Simulate agent context injection
195
- simulate_agent_injection() {
196
- log_info "Simulating agent context injection..."
197
-
198
- # Create combined context for agent
199
- local combined_context=$(jq -n \
200
- --argjson epic "$EPIC_CONTEXT" \
201
- --argjson phase "$PHASE_CONTEXT" \
202
- --argjson success "$SUCCESS_CRITERIA" \
203
- '{
204
- epic: $epic,
205
- phase: $phase,
206
- success: $success
207
- }')
208
-
209
- # Create temporary agent script
210
- cat > /tmp/test-agent-context.sh << EOF
211
- #!/bin/bash
212
- CONTEXT="\$1"
213
-
214
- echo "Agent received context:"
215
- echo "\$CONTEXT" | jq .
216
-
217
- # Validate agent can access all context layers
218
- EPIC_GOAL=\$(echo "\$CONTEXT" | jq -r '.epic.epicGoal')
219
- PHASE_ID=\$(echo "\$CONTEXT" | jq -r '.phase.phaseId')
220
- GATE_THRESHOLD=\$(echo "\$CONTEXT" | jq -r '.success.gateThreshold')
221
-
222
- echo "Epic Goal: \$EPIC_GOAL"
223
- echo "Phase ID: \$PHASE_ID"
224
- echo "Gate Threshold: \$GATE_THRESHOLD"
225
-
226
- # Create deliverables based on context
227
- DELIVERABLES=\$(echo "\$CONTEXT" | jq -r '.phase.deliverables[]')
228
- for deliverable in \$DELIVERABLES; do
229
- touch "/tmp/\$deliverable"
230
- echo "Created deliverable: \$deliverable"
231
- done
232
- EOF
233
-
234
- chmod +x /tmp/test-agent-context.sh
235
-
236
- # Execute agent script with context
237
- if /tmp/test-agent-context.sh "$combined_context"; then
238
- log_success "Agent context injection simulation successful"
239
- else
240
- log_error "Agent context injection simulation failed"
241
- return 1
242
- fi
243
-
244
- # Cleanup
245
- rm -f /tmp/test-agent-context.sh
246
- }
247
-
248
- # Cleanup test data
249
- cleanup() {
250
- log_info "Cleaning up test data..."
251
-
252
- local test_keys=$(redis-cli keys "test:${TASK_ID}:*" 2>/dev/null || true)
253
- if [[ -n "$test_keys" ]]; then
254
- echo "$test_keys" | xargs redis-cli del > /dev/null
255
- log_success "Test keys cleaned up from Redis"
256
- fi
257
-
258
- # Cleanup temporary files
259
- rm -f /tmp/test-agent-context.sh
260
- local deliverables=$(echo "$PHASE_CONTEXT" | jq -r '.deliverables[]' 2>/dev/null || true)
261
- for deliverable in $deliverables; do
262
- rm -f "/tmp/$deliverable"
263
- done
264
- }
265
-
266
- # Test mode with sample data
267
- run_test_mode() {
268
- log_info "Running in test mode..."
269
-
270
- # Generate test task ID
271
- TASK_ID="context-injection-test-$(date +%s)"
272
-
273
- # Sample context data
274
- EPIC_CONTEXT='{
275
- "epicGoal": "Test context injection validation",
276
- "inScope": ["Redis operations", "Agent spawning", "Context propagation"],
277
- "outOfScope": ["Performance optimization", "New context types"]
278
- }'
279
-
280
- PHASE_CONTEXT='{
281
- "phaseId": "test-phase",
282
- "deliverables": ["test-deliverable-1.txt", "test-deliverable-2.txt"],
283
- "directory": "/tmp/test-context",
284
- "acceptanceCriteria": ["All contexts propagated", "Deliverables created"]
285
- }'
286
-
287
- SUCCESS_CRITERIA='{
288
- "acceptanceCriteria": [
289
- "Epic context retrieved correctly",
290
- "Phase context injected successfully",
291
- "Success criteria visible to validators"
292
- ],
293
- "gateThreshold": 0.8,
294
- "maxIterations": 3
295
- }'
296
-
297
- log_success "Test mode data initialized"
298
- }
299
-
300
- # Main execution
301
- main() {
302
- # Parse arguments
303
- parse_args "$@"
304
-
305
- # Validate required parameters
306
- if [[ "$TEST_MODE" == false ]]; then
307
- if [[ -z "$TASK_ID" || -z "$EPIC_CONTEXT" || -z "$PHASE_CONTEXT" || -z "$SUCCESS_CRITERIA" ]]; then
308
- log_error "Missing required parameters. Use --help for usage information."
309
- exit 1
310
- fi
311
- else
312
- run_test_mode
313
- fi
314
-
315
- log_info "Starting context injection validation"
316
- log_info "Task ID: $TASK_ID"
317
- echo "========================================"
318
-
319
- # Validation pipeline
320
- validate_redis || exit 1
321
- validate_json "$EPIC_CONTEXT" "epic-context" || exit 1
322
- validate_json "$PHASE_CONTEXT" "phase-context" || exit 1
323
- validate_json "$SUCCESS_CRITERIA" "success-criteria" || exit 1
324
-
325
- # Store contexts
326
- store_context "$EPIC_CONTEXT" "epic-context" || exit 1
327
- store_context "$PHASE_CONTEXT" "phase-context" || exit 1
328
- store_context "$SUCCESS_CRITERIA" "success-criteria" || exit 1
329
-
330
- # Test propagation
331
- test_propagation || exit 1
332
-
333
- # Simulate agent injection
334
- simulate_agent_injection || exit 1
335
-
336
- # Cleanup
337
- cleanup
338
-
339
- echo "========================================"
340
- log_success "Context injection validation completed successfully!"
341
- log_success "All tests passed - context propagation working correctly"
342
-
343
- if [[ "$TEST_MODE" == true ]]; then
344
- echo ""
345
- log_info "Test mode validated infrastructure readiness"
346
- log_info "Ready for production context injection testing"
347
- fi
348
- }
349
-
350
- # Handle cleanup on script exit
351
- trap cleanup EXIT
352
-
353
- # Run main function
354
- main "$@"