bluetemberg-skills-rollback-plan 0.1.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.
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rollback-plan
|
|
3
|
+
description: Require an explicit rollback plan for every infrastructure or deployment change before merge.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# rollback-plan
|
|
7
|
+
|
|
8
|
+
Use this skill when reviewing infrastructure, deployment, or database changes that affect production systems. Every change must have a tested rollback path.
|
|
9
|
+
|
|
10
|
+
## Triggers
|
|
11
|
+
|
|
12
|
+
- Changes to deployment manifests (Kubernetes, Docker Compose, Helm values)
|
|
13
|
+
- Ansible playbooks targeting production inventory
|
|
14
|
+
- Terraform changes to production workspaces
|
|
15
|
+
- Database schema migrations
|
|
16
|
+
- Dependency or image version bumps in production config
|
|
17
|
+
- CI/CD pipeline changes affecting production deploys
|
|
18
|
+
|
|
19
|
+
## Required behavior
|
|
20
|
+
|
|
21
|
+
1. **Define rollback steps:** Every PR must include explicit rollback instructions in the description or a linked runbook. Vague ("revert the commit") is not enough.
|
|
22
|
+
2. **Verify rollback is tested:** For stateful changes (schema migrations, volume changes), the rollback must have been tested in a staging environment.
|
|
23
|
+
3. **Check for data loss risk:** If rolling back would lose data (e.g., a column drop already ran), flag the change as requiring a data backup before applying.
|
|
24
|
+
4. **Time-to-rollback estimate:** Include an estimated time to execute the rollback. If it exceeds 15 minutes, require a pre-change backup or canary deploy.
|
|
25
|
+
5. **Rollback freeze window:** Flag if the change is in scope of an upcoming release freeze or maintenance window.
|
|
26
|
+
|
|
27
|
+
## Rollback plan format
|
|
28
|
+
|
|
29
|
+
Include this block in the PR description for every production change:
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
## Rollback plan
|
|
33
|
+
|
|
34
|
+
**Steps:**
|
|
35
|
+
1. [Step-by-step instructions]
|
|
36
|
+
|
|
37
|
+
**Time estimate:** [N minutes]
|
|
38
|
+
|
|
39
|
+
**Data loss risk:** [None / Low (describe) / High (backup required)]
|
|
40
|
+
|
|
41
|
+
**Tested in staging:** [Yes / No — explain]
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## When NOT to use
|
|
45
|
+
|
|
46
|
+
- Local development or sandbox environments
|
|
47
|
+
- Documentation-only changes
|
|
48
|
+
- Additive-only changes with no existing state at risk (new service, new namespace)
|
package/package.json
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "bluetemberg-skills-rollback-plan",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Rollback plan skill for Bluetemberg — require tested rollback steps for every production change.",
|
|
5
|
+
"keywords": ["bluetemberg-pack", "skills"],
|
|
6
|
+
"author": "Prototyp Digital",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"repository": {"type": "git", "url": "https://github.com/prototypdigital/bluetemberg-packs.git"},
|
|
9
|
+
"files": ["llm/"]
|
|
10
|
+
}
|