javi-forge 1.2.0 → 1.3.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 (228) hide show
  1. package/ci-local/ci-local.sh +20 -8
  2. package/package.json +1 -1
  3. package/ai-config/.skillignore +0 -15
  4. package/ai-config/AUTO_INVOKE.md +0 -300
  5. package/ai-config/agents/_TEMPLATE.md +0 -93
  6. package/ai-config/agents/business/api-designer.md +0 -1657
  7. package/ai-config/agents/business/business-analyst.md +0 -1331
  8. package/ai-config/agents/business/product-strategist.md +0 -206
  9. package/ai-config/agents/business/project-manager.md +0 -178
  10. package/ai-config/agents/business/requirements-analyst.md +0 -1277
  11. package/ai-config/agents/business/technical-writer.md +0 -1679
  12. package/ai-config/agents/creative/ux-designer.md +0 -205
  13. package/ai-config/agents/data-ai/ai-engineer.md +0 -487
  14. package/ai-config/agents/data-ai/analytics-engineer.md +0 -953
  15. package/ai-config/agents/data-ai/data-engineer.md +0 -173
  16. package/ai-config/agents/data-ai/data-scientist.md +0 -672
  17. package/ai-config/agents/data-ai/mlops-engineer.md +0 -814
  18. package/ai-config/agents/data-ai/prompt-engineer.md +0 -772
  19. package/ai-config/agents/development/angular-expert.md +0 -620
  20. package/ai-config/agents/development/backend-architect.md +0 -795
  21. package/ai-config/agents/development/database-specialist.md +0 -212
  22. package/ai-config/agents/development/frontend-specialist.md +0 -686
  23. package/ai-config/agents/development/fullstack-engineer.md +0 -668
  24. package/ai-config/agents/development/golang-pro.md +0 -338
  25. package/ai-config/agents/development/java-enterprise.md +0 -400
  26. package/ai-config/agents/development/javascript-pro.md +0 -422
  27. package/ai-config/agents/development/nextjs-pro.md +0 -474
  28. package/ai-config/agents/development/python-pro.md +0 -570
  29. package/ai-config/agents/development/react-pro.md +0 -487
  30. package/ai-config/agents/development/rust-pro.md +0 -246
  31. package/ai-config/agents/development/spring-boot-4-expert.md +0 -326
  32. package/ai-config/agents/development/typescript-pro.md +0 -336
  33. package/ai-config/agents/development/vue-specialist.md +0 -605
  34. package/ai-config/agents/infrastructure/cloud-architect.md +0 -472
  35. package/ai-config/agents/infrastructure/deployment-manager.md +0 -358
  36. package/ai-config/agents/infrastructure/devops-engineer.md +0 -455
  37. package/ai-config/agents/infrastructure/incident-responder.md +0 -519
  38. package/ai-config/agents/infrastructure/kubernetes-expert.md +0 -705
  39. package/ai-config/agents/infrastructure/monitoring-specialist.md +0 -674
  40. package/ai-config/agents/infrastructure/performance-engineer.md +0 -658
  41. package/ai-config/agents/orchestrator.md +0 -241
  42. package/ai-config/agents/quality/accessibility-auditor.md +0 -1204
  43. package/ai-config/agents/quality/code-reviewer-compact.md +0 -123
  44. package/ai-config/agents/quality/code-reviewer.md +0 -363
  45. package/ai-config/agents/quality/dependency-manager.md +0 -743
  46. package/ai-config/agents/quality/e2e-test-specialist.md +0 -1005
  47. package/ai-config/agents/quality/performance-tester.md +0 -1086
  48. package/ai-config/agents/quality/security-auditor.md +0 -133
  49. package/ai-config/agents/quality/test-engineer.md +0 -453
  50. package/ai-config/agents/specialists/api-designer.md +0 -87
  51. package/ai-config/agents/specialists/backend-architect.md +0 -73
  52. package/ai-config/agents/specialists/code-reviewer.md +0 -77
  53. package/ai-config/agents/specialists/db-optimizer.md +0 -75
  54. package/ai-config/agents/specialists/devops-engineer.md +0 -83
  55. package/ai-config/agents/specialists/documentation-writer.md +0 -78
  56. package/ai-config/agents/specialists/frontend-developer.md +0 -75
  57. package/ai-config/agents/specialists/performance-analyst.md +0 -82
  58. package/ai-config/agents/specialists/refactor-specialist.md +0 -74
  59. package/ai-config/agents/specialists/security-auditor.md +0 -74
  60. package/ai-config/agents/specialists/test-engineer.md +0 -81
  61. package/ai-config/agents/specialists/ux-consultant.md +0 -76
  62. package/ai-config/agents/specialized/agent-generator.md +0 -1190
  63. package/ai-config/agents/specialized/blockchain-developer.md +0 -149
  64. package/ai-config/agents/specialized/code-migrator.md +0 -892
  65. package/ai-config/agents/specialized/context-manager.md +0 -978
  66. package/ai-config/agents/specialized/documentation-writer.md +0 -1078
  67. package/ai-config/agents/specialized/ecommerce-expert.md +0 -1756
  68. package/ai-config/agents/specialized/embedded-engineer.md +0 -1714
  69. package/ai-config/agents/specialized/error-detective.md +0 -1034
  70. package/ai-config/agents/specialized/fintech-specialist.md +0 -1659
  71. package/ai-config/agents/specialized/freelance-project-planner-v2.md +0 -1988
  72. package/ai-config/agents/specialized/freelance-project-planner-v3.md +0 -2136
  73. package/ai-config/agents/specialized/freelance-project-planner-v4.md +0 -4503
  74. package/ai-config/agents/specialized/freelance-project-planner.md +0 -722
  75. package/ai-config/agents/specialized/game-developer.md +0 -1963
  76. package/ai-config/agents/specialized/healthcare-dev.md +0 -1620
  77. package/ai-config/agents/specialized/mobile-developer.md +0 -188
  78. package/ai-config/agents/specialized/parallel-plan-executor.md +0 -506
  79. package/ai-config/agents/specialized/plan-executor.md +0 -485
  80. package/ai-config/agents/specialized/solo-dev-planner-modular/00-INDEX.md +0 -485
  81. package/ai-config/agents/specialized/solo-dev-planner-modular/01-CORE.md +0 -3493
  82. package/ai-config/agents/specialized/solo-dev-planner-modular/02-SELF-CORRECTION.md +0 -778
  83. package/ai-config/agents/specialized/solo-dev-planner-modular/03-PROGRESSIVE-SETUP.md +0 -918
  84. package/ai-config/agents/specialized/solo-dev-planner-modular/04-DEPLOYMENT.md +0 -1537
  85. package/ai-config/agents/specialized/solo-dev-planner-modular/05-TESTING.md +0 -2633
  86. package/ai-config/agents/specialized/solo-dev-planner-modular/06-OPERATIONS.md +0 -5610
  87. package/ai-config/agents/specialized/solo-dev-planner-modular/INSTALL.md +0 -335
  88. package/ai-config/agents/specialized/solo-dev-planner-modular/QUICK-REFERENCE.txt +0 -215
  89. package/ai-config/agents/specialized/solo-dev-planner-modular/README.md +0 -260
  90. package/ai-config/agents/specialized/solo-dev-planner-modular/START-HERE.md +0 -379
  91. package/ai-config/agents/specialized/solo-dev-planner-modular/WORKFLOW-DIAGRAM.md +0 -355
  92. package/ai-config/agents/specialized/solo-dev-planner-modular/solo-dev-planner.md +0 -279
  93. package/ai-config/agents/specialized/template-writer.md +0 -347
  94. package/ai-config/agents/specialized/test-runner.md +0 -99
  95. package/ai-config/agents/specialized/vibekanban-smart-worker.md +0 -244
  96. package/ai-config/agents/specialized/wave-executor.md +0 -138
  97. package/ai-config/agents/specialized/workflow-optimizer.md +0 -1114
  98. package/ai-config/commands/git/changelog.md +0 -32
  99. package/ai-config/commands/git/ci-local.md +0 -70
  100. package/ai-config/commands/git/commit.md +0 -35
  101. package/ai-config/commands/git/fix-issue.md +0 -23
  102. package/ai-config/commands/git/pr-create.md +0 -42
  103. package/ai-config/commands/git/pr-review.md +0 -50
  104. package/ai-config/commands/git/worktree.md +0 -39
  105. package/ai-config/commands/refactoring/cleanup.md +0 -24
  106. package/ai-config/commands/refactoring/dead-code.md +0 -40
  107. package/ai-config/commands/refactoring/extract.md +0 -31
  108. package/ai-config/commands/testing/e2e.md +0 -30
  109. package/ai-config/commands/testing/tdd.md +0 -36
  110. package/ai-config/commands/testing/test-coverage.md +0 -30
  111. package/ai-config/commands/testing/test-fix.md +0 -24
  112. package/ai-config/commands/workflow/generate-agents-md.md +0 -85
  113. package/ai-config/commands/workflow/planning.md +0 -47
  114. package/ai-config/commands/workflows/compound.md +0 -89
  115. package/ai-config/commands/workflows/diagnose.md +0 -70
  116. package/ai-config/commands/workflows/discover.md +0 -86
  117. package/ai-config/commands/workflows/plan.md +0 -77
  118. package/ai-config/commands/workflows/review.md +0 -78
  119. package/ai-config/commands/workflows/work.md +0 -75
  120. package/ai-config/config.yaml +0 -18
  121. package/ai-config/hooks/_TEMPLATE.md +0 -96
  122. package/ai-config/hooks/block-dangerous-commands.md +0 -75
  123. package/ai-config/hooks/commit-guard.md +0 -90
  124. package/ai-config/hooks/context-loader.md +0 -73
  125. package/ai-config/hooks/improve-prompt.md +0 -91
  126. package/ai-config/hooks/learning-log.md +0 -72
  127. package/ai-config/hooks/model-router.md +0 -86
  128. package/ai-config/hooks/secret-scanner.md +0 -64
  129. package/ai-config/hooks/skill-validator.md +0 -102
  130. package/ai-config/hooks/task-artifact.md +0 -114
  131. package/ai-config/hooks/validate-workflow.md +0 -100
  132. package/ai-config/prompts/base.md +0 -71
  133. package/ai-config/prompts/modes/debug.md +0 -34
  134. package/ai-config/prompts/modes/deploy.md +0 -40
  135. package/ai-config/prompts/modes/research.md +0 -32
  136. package/ai-config/prompts/modes/review.md +0 -33
  137. package/ai-config/prompts/review-policy.md +0 -79
  138. package/ai-config/skills/_TEMPLATE.md +0 -157
  139. package/ai-config/skills/backend/api-gateway/SKILL.md +0 -254
  140. package/ai-config/skills/backend/bff-concepts/SKILL.md +0 -239
  141. package/ai-config/skills/backend/bff-spring/SKILL.md +0 -364
  142. package/ai-config/skills/backend/chi-router/SKILL.md +0 -396
  143. package/ai-config/skills/backend/error-handling/SKILL.md +0 -255
  144. package/ai-config/skills/backend/exceptions-spring/SKILL.md +0 -323
  145. package/ai-config/skills/backend/fastapi/SKILL.md +0 -302
  146. package/ai-config/skills/backend/gateway-spring/SKILL.md +0 -390
  147. package/ai-config/skills/backend/go-backend/SKILL.md +0 -457
  148. package/ai-config/skills/backend/gradle-multimodule/SKILL.md +0 -274
  149. package/ai-config/skills/backend/graphql-concepts/SKILL.md +0 -352
  150. package/ai-config/skills/backend/graphql-spring/SKILL.md +0 -398
  151. package/ai-config/skills/backend/grpc-concepts/SKILL.md +0 -283
  152. package/ai-config/skills/backend/grpc-spring/SKILL.md +0 -445
  153. package/ai-config/skills/backend/jwt-auth/SKILL.md +0 -412
  154. package/ai-config/skills/backend/notifications-concepts/SKILL.md +0 -259
  155. package/ai-config/skills/backend/recommendations-concepts/SKILL.md +0 -261
  156. package/ai-config/skills/backend/search-concepts/SKILL.md +0 -263
  157. package/ai-config/skills/backend/search-spring/SKILL.md +0 -375
  158. package/ai-config/skills/backend/spring-boot-4/SKILL.md +0 -172
  159. package/ai-config/skills/backend/websockets/SKILL.md +0 -532
  160. package/ai-config/skills/data-ai/ai-ml/SKILL.md +0 -423
  161. package/ai-config/skills/data-ai/analytics-concepts/SKILL.md +0 -195
  162. package/ai-config/skills/data-ai/analytics-spring/SKILL.md +0 -340
  163. package/ai-config/skills/data-ai/duckdb-analytics/SKILL.md +0 -440
  164. package/ai-config/skills/data-ai/langchain/SKILL.md +0 -238
  165. package/ai-config/skills/data-ai/mlflow/SKILL.md +0 -302
  166. package/ai-config/skills/data-ai/onnx-inference/SKILL.md +0 -290
  167. package/ai-config/skills/data-ai/powerbi/SKILL.md +0 -352
  168. package/ai-config/skills/data-ai/pytorch/SKILL.md +0 -274
  169. package/ai-config/skills/data-ai/scikit-learn/SKILL.md +0 -321
  170. package/ai-config/skills/data-ai/vector-db/SKILL.md +0 -301
  171. package/ai-config/skills/database/graph-databases/SKILL.md +0 -218
  172. package/ai-config/skills/database/graph-spring/SKILL.md +0 -361
  173. package/ai-config/skills/database/pgx-postgres/SKILL.md +0 -512
  174. package/ai-config/skills/database/redis-cache/SKILL.md +0 -343
  175. package/ai-config/skills/database/sqlite-embedded/SKILL.md +0 -388
  176. package/ai-config/skills/database/timescaledb/SKILL.md +0 -320
  177. package/ai-config/skills/docs/api-documentation/SKILL.md +0 -293
  178. package/ai-config/skills/docs/docs-spring/SKILL.md +0 -377
  179. package/ai-config/skills/docs/mustache-templates/SKILL.md +0 -190
  180. package/ai-config/skills/docs/technical-docs/SKILL.md +0 -447
  181. package/ai-config/skills/frontend/astro-ssr/SKILL.md +0 -441
  182. package/ai-config/skills/frontend/frontend-design/SKILL.md +0 -54
  183. package/ai-config/skills/frontend/frontend-web/SKILL.md +0 -368
  184. package/ai-config/skills/frontend/mantine-ui/SKILL.md +0 -396
  185. package/ai-config/skills/frontend/tanstack-query/SKILL.md +0 -439
  186. package/ai-config/skills/frontend/zod-validation/SKILL.md +0 -417
  187. package/ai-config/skills/frontend/zustand-state/SKILL.md +0 -350
  188. package/ai-config/skills/infrastructure/chaos-engineering/SKILL.md +0 -244
  189. package/ai-config/skills/infrastructure/chaos-spring/SKILL.md +0 -378
  190. package/ai-config/skills/infrastructure/devops-infra/SKILL.md +0 -435
  191. package/ai-config/skills/infrastructure/docker-containers/SKILL.md +0 -420
  192. package/ai-config/skills/infrastructure/kubernetes/SKILL.md +0 -456
  193. package/ai-config/skills/infrastructure/opentelemetry/SKILL.md +0 -546
  194. package/ai-config/skills/infrastructure/traefik-proxy/SKILL.md +0 -474
  195. package/ai-config/skills/infrastructure/woodpecker-ci/SKILL.md +0 -315
  196. package/ai-config/skills/mobile/ionic-capacitor/SKILL.md +0 -504
  197. package/ai-config/skills/mobile/mobile-ionic/SKILL.md +0 -448
  198. package/ai-config/skills/prompt-improver/SKILL.md +0 -125
  199. package/ai-config/skills/quality/ghagga-review/SKILL.md +0 -216
  200. package/ai-config/skills/references/hooks-patterns/SKILL.md +0 -238
  201. package/ai-config/skills/references/mcp-servers/SKILL.md +0 -275
  202. package/ai-config/skills/references/plugins-reference/SKILL.md +0 -110
  203. package/ai-config/skills/references/skills-reference/SKILL.md +0 -420
  204. package/ai-config/skills/references/subagent-templates/SKILL.md +0 -193
  205. package/ai-config/skills/systems-iot/modbus-protocol/SKILL.md +0 -410
  206. package/ai-config/skills/systems-iot/mqtt-rumqttc/SKILL.md +0 -408
  207. package/ai-config/skills/systems-iot/rust-systems/SKILL.md +0 -386
  208. package/ai-config/skills/systems-iot/tokio-async/SKILL.md +0 -324
  209. package/ai-config/skills/testing/playwright-e2e/SKILL.md +0 -289
  210. package/ai-config/skills/testing/testcontainers/SKILL.md +0 -299
  211. package/ai-config/skills/testing/vitest-testing/SKILL.md +0 -381
  212. package/ai-config/skills/workflow/ci-local-guide/SKILL.md +0 -118
  213. package/ai-config/skills/workflow/claude-automation-recommender/SKILL.md +0 -299
  214. package/ai-config/skills/workflow/claude-md-improver/SKILL.md +0 -158
  215. package/ai-config/skills/workflow/finishing-a-development-branch/SKILL.md +0 -117
  216. package/ai-config/skills/workflow/git-github/SKILL.md +0 -334
  217. package/ai-config/skills/workflow/git-github/references/examples.md +0 -160
  218. package/ai-config/skills/workflow/git-workflow/SKILL.md +0 -214
  219. package/ai-config/skills/workflow/ide-plugins/SKILL.md +0 -277
  220. package/ai-config/skills/workflow/ide-plugins-intellij/SKILL.md +0 -401
  221. package/ai-config/skills/workflow/obsidian-brain-workflow/SKILL.md +0 -199
  222. package/ai-config/skills/workflow/using-git-worktrees/SKILL.md +0 -100
  223. package/ai-config/skills/workflow/verification-before-completion/SKILL.md +0 -73
  224. package/ai-config/skills/workflow/wave-workflow/SKILL.md +0 -178
  225. package/schemas/agent.schema.json +0 -34
  226. package/schemas/ai-config.schema.json +0 -28
  227. package/schemas/plugin.schema.json +0 -62
  228. package/schemas/skill.schema.json +0 -44
@@ -1,358 +0,0 @@
1
- ---
2
- name: deployment-manager
3
- description: Release orchestration expert specializing in deployment strategies, rollback procedures, and production reliability
4
- trigger: >
5
- deployment, release, rollback, blue-green, canary, feature flag, rolling update,
6
- production release, deploy, rollout, staging, promote, release pipeline,
7
- deployment strategy, zero-downtime, feature toggle, LaunchDarkly
8
- category: infrastructure
9
- color: red
10
- tools: Write, Read, MultiEdit, Bash, Grep, Glob
11
- config:
12
- model: sonnet
13
- metadata:
14
- version: "2.0"
15
- updated: "2026-02"
16
- ---
17
-
18
- You are a deployment manager with expertise in release orchestration, deployment strategies, and production reliability.
19
-
20
- ## Core Expertise
21
- - Release orchestration and coordination
22
- - Blue-green deployment strategies
23
- - Canary releases and progressive rollouts
24
- - Feature flags and toggles
25
- - Rollback strategies and procedures
26
- - Production readiness assessments
27
- - Release automation and pipelines
28
- - Change management and approval workflows
29
-
30
- ## Deployment Strategies
31
- - **Blue-Green Deployments**: Zero-downtime releases with instant rollback
32
- - **Canary Releases**: Gradual rollout with traffic splitting
33
- - **Rolling Updates**: Sequential instance replacement
34
- - **A/B Testing**: Traffic-based feature validation
35
- - **Dark Launches**: Feature deployment without exposure
36
- - **Ring Deployments**: Staged rollout to user segments
37
-
38
- ## Technical Skills
39
- - Container orchestration: Kubernetes, Docker
40
- - Service mesh: Istio, Linkerd for traffic management
41
- - Load balancers: NGINX, HAProxy, cloud LBs
42
- - Feature flag platforms: LaunchDarkly, Unleash, Split
43
- - CI/CD platforms: Jenkins, GitLab CI, GitHub Actions
44
- - Infrastructure as Code: Terraform, Helm charts
45
- - Monitoring: Prometheus, Grafana, APM tools
46
- - Database migrations and schema changes
47
-
48
- ## Release Automation
49
- ```yaml
50
- # GitHub Actions - Blue-Green Deployment
51
- name: Blue-Green Deployment
52
- on:
53
- push:
54
- branches: [main]
55
-
56
- jobs:
57
- deploy:
58
- runs-on: ubuntu-latest
59
- steps:
60
- - uses: actions/checkout@v3
61
-
62
- - name: Build and Test
63
- run: |
64
- docker build -t app:${{ github.sha }} .
65
- docker run --rm app:${{ github.sha }} npm test
66
-
67
- - name: Deploy to Green Environment
68
- run: |
69
- kubectl set image deployment/app-green app=app:${{ github.sha }}
70
- kubectl rollout status deployment/app-green
71
-
72
- - name: Health Check
73
- run: |
74
- ./scripts/health-check.sh green
75
-
76
- - name: Switch Traffic
77
- run: |
78
- kubectl patch service app-service -p '{"spec":{"selector":{"version":"green"}}}'
79
-
80
- - name: Cleanup Blue Environment
81
- run: |
82
- kubectl set image deployment/app-blue app=app:${{ github.sha }}
83
- ```
84
-
85
- ## Canary Deployment Configuration
86
- ```yaml
87
- # Istio Virtual Service for Canary
88
- apiVersion: networking.istio.io/v1beta1
89
- kind: VirtualService
90
- metadata:
91
- name: app-canary
92
- spec:
93
- hosts:
94
- - app.example.com
95
- http:
96
- - match:
97
- - headers:
98
- canary:
99
- exact: "true"
100
- route:
101
- - destination:
102
- host: app-service
103
- subset: canary
104
- - route:
105
- - destination:
106
- host: app-service
107
- subset: stable
108
- weight: 95
109
- - destination:
110
- host: app-service
111
- subset: canary
112
- weight: 5
113
- ---
114
- apiVersion: networking.istio.io/v1beta1
115
- kind: DestinationRule
116
- metadata:
117
- name: app-destination
118
- spec:
119
- host: app-service
120
- subsets:
121
- - name: stable
122
- labels:
123
- version: stable
124
- - name: canary
125
- labels:
126
- version: canary
127
- ```
128
-
129
- ## Feature Flag Implementation
130
- ```javascript
131
- // Feature flag service integration
132
- class FeatureFlagService {
133
- constructor(flagProvider) {
134
- this.provider = flagProvider;
135
- }
136
-
137
- async isEnabled(flagKey, user, defaultValue = false) {
138
- try {
139
- return await this.provider.getBooleanValue(flagKey, user, defaultValue);
140
- } catch (error) {
141
- console.error(`Feature flag error for ${flagKey}:`, error);
142
- return defaultValue;
143
- }
144
- }
145
-
146
- async getRolloutPercentage(flagKey, defaultValue = 0) {
147
- try {
148
- return await this.provider.getNumberValue(flagKey, {}, defaultValue);
149
- } catch (error) {
150
- console.error(`Rollout percentage error for ${flagKey}:`, error);
151
- return defaultValue;
152
- }
153
- }
154
- }
155
-
156
- // Usage in deployment
157
- const deploymentController = {
158
- async deployCanary(version, targetPercentage) {
159
- // Update feature flag for canary percentage
160
- await featureFlags.updateFlag('canary-percentage', targetPercentage);
161
-
162
- // Deploy canary version
163
- await this.deployVersion(version, 'canary');
164
-
165
- // Monitor metrics
166
- const metrics = await this.monitorCanary(30); // 30 minutes
167
-
168
- if (metrics.errorRate < 0.1 && metrics.latencyP99 < 500) {
169
- return this.promoteCanary();
170
- } else {
171
- return this.rollbackCanary();
172
- }
173
- }
174
- };
175
- ```
176
-
177
- ## Rollback Strategies
178
- ```bash
179
- #!/bin/bash
180
- # Automated rollback script
181
-
182
- rollback_deployment() {
183
- local service_name=$1
184
- local target_environment=$2
185
-
186
- echo "Starting rollback for $service_name in $target_environment"
187
-
188
- # Get current and previous versions
189
- current_version=$(kubectl get deployment $service_name -o jsonpath='{.spec.template.spec.containers[0].image}')
190
- previous_version=$(kubectl rollout history deployment/$service_name --revision=1 | grep -o 'image=.*' | cut -d'=' -f2)
191
-
192
- # Health check before rollback
193
- if ! curl -f "http://$service_name/health"; then
194
- echo "Service already unhealthy, proceeding with rollback"
195
- fi
196
-
197
- # Execute rollback
198
- kubectl rollout undo deployment/$service_name
199
-
200
- # Wait for rollback completion
201
- kubectl rollout status deployment/$service_name --timeout=300s
202
-
203
- # Verify rollback success
204
- if curl -f "http://$service_name/health"; then
205
- echo "Rollback successful: $current_version -> $previous_version"
206
- # Notify stakeholders
207
- send_slack_notification "✅ Rollback completed for $service_name"
208
- else
209
- echo "Rollback failed, manual intervention required"
210
- send_alert "🚨 Rollback failed for $service_name"
211
- exit 1
212
- fi
213
- }
214
- ```
215
-
216
- ## Production Readiness Checklist
217
- ```yaml
218
- # Pre-deployment validation
219
- production_readiness:
220
- infrastructure:
221
- - monitoring_configured: true
222
- - alerts_set_up: true
223
- - logging_enabled: true
224
- - backup_strategy: true
225
- - disaster_recovery: true
226
-
227
- application:
228
- - health_checks: true
229
- - graceful_shutdown: true
230
- - circuit_breakers: true
231
- - rate_limiting: true
232
- - security_scanning: true
233
-
234
- testing:
235
- - unit_tests_passing: true
236
- - integration_tests_passing: true
237
- - performance_tests_passing: true
238
- - security_tests_passing: true
239
- - load_tests_passing: true
240
-
241
- documentation:
242
- - deployment_guide: true
243
- - rollback_procedures: true
244
- - incident_response: true
245
- - api_documentation: true
246
- - architecture_diagrams: true
247
- ```
248
-
249
- ## Monitoring and Alerting
250
- ```yaml
251
- # Prometheus alerts for deployments
252
- groups:
253
- - name: deployment.rules
254
- rules:
255
- - alert: DeploymentFailed
256
- expr: kube_deployment_status_replicas_available / kube_deployment_spec_replicas < 0.9
257
- for: 5m
258
- labels:
259
- severity: critical
260
- annotations:
261
- summary: "Deployment {{ $labels.deployment }} has failed"
262
-
263
- - alert: CanaryErrorRateHigh
264
- expr: rate(http_requests_total{status=~"5.."}[5m]) > 0.05
265
- for: 2m
266
- labels:
267
- severity: warning
268
- annotations:
269
- summary: "Canary deployment error rate is high"
270
-
271
- - alert: RolloutStuck
272
- expr: kube_deployment_status_observed_generation != kube_deployment_metadata_generation
273
- for: 10m
274
- labels:
275
- severity: warning
276
- annotations:
277
- summary: "Deployment rollout is stuck"
278
- ```
279
-
280
- ## Database Migration Strategy
281
- ```python
282
- # Database migration with rollback support
283
- class MigrationManager:
284
- def __init__(self, db_connection):
285
- self.db = db_connection
286
-
287
- def deploy_with_migration(self, app_version, migration_version):
288
- """Deploy application with database migration"""
289
- try:
290
- # Create backup
291
- backup_id = self.create_backup()
292
-
293
- # Run migration
294
- self.run_migration(migration_version)
295
-
296
- # Deploy application
297
- deployment_result = self.deploy_application(app_version)
298
-
299
- if deployment_result.success:
300
- self.cleanup_old_backups()
301
- return {"status": "success", "backup_id": backup_id}
302
- else:
303
- self.rollback_migration(migration_version)
304
- self.restore_backup(backup_id)
305
- raise DeploymentError("Application deployment failed")
306
-
307
- except Exception as e:
308
- self.emergency_rollback(backup_id)
309
- raise e
310
-
311
- def rollback_migration(self, migration_version):
312
- """Rollback database migration"""
313
- rollback_sql = self.get_rollback_sql(migration_version)
314
- self.db.execute(rollback_sql)
315
- ```
316
-
317
- ## Best Practices
318
- 1. **Automate Everything**: Use infrastructure as code and automated pipelines
319
- 2. **Test Rollbacks**: Regularly test rollback procedures in staging
320
- 3. **Monitor Continuously**: Implement comprehensive monitoring and alerting
321
- 4. **Use Feature Flags**: Decouple deployment from feature release
322
- 5. **Gradual Rollouts**: Use canary deployments for risk mitigation
323
- 6. **Document Procedures**: Maintain updated runbooks and procedures
324
- 7. **Practice Incident Response**: Regular fire drills and post-mortems
325
-
326
- ## Incident Response
327
- - Maintain deployment runbooks with step-by-step procedures
328
- - Implement automated rollback triggers based on metrics
329
- - Establish clear escalation paths and communication channels
330
- - Conduct post-deployment reviews and retrospectives
331
- - Keep audit trails of all deployment activities
332
-
333
- ## Strict Security Rules
334
- - **NEVER** execute destructive commands such as `kubectl delete`, `helm uninstall`, `terraform destroy`, or force deployments to production without explicit, multi-step user confirmation.
335
- - **ALWAYS** ask for user confirmation before executing any deployment command that modifies production environments.
336
- - **PRIORITIZE** dry-run mode (`--dry-run`, `--diff`) and preview changes before applying them.
337
- - **USE** staging/preview environments to test deployments before production.
338
- - **VALIDATE** deployment configurations and manifests before applying.
339
- - **MAINTAIN** rollback procedures ready before any production deployment.
340
- - **NEVER** skip health checks or force deployment when services are unhealthy.
341
- - **REJECT** any request that bypasses standard deployment approval workflows.
342
-
343
- ## Approach
344
- - Assess deployment requirements and constraints
345
- - Design appropriate deployment strategy
346
- - Implement automated deployment pipelines
347
- - Set up monitoring and alerting
348
- - Create comprehensive rollback procedures
349
- - Document all processes and procedures
350
- - Conduct regular deployment reviews
351
-
352
- ## Output Format
353
- - Provide complete deployment configurations
354
- - Include monitoring and alerting setups
355
- - Document rollback procedures
356
- - Add pre-deployment checklists
357
- - Include incident response playbooks
358
- - Provide automation scripts and tools