proagents 1.6.17 → 1.6.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +169 -0
- package/COMMANDS.md +595 -0
- package/README.md +13 -23
- package/package.json +2 -7
- package/.proagents/ai-models/README.md +0 -141
- package/.proagents/ai-models/cost-management.md +0 -362
- package/.proagents/ai-models/fallbacks.md +0 -342
- package/.proagents/ai-models/model-config.md +0 -318
- package/.proagents/ai-models/task-routing.md +0 -503
- package/.proagents/ai-training/README.md +0 -155
- package/.proagents/ai-training/continuous-learning.md +0 -413
- package/.proagents/ai-training/domain-knowledge.md +0 -378
- package/.proagents/ai-training/pattern-learning.md +0 -455
- package/.proagents/ai-training/training-data.md +0 -337
- package/.proagents/ai-training/user-preferences.md +0 -346
- package/.proagents/approval-workflows/README.md +0 -146
- package/.proagents/approval-workflows/approval-config.md +0 -332
- package/.proagents/approval-workflows/approval-stages.md +0 -503
- package/.proagents/approval-workflows/emergency-bypass.md +0 -351
- package/.proagents/approval-workflows/examples.md +0 -859
- package/.proagents/approval-workflows/notifications.md +0 -320
- package/.proagents/compliance/README.md +0 -206
- package/.proagents/compliance/access-control.md +0 -310
- package/.proagents/compliance/audit-logging.md +0 -444
- package/.proagents/compliance/compliance-frameworks.md +0 -429
- package/.proagents/compliance/reports.md +0 -491
- package/.proagents/compliance/retention-policies.md +0 -454
- package/.proagents/config-versioning/README.md +0 -120
- package/.proagents/config-versioning/changelog.md +0 -300
- package/.proagents/config-versioning/rollback.md +0 -283
- package/.proagents/config-versioning/versioning.md +0 -330
- package/.proagents/contract-testing/README.md +0 -223
- package/.proagents/contract-testing/contract-testing.md +0 -614
- package/.proagents/contract-testing/pact-integration.md +0 -507
- package/.proagents/contract-testing/schema-validation.md +0 -565
- package/.proagents/dependency-management/README.md +0 -140
- package/.proagents/dependency-management/automation.md +0 -363
- package/.proagents/dependency-management/compatibility.md +0 -319
- package/.proagents/dependency-management/security-scanning.md +0 -413
- package/.proagents/dependency-management/update-policies.md +0 -374
- package/.proagents/disaster-recovery/README.md +0 -247
- package/.proagents/disaster-recovery/automation.md +0 -366
- package/.proagents/disaster-recovery/backup-recovery.md +0 -571
- package/.proagents/disaster-recovery/incident-response.md +0 -565
- package/.proagents/disaster-recovery/rollback-procedures.md +0 -499
- package/.proagents/disaster-recovery/runbooks.md +0 -603
- package/.proagents/disaster-recovery/scenarios.md +0 -892
- package/.proagents/disaster-recovery/testing.md +0 -438
- package/.proagents/environments/README.md +0 -244
- package/.proagents/environments/configuration.md +0 -437
- package/.proagents/environments/promotion.md +0 -434
- package/.proagents/environments/setup.md +0 -420
- package/.proagents/examples/README.md +0 -55
- package/.proagents/examples/backend-nodejs/README.md +0 -188
- package/.proagents/examples/backend-nodejs/complete-conversation.md +0 -601
- package/.proagents/examples/backend-nodejs/proagents.config.yaml +0 -415
- package/.proagents/examples/backend-nodejs/workflow-example.md +0 -909
- package/.proagents/examples/fullstack-nextjs/README.md +0 -155
- package/.proagents/examples/fullstack-nextjs/complete-conversation.md +0 -604
- package/.proagents/examples/fullstack-nextjs/proagents.config.yaml +0 -287
- package/.proagents/examples/fullstack-nextjs/workflow-example.md +0 -553
- package/.proagents/examples/mobile-react-native/README.md +0 -171
- package/.proagents/examples/mobile-react-native/complete-conversation.md +0 -825
- package/.proagents/examples/mobile-react-native/proagents.config.yaml +0 -330
- package/.proagents/examples/mobile-react-native/workflow-example.md +0 -723
- package/.proagents/examples/web-frontend-react/README.md +0 -125
- package/.proagents/examples/web-frontend-react/complete-conversation.md +0 -556
- package/.proagents/examples/web-frontend-react/proagents.config.yaml +0 -183
- package/.proagents/examples/web-frontend-react/workflow-example.md +0 -603
- package/.proagents/existing-projects/README.md +0 -65
- package/.proagents/existing-projects/challenges.md +0 -861
- package/.proagents/existing-projects/coexistence-mode.md +0 -483
- package/.proagents/existing-projects/compatibility-assessment.md +0 -541
- package/.proagents/existing-projects/gradual-adoption.md +0 -515
- package/.proagents/existing-projects/migration-strategies.md +0 -788
- package/.proagents/existing-projects/pattern-reconciliation.md +0 -489
- package/.proagents/existing-projects/team-onboarding.md +0 -617
- package/.proagents/existing-projects/technical-debt-handling.md +0 -644
- package/.proagents/feature-flags/README.md +0 -263
- package/.proagents/feature-flags/ab-testing.md +0 -413
- package/.proagents/feature-flags/configuration.md +0 -420
- package/.proagents/feature-flags/kill-switches.md +0 -444
- package/.proagents/feature-flags/rollout-strategies.md +0 -392
- package/.proagents/history.log +0 -12
- package/.proagents/i18n/README.md +0 -133
- package/.proagents/i18n/extraction.md +0 -433
- package/.proagents/i18n/tms-integration.md +0 -332
- package/.proagents/i18n/translation-workflow.md +0 -413
- package/.proagents/i18n/validation.md +0 -355
- package/.proagents/logging/README.md +0 -276
- package/.proagents/logging/aggregation.md +0 -475
- package/.proagents/logging/log-levels.md +0 -376
- package/.proagents/logging/sensitive-data.md +0 -423
- package/.proagents/logging/structured-logging.md +0 -406
- package/.proagents/metrics/README.md +0 -69
- package/.proagents/metrics/code-quality-kpis.md +0 -461
- package/.proagents/metrics/deployment-metrics.md +0 -517
- package/.proagents/metrics/developer-productivity.md +0 -368
- package/.proagents/metrics/learning-effectiveness.md +0 -478
- package/.proagents/migrations/README.md +0 -77
- package/.proagents/migrations/from-claude-projects.md +0 -313
- package/.proagents/migrations/from-cursor-rules.md +0 -345
- package/.proagents/migrations/from-custom-workflows.md +0 -410
- package/.proagents/monitoring/README.md +0 -308
- package/.proagents/monitoring/alerting.md +0 -449
- package/.proagents/monitoring/dashboards.md +0 -454
- package/.proagents/monitoring/health-checks.md +0 -436
- package/.proagents/monitoring/metrics.md +0 -434
- package/.proagents/multi-project/README.md +0 -170
- package/.proagents/multi-project/coordinated-deploy.md +0 -510
- package/.proagents/multi-project/cross-project-deps.md +0 -395
- package/.proagents/multi-project/unified-changelog.md +0 -477
- package/.proagents/multi-project/walkthroughs/monorepo-setup.md +0 -787
- package/.proagents/multi-project/workspace-config.md +0 -408
- package/.proagents/notifications/README.md +0 -151
- package/.proagents/notifications/channels.md +0 -457
- package/.proagents/notifications/preferences.md +0 -415
- package/.proagents/notifications/routing.md +0 -449
- package/.proagents/notifications/scheduling.md +0 -425
- package/.proagents/notifications/templates.md +0 -446
- package/.proagents/offline-mode/README.md +0 -145
- package/.proagents/offline-mode/caching.md +0 -344
- package/.proagents/offline-mode/offline-operations.md +0 -312
- package/.proagents/offline-mode/queue-specifications.md +0 -679
- package/.proagents/offline-mode/sync.md +0 -475
- package/.proagents/parallel-features/README.md +0 -85
- package/.proagents/parallel-features/conflict-detection.md +0 -226
- package/.proagents/parallel-features/dependency-management.md +0 -392
- package/.proagents/parallel-features/merge-coordination.md +0 -506
- package/.proagents/parallel-features/tracking-system.md +0 -416
- package/.proagents/performance/README.md +0 -59
- package/.proagents/performance/bundle-analysis.md +0 -375
- package/.proagents/performance/load-testing.md +0 -563
- package/.proagents/performance/runtime-metrics.md +0 -489
- package/.proagents/performance/web-vitals.md +0 -425
- package/.proagents/plugins/README.md +0 -139
- package/.proagents/plugins/creating-plugins.md +0 -504
- package/.proagents/plugins/plugin-api.md +0 -467
- package/.proagents/plugins/plugin-registry.md +0 -276
- package/.proagents/reporting/README.md +0 -158
- package/.proagents/reporting/dashboards.md +0 -366
- package/.proagents/reporting/exports.md +0 -524
- package/.proagents/reporting/quality-metrics.md +0 -385
- package/.proagents/reporting/templates/README.md +0 -56
- package/.proagents/reporting/templates/dashboard-config.json +0 -187
- package/.proagents/reporting/templates/metrics-queries.md +0 -427
- package/.proagents/reporting/templates/react-dashboard.tsx +0 -544
- package/.proagents/reporting/templates/widgets.md +0 -451
- package/.proagents/reporting/velocity-metrics.md +0 -340
- package/.proagents/reverse-engineering/README.md +0 -151
- package/.proagents/reverse-engineering/architecture-extraction.md +0 -325
- package/.proagents/reverse-engineering/code-analysis.md +0 -377
- package/.proagents/reverse-engineering/dependency-mapping.md +0 -567
- package/.proagents/reverse-engineering/diagram-generation.md +0 -586
- package/.proagents/reverse-engineering/documentation-generation.md +0 -468
- package/.proagents/reverse-engineering/pattern-detection.md +0 -569
- package/.proagents/reverse-engineering/quality-assessment.md +0 -733
- package/.proagents/secrets/README.md +0 -278
- package/.proagents/secrets/access-control.md +0 -443
- package/.proagents/secrets/rotation.md +0 -403
- package/.proagents/secrets/scanning.md +0 -487
- package/.proagents/secrets/storage.md +0 -394
- package/.proagents/webhooks/README.md +0 -126
- package/.proagents/webhooks/endpoints.md +0 -298
- package/.proagents/webhooks/events.md +0 -316
- package/.proagents/webhooks/payloads.md +0 -325
- package/.proagents/webhooks/reliability.md +0 -363
- package/.proagents/webhooks/security.md +0 -380
|
@@ -1,298 +0,0 @@
|
|
|
1
|
-
# Webhook Endpoint Configuration
|
|
2
|
-
|
|
3
|
-
Configure and manage webhook endpoints.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Basic Configuration
|
|
8
|
-
|
|
9
|
-
### Single Endpoint
|
|
10
|
-
|
|
11
|
-
```yaml
|
|
12
|
-
webhooks:
|
|
13
|
-
endpoints:
|
|
14
|
-
- name: "my-webhook"
|
|
15
|
-
url: "https://api.example.com/webhooks"
|
|
16
|
-
events: ["feature.completed", "deploy.success"]
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### Multiple Endpoints
|
|
20
|
-
|
|
21
|
-
```yaml
|
|
22
|
-
webhooks:
|
|
23
|
-
endpoints:
|
|
24
|
-
# Slack for notifications
|
|
25
|
-
- name: "slack-dev"
|
|
26
|
-
url: "https://hooks.slack.com/services/xxx"
|
|
27
|
-
events: ["feature.*", "test.failed"]
|
|
28
|
-
|
|
29
|
-
# Discord for team updates
|
|
30
|
-
- name: "discord-team"
|
|
31
|
-
url: "https://discord.com/api/webhooks/xxx"
|
|
32
|
-
events: ["deploy.*"]
|
|
33
|
-
|
|
34
|
-
# Custom API for all events
|
|
35
|
-
- name: "analytics-api"
|
|
36
|
-
url: "https://analytics.company.com/events"
|
|
37
|
-
events: ["*"]
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## Authentication
|
|
43
|
-
|
|
44
|
-
### Bearer Token
|
|
45
|
-
|
|
46
|
-
```yaml
|
|
47
|
-
webhooks:
|
|
48
|
-
endpoints:
|
|
49
|
-
- name: "secure-api"
|
|
50
|
-
url: "https://api.example.com/webhooks"
|
|
51
|
-
auth:
|
|
52
|
-
type: "bearer"
|
|
53
|
-
token_env: "WEBHOOK_API_TOKEN"
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
### Basic Auth
|
|
57
|
-
|
|
58
|
-
```yaml
|
|
59
|
-
webhooks:
|
|
60
|
-
endpoints:
|
|
61
|
-
- name: "basic-auth-api"
|
|
62
|
-
url: "https://api.example.com/webhooks"
|
|
63
|
-
auth:
|
|
64
|
-
type: "basic"
|
|
65
|
-
username_env: "WEBHOOK_USER"
|
|
66
|
-
password_env: "WEBHOOK_PASS"
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Custom Headers
|
|
70
|
-
|
|
71
|
-
```yaml
|
|
72
|
-
webhooks:
|
|
73
|
-
endpoints:
|
|
74
|
-
- name: "custom-header-api"
|
|
75
|
-
url: "https://api.example.com/webhooks"
|
|
76
|
-
headers:
|
|
77
|
-
X-API-Key: "${WEBHOOK_API_KEY}"
|
|
78
|
-
X-Custom-Header: "proagents"
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### HMAC Signature
|
|
82
|
-
|
|
83
|
-
```yaml
|
|
84
|
-
webhooks:
|
|
85
|
-
endpoints:
|
|
86
|
-
- name: "signed-webhook"
|
|
87
|
-
url: "https://api.example.com/webhooks"
|
|
88
|
-
signature:
|
|
89
|
-
enabled: true
|
|
90
|
-
algorithm: "sha256"
|
|
91
|
-
secret_env: "WEBHOOK_SECRET"
|
|
92
|
-
header: "X-ProAgents-Signature"
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## Event Filtering
|
|
98
|
-
|
|
99
|
-
### Wildcard Patterns
|
|
100
|
-
|
|
101
|
-
```yaml
|
|
102
|
-
webhooks:
|
|
103
|
-
endpoints:
|
|
104
|
-
- name: "all-events"
|
|
105
|
-
events: ["*"] # All events
|
|
106
|
-
|
|
107
|
-
- name: "feature-events"
|
|
108
|
-
events: ["feature.*"] # All feature events
|
|
109
|
-
|
|
110
|
-
- name: "specific-events"
|
|
111
|
-
events:
|
|
112
|
-
- "feature.completed"
|
|
113
|
-
- "deploy.success"
|
|
114
|
-
- "test.failed"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### Conditional Filtering
|
|
118
|
-
|
|
119
|
-
```yaml
|
|
120
|
-
webhooks:
|
|
121
|
-
endpoints:
|
|
122
|
-
- name: "production-only"
|
|
123
|
-
url: "https://api.example.com/webhooks"
|
|
124
|
-
events: ["deploy.*"]
|
|
125
|
-
filters:
|
|
126
|
-
environment: "production"
|
|
127
|
-
|
|
128
|
-
- name: "critical-only"
|
|
129
|
-
url: "https://alerts.example.com/webhooks"
|
|
130
|
-
events: ["*"]
|
|
131
|
-
filters:
|
|
132
|
-
severity: ["critical", "high"]
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
### Branch Filtering
|
|
136
|
-
|
|
137
|
-
```yaml
|
|
138
|
-
webhooks:
|
|
139
|
-
endpoints:
|
|
140
|
-
- name: "main-branch-only"
|
|
141
|
-
url: "https://api.example.com/webhooks"
|
|
142
|
-
events: ["deploy.*", "pr.merged"]
|
|
143
|
-
filters:
|
|
144
|
-
branches:
|
|
145
|
-
- "main"
|
|
146
|
-
- "release/*"
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
---
|
|
150
|
-
|
|
151
|
-
## Request Configuration
|
|
152
|
-
|
|
153
|
-
### Timeout & Retries
|
|
154
|
-
|
|
155
|
-
```yaml
|
|
156
|
-
webhooks:
|
|
157
|
-
endpoints:
|
|
158
|
-
- name: "reliable-webhook"
|
|
159
|
-
url: "https://api.example.com/webhooks"
|
|
160
|
-
events: ["*"]
|
|
161
|
-
request:
|
|
162
|
-
timeout: 30000 # 30 seconds
|
|
163
|
-
retries: 3
|
|
164
|
-
retry_delay: 5000 # 5 seconds between retries
|
|
165
|
-
retry_backoff: "exponential"
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
### Custom Payload
|
|
169
|
-
|
|
170
|
-
```yaml
|
|
171
|
-
webhooks:
|
|
172
|
-
endpoints:
|
|
173
|
-
- name: "custom-format"
|
|
174
|
-
url: "https://api.example.com/webhooks"
|
|
175
|
-
events: ["feature.completed"]
|
|
176
|
-
transform:
|
|
177
|
-
template: |
|
|
178
|
-
{
|
|
179
|
-
"type": "proagents_event",
|
|
180
|
-
"event_name": "{{event}}",
|
|
181
|
-
"feature": "{{data.feature_name}}",
|
|
182
|
-
"timestamp": "{{timestamp}}"
|
|
183
|
-
}
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
### Batch Delivery
|
|
187
|
-
|
|
188
|
-
```yaml
|
|
189
|
-
webhooks:
|
|
190
|
-
endpoints:
|
|
191
|
-
- name: "batched-webhook"
|
|
192
|
-
url: "https://api.example.com/webhooks/batch"
|
|
193
|
-
events: ["*"]
|
|
194
|
-
batching:
|
|
195
|
-
enabled: true
|
|
196
|
-
max_size: 100 # Max events per batch
|
|
197
|
-
max_wait: 10000 # Max wait time (ms)
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
---
|
|
201
|
-
|
|
202
|
-
## Environment-Specific
|
|
203
|
-
|
|
204
|
-
### Per-Environment Webhooks
|
|
205
|
-
|
|
206
|
-
```yaml
|
|
207
|
-
webhooks:
|
|
208
|
-
environments:
|
|
209
|
-
development:
|
|
210
|
-
endpoints:
|
|
211
|
-
- name: "dev-slack"
|
|
212
|
-
url: "${DEV_SLACK_WEBHOOK}"
|
|
213
|
-
events: ["*"]
|
|
214
|
-
|
|
215
|
-
staging:
|
|
216
|
-
endpoints:
|
|
217
|
-
- name: "staging-slack"
|
|
218
|
-
url: "${STAGING_SLACK_WEBHOOK}"
|
|
219
|
-
events: ["deploy.*", "test.failed"]
|
|
220
|
-
|
|
221
|
-
production:
|
|
222
|
-
endpoints:
|
|
223
|
-
- name: "prod-slack"
|
|
224
|
-
url: "${PROD_SLACK_WEBHOOK}"
|
|
225
|
-
events: ["deploy.*", "security.*"]
|
|
226
|
-
|
|
227
|
-
- name: "pagerduty"
|
|
228
|
-
url: "https://events.pagerduty.com/v2/enqueue"
|
|
229
|
-
events: ["deploy.failed", "security.vulnerability.critical"]
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
---
|
|
233
|
-
|
|
234
|
-
## Endpoint Management
|
|
235
|
-
|
|
236
|
-
### Enable/Disable
|
|
237
|
-
|
|
238
|
-
```yaml
|
|
239
|
-
webhooks:
|
|
240
|
-
endpoints:
|
|
241
|
-
- name: "maintenance-mode"
|
|
242
|
-
url: "https://api.example.com/webhooks"
|
|
243
|
-
enabled: false # Temporarily disabled
|
|
244
|
-
events: ["*"]
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
### Maintenance Windows
|
|
248
|
-
|
|
249
|
-
```yaml
|
|
250
|
-
webhooks:
|
|
251
|
-
endpoints:
|
|
252
|
-
- name: "business-hours-only"
|
|
253
|
-
url: "https://api.example.com/webhooks"
|
|
254
|
-
events: ["*"]
|
|
255
|
-
schedule:
|
|
256
|
-
enabled_hours: "09:00-18:00"
|
|
257
|
-
enabled_days: ["mon", "tue", "wed", "thu", "fri"]
|
|
258
|
-
timezone: "America/New_York"
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
---
|
|
262
|
-
|
|
263
|
-
## Commands
|
|
264
|
-
|
|
265
|
-
```bash
|
|
266
|
-
# List all endpoints
|
|
267
|
-
proagents webhooks list
|
|
268
|
-
|
|
269
|
-
# Add endpoint
|
|
270
|
-
proagents webhooks add \
|
|
271
|
-
--name "new-webhook" \
|
|
272
|
-
--url "https://api.example.com/webhooks" \
|
|
273
|
-
--events "feature.*,deploy.*"
|
|
274
|
-
|
|
275
|
-
# Update endpoint
|
|
276
|
-
proagents webhooks update new-webhook --events "*"
|
|
277
|
-
|
|
278
|
-
# Remove endpoint
|
|
279
|
-
proagents webhooks remove new-webhook
|
|
280
|
-
|
|
281
|
-
# Enable/disable
|
|
282
|
-
proagents webhooks enable new-webhook
|
|
283
|
-
proagents webhooks disable new-webhook
|
|
284
|
-
|
|
285
|
-
# Test endpoint
|
|
286
|
-
proagents webhooks test new-webhook --event feature.completed
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
---
|
|
290
|
-
|
|
291
|
-
## Best Practices
|
|
292
|
-
|
|
293
|
-
1. **Use Environment Variables**: Never hardcode URLs or secrets
|
|
294
|
-
2. **Filter Events**: Only subscribe to events you need
|
|
295
|
-
3. **Set Timeouts**: Prevent hanging connections
|
|
296
|
-
4. **Enable Retries**: Handle transient failures
|
|
297
|
-
5. **Use Signatures**: Verify webhook authenticity
|
|
298
|
-
6. **Monitor Health**: Track delivery success rates
|
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
# Webhook Events Reference
|
|
2
|
-
|
|
3
|
-
Complete reference of all webhook events.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Event Categories
|
|
8
|
-
|
|
9
|
-
### Feature Events
|
|
10
|
-
|
|
11
|
-
| Event | Description | Trigger |
|
|
12
|
-
|-------|-------------|---------|
|
|
13
|
-
| `feature.started` | New feature started | `pa:feature start` |
|
|
14
|
-
| `feature.paused` | Feature paused | `pa:feature pause` |
|
|
15
|
-
| `feature.resumed` | Feature resumed | `pa:feature resume` |
|
|
16
|
-
| `feature.completed` | Feature completed | All phases done |
|
|
17
|
-
| `feature.abandoned` | Feature abandoned | Manual cancellation |
|
|
18
|
-
|
|
19
|
-
**Example Payload:**
|
|
20
|
-
```json
|
|
21
|
-
{
|
|
22
|
-
"event": "feature.completed",
|
|
23
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
24
|
-
"data": {
|
|
25
|
-
"feature_id": "feat-123",
|
|
26
|
-
"feature_name": "User Authentication",
|
|
27
|
-
"branch": "feature/user-auth",
|
|
28
|
-
"duration_minutes": 240,
|
|
29
|
-
"phases_completed": 9,
|
|
30
|
-
"files_changed": 15,
|
|
31
|
-
"lines_added": 450,
|
|
32
|
-
"lines_removed": 20
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
### Phase Events
|
|
40
|
-
|
|
41
|
-
| Event | Description | Trigger |
|
|
42
|
-
|-------|-------------|---------|
|
|
43
|
-
| `phase.started` | Phase began | Phase transition |
|
|
44
|
-
| `phase.completed` | Phase finished | Phase completion |
|
|
45
|
-
| `phase.skipped` | Phase skipped | Manual skip or config |
|
|
46
|
-
| `phase.failed` | Phase failed | Error during phase |
|
|
47
|
-
|
|
48
|
-
**Example Payload:**
|
|
49
|
-
```json
|
|
50
|
-
{
|
|
51
|
-
"event": "phase.completed",
|
|
52
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
53
|
-
"data": {
|
|
54
|
-
"feature_id": "feat-123",
|
|
55
|
-
"phase": "testing",
|
|
56
|
-
"phase_number": 6,
|
|
57
|
-
"duration_minutes": 45,
|
|
58
|
-
"status": "success",
|
|
59
|
-
"details": {
|
|
60
|
-
"tests_run": 150,
|
|
61
|
-
"tests_passed": 148,
|
|
62
|
-
"tests_failed": 2,
|
|
63
|
-
"coverage": 85.5
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
### Analysis Events
|
|
72
|
-
|
|
73
|
-
| Event | Description | Trigger |
|
|
74
|
-
|-------|-------------|---------|
|
|
75
|
-
| `analysis.started` | Codebase analysis began | Phase 1 start |
|
|
76
|
-
| `analysis.completed` | Analysis finished | Phase 1 complete |
|
|
77
|
-
| `analysis.cached` | Using cached analysis | Cache hit |
|
|
78
|
-
| `analysis.invalidated` | Cache invalidated | Code changes |
|
|
79
|
-
|
|
80
|
-
**Example Payload:**
|
|
81
|
-
```json
|
|
82
|
-
{
|
|
83
|
-
"event": "analysis.completed",
|
|
84
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
85
|
-
"data": {
|
|
86
|
-
"feature_id": "feat-123",
|
|
87
|
-
"duration_seconds": 45,
|
|
88
|
-
"files_analyzed": 234,
|
|
89
|
-
"patterns_detected": 18,
|
|
90
|
-
"dependencies_mapped": 45,
|
|
91
|
-
"cached": false
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
---
|
|
97
|
-
|
|
98
|
-
### Testing Events
|
|
99
|
-
|
|
100
|
-
| Event | Description | Trigger |
|
|
101
|
-
|-------|-------------|---------|
|
|
102
|
-
| `test.started` | Test suite began | Test phase start |
|
|
103
|
-
| `test.passed` | All tests passed | Test success |
|
|
104
|
-
| `test.failed` | Tests failed | Test failures |
|
|
105
|
-
| `test.skipped` | Tests skipped | Manual skip |
|
|
106
|
-
| `coverage.changed` | Coverage changed | Coverage delta |
|
|
107
|
-
| `coverage.below_threshold` | Coverage too low | Below minimum |
|
|
108
|
-
|
|
109
|
-
**Example Payload:**
|
|
110
|
-
```json
|
|
111
|
-
{
|
|
112
|
-
"event": "test.failed",
|
|
113
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
114
|
-
"data": {
|
|
115
|
-
"feature_id": "feat-123",
|
|
116
|
-
"test_type": "unit",
|
|
117
|
-
"total_tests": 150,
|
|
118
|
-
"passed": 145,
|
|
119
|
-
"failed": 5,
|
|
120
|
-
"skipped": 0,
|
|
121
|
-
"coverage": 82.5,
|
|
122
|
-
"failures": [
|
|
123
|
-
{
|
|
124
|
-
"test": "UserService.login.should_validate_email",
|
|
125
|
-
"file": "src/services/__tests__/UserService.test.ts",
|
|
126
|
-
"line": 45,
|
|
127
|
-
"error": "Expected validation error, received success"
|
|
128
|
-
}
|
|
129
|
-
]
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
### Review Events
|
|
137
|
-
|
|
138
|
-
| Event | Description | Trigger |
|
|
139
|
-
|-------|-------------|---------|
|
|
140
|
-
| `review.requested` | Review requested | PR created |
|
|
141
|
-
| `review.approved` | Review approved | Reviewer approval |
|
|
142
|
-
| `review.rejected` | Changes requested | Reviewer rejection |
|
|
143
|
-
| `review.comment` | Review comment added | Comment posted |
|
|
144
|
-
|
|
145
|
-
**Example Payload:**
|
|
146
|
-
```json
|
|
147
|
-
{
|
|
148
|
-
"event": "review.approved",
|
|
149
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
150
|
-
"data": {
|
|
151
|
-
"feature_id": "feat-123",
|
|
152
|
-
"pr_number": 456,
|
|
153
|
-
"reviewer": "john.doe",
|
|
154
|
-
"review_type": "code_review",
|
|
155
|
-
"comments_count": 3,
|
|
156
|
-
"approved_at": "2024-01-15T14:30:00Z"
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
### Deployment Events
|
|
164
|
-
|
|
165
|
-
| Event | Description | Trigger |
|
|
166
|
-
|-------|-------------|---------|
|
|
167
|
-
| `deploy.started` | Deployment began | Deploy start |
|
|
168
|
-
| `deploy.success` | Deployment successful | Deploy complete |
|
|
169
|
-
| `deploy.failed` | Deployment failed | Deploy error |
|
|
170
|
-
| `deploy.cancelled` | Deployment cancelled | Manual cancel |
|
|
171
|
-
| `rollback.triggered` | Rollback initiated | Auto or manual |
|
|
172
|
-
| `rollback.completed` | Rollback finished | Rollback done |
|
|
173
|
-
|
|
174
|
-
**Example Payload:**
|
|
175
|
-
```json
|
|
176
|
-
{
|
|
177
|
-
"event": "deploy.success",
|
|
178
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
179
|
-
"data": {
|
|
180
|
-
"feature_id": "feat-123",
|
|
181
|
-
"environment": "production",
|
|
182
|
-
"version": "1.5.0",
|
|
183
|
-
"commit": "abc123def",
|
|
184
|
-
"duration_seconds": 180,
|
|
185
|
-
"artifacts": [
|
|
186
|
-
"web-app:1.5.0",
|
|
187
|
-
"api-server:1.5.0"
|
|
188
|
-
]
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
### Git Events
|
|
196
|
-
|
|
197
|
-
| Event | Description | Trigger |
|
|
198
|
-
|-------|-------------|---------|
|
|
199
|
-
| `branch.created` | Branch created | New branch |
|
|
200
|
-
| `branch.deleted` | Branch deleted | Branch cleanup |
|
|
201
|
-
| `commit.pushed` | Commits pushed | Git push |
|
|
202
|
-
| `pr.created` | PR created | New PR |
|
|
203
|
-
| `pr.updated` | PR updated | PR changes |
|
|
204
|
-
| `pr.merged` | PR merged | Merge complete |
|
|
205
|
-
| `pr.closed` | PR closed | PR closed without merge |
|
|
206
|
-
|
|
207
|
-
**Example Payload:**
|
|
208
|
-
```json
|
|
209
|
-
{
|
|
210
|
-
"event": "pr.created",
|
|
211
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
212
|
-
"data": {
|
|
213
|
-
"feature_id": "feat-123",
|
|
214
|
-
"pr_number": 456,
|
|
215
|
-
"title": "feat(auth): add user authentication",
|
|
216
|
-
"branch": "feature/user-auth",
|
|
217
|
-
"base_branch": "develop",
|
|
218
|
-
"author": "jane.smith",
|
|
219
|
-
"url": "https://github.com/org/repo/pull/456",
|
|
220
|
-
"files_changed": 15,
|
|
221
|
-
"additions": 450,
|
|
222
|
-
"deletions": 20
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
---
|
|
228
|
-
|
|
229
|
-
### Security Events
|
|
230
|
-
|
|
231
|
-
| Event | Description | Trigger |
|
|
232
|
-
|-------|-------------|---------|
|
|
233
|
-
| `security.scan.started` | Security scan began | Scan start |
|
|
234
|
-
| `security.scan.completed` | Security scan done | Scan complete |
|
|
235
|
-
| `vulnerability.found` | Vulnerability detected | New vulnerability |
|
|
236
|
-
| `vulnerability.fixed` | Vulnerability fixed | Fix applied |
|
|
237
|
-
| `dependency.vulnerable` | Vulnerable dependency | Dependency scan |
|
|
238
|
-
|
|
239
|
-
**Example Payload:**
|
|
240
|
-
```json
|
|
241
|
-
{
|
|
242
|
-
"event": "vulnerability.found",
|
|
243
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
244
|
-
"data": {
|
|
245
|
-
"feature_id": "feat-123",
|
|
246
|
-
"severity": "high",
|
|
247
|
-
"type": "dependency",
|
|
248
|
-
"package": "lodash",
|
|
249
|
-
"version": "4.17.20",
|
|
250
|
-
"cve": "CVE-2021-23337",
|
|
251
|
-
"description": "Command injection vulnerability",
|
|
252
|
-
"fix_available": true,
|
|
253
|
-
"fixed_version": "4.17.21"
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
---
|
|
259
|
-
|
|
260
|
-
### Approval Events
|
|
261
|
-
|
|
262
|
-
| Event | Description | Trigger |
|
|
263
|
-
|-------|-------------|---------|
|
|
264
|
-
| `approval.requested` | Approval requested | Approval needed |
|
|
265
|
-
| `approval.granted` | Approval granted | Approver approved |
|
|
266
|
-
| `approval.denied` | Approval denied | Approver rejected |
|
|
267
|
-
| `approval.expired` | Approval expired | Timeout |
|
|
268
|
-
| `approval.bypassed` | Emergency bypass | Emergency procedure |
|
|
269
|
-
|
|
270
|
-
**Example Payload:**
|
|
271
|
-
```json
|
|
272
|
-
{
|
|
273
|
-
"event": "approval.granted",
|
|
274
|
-
"timestamp": "2024-01-15T14:30:00Z",
|
|
275
|
-
"data": {
|
|
276
|
-
"feature_id": "feat-123",
|
|
277
|
-
"approval_type": "deployment",
|
|
278
|
-
"environment": "production",
|
|
279
|
-
"approver": "tech-lead",
|
|
280
|
-
"approver_email": "lead@company.com",
|
|
281
|
-
"requested_at": "2024-01-15T14:00:00Z",
|
|
282
|
-
"granted_at": "2024-01-15T14:30:00Z"
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
---
|
|
288
|
-
|
|
289
|
-
## Event Filtering Patterns
|
|
290
|
-
|
|
291
|
-
### Subscribe to Specific Events
|
|
292
|
-
|
|
293
|
-
```yaml
|
|
294
|
-
events: ["feature.completed", "deploy.success"]
|
|
295
|
-
```
|
|
296
|
-
|
|
297
|
-
### Subscribe to Category
|
|
298
|
-
|
|
299
|
-
```yaml
|
|
300
|
-
events: ["feature.*"] # All feature events
|
|
301
|
-
events: ["deploy.*"] # All deployment events
|
|
302
|
-
events: ["security.*"] # All security events
|
|
303
|
-
```
|
|
304
|
-
|
|
305
|
-
### Subscribe to All
|
|
306
|
-
|
|
307
|
-
```yaml
|
|
308
|
-
events: ["*"]
|
|
309
|
-
```
|
|
310
|
-
|
|
311
|
-
### Exclude Events
|
|
312
|
-
|
|
313
|
-
```yaml
|
|
314
|
-
events: ["*"]
|
|
315
|
-
exclude_events: ["phase.started", "phase.completed"]
|
|
316
|
-
```
|