proagents 1.6.16 → 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 +22 -64
- package/bin/proagents.js +0 -2
- package/lib/commands/init.js +4 -174
- 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,366 +0,0 @@
|
|
|
1
|
-
# Disaster Recovery Automation
|
|
2
|
-
|
|
3
|
-
Automated triggers and procedures for system recovery.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Automated Rollback Triggers
|
|
8
|
-
|
|
9
|
-
### Trigger Configuration
|
|
10
|
-
|
|
11
|
-
```yaml
|
|
12
|
-
# proagents.config.yaml
|
|
13
|
-
disaster_recovery:
|
|
14
|
-
automation:
|
|
15
|
-
enabled: true
|
|
16
|
-
|
|
17
|
-
triggers:
|
|
18
|
-
# Error rate trigger
|
|
19
|
-
- name: "high_error_rate"
|
|
20
|
-
condition: "error_rate > 5%"
|
|
21
|
-
window: "5m"
|
|
22
|
-
action: "auto_rollback"
|
|
23
|
-
severity: "critical"
|
|
24
|
-
|
|
25
|
-
# Response time trigger
|
|
26
|
-
- name: "slow_response"
|
|
27
|
-
condition: "p99_latency > 3000ms"
|
|
28
|
-
window: "10m"
|
|
29
|
-
action: "alert_and_prepare"
|
|
30
|
-
severity: "high"
|
|
31
|
-
|
|
32
|
-
# Health check failure
|
|
33
|
-
- name: "health_check_failure"
|
|
34
|
-
condition: "health_check_failures > 3"
|
|
35
|
-
window: "2m"
|
|
36
|
-
action: "auto_rollback"
|
|
37
|
-
severity: "critical"
|
|
38
|
-
|
|
39
|
-
# Memory/CPU threshold
|
|
40
|
-
- name: "resource_exhaustion"
|
|
41
|
-
condition: "memory_usage > 95% OR cpu_usage > 90%"
|
|
42
|
-
window: "5m"
|
|
43
|
-
action: "scale_then_rollback"
|
|
44
|
-
severity: "high"
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### Action Definitions
|
|
48
|
-
|
|
49
|
-
```yaml
|
|
50
|
-
disaster_recovery:
|
|
51
|
-
actions:
|
|
52
|
-
auto_rollback:
|
|
53
|
-
steps:
|
|
54
|
-
- pause_deployments
|
|
55
|
-
- notify_oncall
|
|
56
|
-
- rollback_to_last_stable
|
|
57
|
-
- verify_health
|
|
58
|
-
- resume_deployments
|
|
59
|
-
timeout: "15m"
|
|
60
|
-
|
|
61
|
-
alert_and_prepare:
|
|
62
|
-
steps:
|
|
63
|
-
- notify_oncall
|
|
64
|
-
- prepare_rollback
|
|
65
|
-
- monitor_closely
|
|
66
|
-
timeout: "30m"
|
|
67
|
-
|
|
68
|
-
scale_then_rollback:
|
|
69
|
-
steps:
|
|
70
|
-
- attempt_scale_up
|
|
71
|
-
- wait: "5m"
|
|
72
|
-
- check_if_resolved
|
|
73
|
-
- rollback_if_still_failing
|
|
74
|
-
timeout: "20m"
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## Rollback Automation Scripts
|
|
80
|
-
|
|
81
|
-
### Pre-Deployment Snapshot
|
|
82
|
-
|
|
83
|
-
```yaml
|
|
84
|
-
disaster_recovery:
|
|
85
|
-
pre_deployment:
|
|
86
|
-
# Create automatic snapshots
|
|
87
|
-
snapshots:
|
|
88
|
-
enabled: true
|
|
89
|
-
|
|
90
|
-
# What to snapshot
|
|
91
|
-
targets:
|
|
92
|
-
- type: "database"
|
|
93
|
-
name: "primary-db"
|
|
94
|
-
method: "pg_dump"
|
|
95
|
-
|
|
96
|
-
- type: "configuration"
|
|
97
|
-
paths:
|
|
98
|
-
- "/etc/app/"
|
|
99
|
-
- "./config/"
|
|
100
|
-
|
|
101
|
-
- type: "container_image"
|
|
102
|
-
registry: "${REGISTRY_URL}"
|
|
103
|
-
|
|
104
|
-
# Retention
|
|
105
|
-
retention:
|
|
106
|
-
count: 5
|
|
107
|
-
duration: "7d"
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
### Automated Rollback Script
|
|
111
|
-
|
|
112
|
-
```yaml
|
|
113
|
-
disaster_recovery:
|
|
114
|
-
rollback:
|
|
115
|
-
# Automatic rollback procedure
|
|
116
|
-
procedure:
|
|
117
|
-
- step: "identify_stable_version"
|
|
118
|
-
action: |
|
|
119
|
-
# Find last known good deployment
|
|
120
|
-
STABLE_VERSION=$(git tag --list 'v*-stable' | tail -1)
|
|
121
|
-
|
|
122
|
-
- step: "notify_team"
|
|
123
|
-
action: |
|
|
124
|
-
# Send alerts
|
|
125
|
-
proagents notify --channel slack --message "Initiating rollback to ${STABLE_VERSION}"
|
|
126
|
-
|
|
127
|
-
- step: "pause_traffic"
|
|
128
|
-
action: |
|
|
129
|
-
# Drain connections
|
|
130
|
-
kubectl scale deployment/app --replicas=0
|
|
131
|
-
|
|
132
|
-
- step: "restore_database"
|
|
133
|
-
condition: "if database_changed"
|
|
134
|
-
action: |
|
|
135
|
-
# Restore from snapshot
|
|
136
|
-
pg_restore --clean --dbname=${DATABASE_URL} ${SNAPSHOT_PATH}
|
|
137
|
-
|
|
138
|
-
- step: "deploy_previous_version"
|
|
139
|
-
action: |
|
|
140
|
-
# Deploy stable version
|
|
141
|
-
kubectl set image deployment/app app=${REGISTRY}:${STABLE_VERSION}
|
|
142
|
-
kubectl rollout status deployment/app
|
|
143
|
-
|
|
144
|
-
- step: "verify_health"
|
|
145
|
-
action: |
|
|
146
|
-
# Run health checks
|
|
147
|
-
proagents health check --retries 5 --interval 10s
|
|
148
|
-
|
|
149
|
-
- step: "restore_traffic"
|
|
150
|
-
action: |
|
|
151
|
-
# Resume traffic
|
|
152
|
-
kubectl scale deployment/app --replicas=${NORMAL_REPLICAS}
|
|
153
|
-
|
|
154
|
-
- step: "post_rollback_notification"
|
|
155
|
-
action: |
|
|
156
|
-
# Notify completion
|
|
157
|
-
proagents notify --channel all --message "Rollback complete"
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
---
|
|
161
|
-
|
|
162
|
-
## Health Monitoring Integration
|
|
163
|
-
|
|
164
|
-
### Health Check Configuration
|
|
165
|
-
|
|
166
|
-
```yaml
|
|
167
|
-
disaster_recovery:
|
|
168
|
-
health_monitoring:
|
|
169
|
-
# Endpoints to check
|
|
170
|
-
endpoints:
|
|
171
|
-
- url: "/health"
|
|
172
|
-
method: "GET"
|
|
173
|
-
expected_status: 200
|
|
174
|
-
timeout: "5s"
|
|
175
|
-
interval: "30s"
|
|
176
|
-
|
|
177
|
-
- url: "/health/db"
|
|
178
|
-
method: "GET"
|
|
179
|
-
expected_status: 200
|
|
180
|
-
timeout: "10s"
|
|
181
|
-
interval: "60s"
|
|
182
|
-
|
|
183
|
-
- url: "/health/redis"
|
|
184
|
-
method: "GET"
|
|
185
|
-
expected_status: 200
|
|
186
|
-
timeout: "5s"
|
|
187
|
-
interval: "30s"
|
|
188
|
-
|
|
189
|
-
# Failure thresholds
|
|
190
|
-
thresholds:
|
|
191
|
-
consecutive_failures: 3
|
|
192
|
-
failure_window: "5m"
|
|
193
|
-
recovery_threshold: 5 # Consecutive successes to mark healthy
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
### Metric-Based Triggers
|
|
197
|
-
|
|
198
|
-
```yaml
|
|
199
|
-
disaster_recovery:
|
|
200
|
-
metrics:
|
|
201
|
-
sources:
|
|
202
|
-
- name: "prometheus"
|
|
203
|
-
url: "${PROMETHEUS_URL}"
|
|
204
|
-
|
|
205
|
-
- name: "datadog"
|
|
206
|
-
api_key_env: "DD_API_KEY"
|
|
207
|
-
|
|
208
|
-
# Metric conditions
|
|
209
|
-
conditions:
|
|
210
|
-
- metric: "http_request_duration_seconds_p99"
|
|
211
|
-
threshold: 3
|
|
212
|
-
comparison: ">"
|
|
213
|
-
action: "alert"
|
|
214
|
-
|
|
215
|
-
- metric: "http_requests_total{status=~'5..'}"
|
|
216
|
-
threshold: 100
|
|
217
|
-
window: "5m"
|
|
218
|
-
comparison: ">"
|
|
219
|
-
action: "rollback"
|
|
220
|
-
|
|
221
|
-
- metric: "up"
|
|
222
|
-
threshold: 0
|
|
223
|
-
comparison: "=="
|
|
224
|
-
action: "immediate_rollback"
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
---
|
|
228
|
-
|
|
229
|
-
## Notification Automation
|
|
230
|
-
|
|
231
|
-
### Alert Routing
|
|
232
|
-
|
|
233
|
-
```yaml
|
|
234
|
-
disaster_recovery:
|
|
235
|
-
notifications:
|
|
236
|
-
routing:
|
|
237
|
-
critical:
|
|
238
|
-
channels:
|
|
239
|
-
- slack: "#incidents"
|
|
240
|
-
- pagerduty: "primary-oncall"
|
|
241
|
-
- email: "oncall@company.com"
|
|
242
|
-
escalation_after: "5m"
|
|
243
|
-
|
|
244
|
-
high:
|
|
245
|
-
channels:
|
|
246
|
-
- slack: "#alerts"
|
|
247
|
-
- email: "engineering@company.com"
|
|
248
|
-
escalation_after: "15m"
|
|
249
|
-
|
|
250
|
-
medium:
|
|
251
|
-
channels:
|
|
252
|
-
- slack: "#monitoring"
|
|
253
|
-
escalation_after: "30m"
|
|
254
|
-
|
|
255
|
-
# Escalation chain
|
|
256
|
-
escalation:
|
|
257
|
-
- level: 1
|
|
258
|
-
target: "primary-oncall"
|
|
259
|
-
timeout: "5m"
|
|
260
|
-
|
|
261
|
-
- level: 2
|
|
262
|
-
target: "secondary-oncall"
|
|
263
|
-
timeout: "10m"
|
|
264
|
-
|
|
265
|
-
- level: 3
|
|
266
|
-
target: "engineering-manager"
|
|
267
|
-
timeout: "15m"
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
### Incident Templates
|
|
271
|
-
|
|
272
|
-
```yaml
|
|
273
|
-
disaster_recovery:
|
|
274
|
-
notifications:
|
|
275
|
-
templates:
|
|
276
|
-
rollback_initiated:
|
|
277
|
-
title: "Automated Rollback Initiated"
|
|
278
|
-
body: |
|
|
279
|
-
**Trigger:** {{trigger_name}}
|
|
280
|
-
**Condition:** {{trigger_condition}}
|
|
281
|
-
**Current Version:** {{current_version}}
|
|
282
|
-
**Rolling back to:** {{target_version}}
|
|
283
|
-
**Status:** In Progress
|
|
284
|
-
|
|
285
|
-
rollback_complete:
|
|
286
|
-
title: "Rollback Complete"
|
|
287
|
-
body: |
|
|
288
|
-
**Duration:** {{duration}}
|
|
289
|
-
**Final Version:** {{deployed_version}}
|
|
290
|
-
**Health Status:** {{health_status}}
|
|
291
|
-
|
|
292
|
-
rollback_failed:
|
|
293
|
-
title: "Rollback FAILED - Manual Intervention Required"
|
|
294
|
-
body: |
|
|
295
|
-
**Error:** {{error_message}}
|
|
296
|
-
**Last Successful Step:** {{last_step}}
|
|
297
|
-
**Recommended Action:** {{recommended_action}}
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
---
|
|
301
|
-
|
|
302
|
-
## Recovery Verification
|
|
303
|
-
|
|
304
|
-
### Post-Rollback Checks
|
|
305
|
-
|
|
306
|
-
```yaml
|
|
307
|
-
disaster_recovery:
|
|
308
|
-
verification:
|
|
309
|
-
# Automated checks after rollback
|
|
310
|
-
checks:
|
|
311
|
-
- name: "api_health"
|
|
312
|
-
command: "curl -f ${API_URL}/health"
|
|
313
|
-
retries: 5
|
|
314
|
-
interval: "10s"
|
|
315
|
-
|
|
316
|
-
- name: "database_connectivity"
|
|
317
|
-
command: "pg_isready -h ${DB_HOST}"
|
|
318
|
-
retries: 3
|
|
319
|
-
interval: "5s"
|
|
320
|
-
|
|
321
|
-
- name: "critical_paths"
|
|
322
|
-
command: "proagents test smoke --env production"
|
|
323
|
-
timeout: "5m"
|
|
324
|
-
|
|
325
|
-
- name: "error_rate_normalized"
|
|
326
|
-
metric: "error_rate < 1%"
|
|
327
|
-
wait: "5m"
|
|
328
|
-
|
|
329
|
-
# On verification failure
|
|
330
|
-
on_failure:
|
|
331
|
-
- notify: "critical"
|
|
332
|
-
- create_incident: true
|
|
333
|
-
- escalate_immediately: true
|
|
334
|
-
```
|
|
335
|
-
|
|
336
|
-
---
|
|
337
|
-
|
|
338
|
-
## Commands
|
|
339
|
-
|
|
340
|
-
```bash
|
|
341
|
-
# Test rollback automation
|
|
342
|
-
proagents dr test-rollback --dry-run
|
|
343
|
-
|
|
344
|
-
# Trigger manual rollback
|
|
345
|
-
proagents dr rollback --version v1.2.3
|
|
346
|
-
|
|
347
|
-
# View rollback history
|
|
348
|
-
proagents dr history --last 10
|
|
349
|
-
|
|
350
|
-
# Check current health triggers
|
|
351
|
-
proagents dr triggers status
|
|
352
|
-
|
|
353
|
-
# Disable automation temporarily
|
|
354
|
-
proagents dr automation disable --duration 1h --reason "Planned maintenance"
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
---
|
|
358
|
-
|
|
359
|
-
## Best Practices
|
|
360
|
-
|
|
361
|
-
1. **Test Regularly**: Run rollback drills monthly
|
|
362
|
-
2. **Fast Detection**: Set aggressive monitoring thresholds
|
|
363
|
-
3. **Clear Runbooks**: Document manual steps for automation failures
|
|
364
|
-
4. **Notification Fatigue**: Tune alerts to reduce false positives
|
|
365
|
-
5. **Post-Mortems**: Review every automated rollback
|
|
366
|
-
6. **Version Everything**: Ensure all components are version-controlled
|