Prepare a day-one patch for a game launch. Scopes, prioritises, implements, and QA-gates a focused patch addressing known issues discovered after gold master but before or immediately after public launch. Treats the patch as a mini-sprint with its own QA gate and rollback plan.
Every shipped game has a day-one patch. Planning it before launch day prevents chaos. This skill scopes the patch to only what is safe and necessary, gates it through a lightweight QA pass, and ensures a rollback plan exists before anything ships. It is a mini-sprint — not a hotfix, not a full sprint.
When to run:
Day-one patch scope rules:
Output: production/releases/day-one-patch-[version].md
Read:
production/stage.txt — confirm project is in Release stageproduction/gate-checks/ — read the release gate verdictproduction/qa/bugs/*.md — load all bugs with Status: Open or Fixed — Pending Verificationproduction/sprints/ most recent — understand what shippedproduction/security/security-audit-*.md most recent — check for any open security itemsIf production/stage.txt is not Release or Polish:
"Day-one patch prep is for Release-stage projects. Current stage: [stage]. This skill is not appropriate until you are approaching launch."
For each open bug, evaluate:
| Criterion | Include in day-one? |
|---|---|
| S1 or S2 severity | Yes — must include if safe to fix |
| P1 priority | Yes |
| Fix estimated < 4 hours | Yes |
| Fix requires architecture change | No — defer to 1.1 |
| Fix introduces new code paths | No — too risky |
| Fix is data/config only (no code change) | Yes — very low risk |
| Cert feedback requirement | Yes — required for platform approval |
| S3/S4 severity | Only if trivial config fix; otherwise defer |
Use AskUserQuestion:
[A] Approve this scope / [B] Adjust — I want to add or remove items / [C] No day-one patch neededIf [C]: output "No day-one patch required. Proceed to /launch-checklist." Stop.
Sum estimated effort. If total exceeds 1 day of work:
"⚠️ Patch scope is [N hours] — this exceeds a safe day-one window. Consider deferring lower-priority items to patch 1.1. A bloated day-one patch introduces more risk than it removes."
Use AskUserQuestion to confirm proceeding or reduce scope.
Before any code is written, define the rollback procedure. This is non-negotiable.
Spawn release-manager via Task. Ask them to produce a rollback plan covering:
Present the rollback plan. Ask: "May I write this rollback plan to production/releases/rollback-plan-[version].md?"
Do not proceed to Phase 4 until the rollback plan is written.
For each bug in the approved scope, spawn a focused implementation loop:
Spawn lead-programmer via Task with:
The lead-programmer implements and runs targeted tests.
Spawn qa-tester via Task to verify: does the bug reproduce after the fix?
For config/data-only fixes: make the change directly (no programmer agent needed). Confirm the value changed and re-run any relevant smoke test.
This is a lightweight QA pass — not a full /team-qa. The patch is already QA-approved from the release gate; we are only re-verifying the changed areas.
Spawn qa-lead via Task with:
Ask qa-lead to determine: Is a targeted smoke check sufficient, or do any fixes touch systems that require a broader regression?
Run the required QA scope:
/smoke-check [affected-systems]tests/unit/ and tests/integration/ for affected systemsQA verdict must be PASS or PASS WITH WARNINGS before proceeding. If FAIL: scope the failing fix out of the day-one patch and defer to 1.1.
# Day-One Patch: [Game Name] v[version]
**Date prepared**: [date]
**Target release**: [launch date or "day of launch"]
**Base build**: [gold master tag or commit]
**Patch build**: [patch tag or commit]
---
## Patch Notes (Internal)
### Bugs Fixed
| BUG-ID | Severity | Description | Fix summary |
|--------|----------|-------------|-------------|
| BUG-NNN | S[1-4] | [description] | [one-line fix] |
### Deferred to 1.1
| BUG-ID | Severity | Description | Reason deferred |
|--------|----------|-------------|-----------------|
| BUG-NNN | S[1-4] | [description] | [reason] |
---
## QA Sign-Off
**QA scope**: [Targeted smoke / Broader regression]
**Verdict**: [PASS / PASS WITH WARNINGS]
**QA lead**: qa-lead agent
**Date**: [date]
**Warnings (if any)**: [list or "None"]
---
## Rollback Plan
See: `production/releases/rollback-plan-[version].md`
**Trigger condition**: If [N] or more S1 bugs are reported within [X] hours of launch, execute rollback.
**Rollback owner**: [user / producer]
---
## Approvals Required Before Deploy
- [ ] lead-programmer: all fixes reviewed
- [ ] qa-lead: QA gate PASS confirmed
- [ ] producer: deployment timing approved
- [ ] release-manager: platform submission confirmed
---
## Player-Facing Patch Notes
[Draft for community-manager to review before publishing]
[list player-facing changes in plain language]
Ask: "May I write this patch record to production/releases/day-one-patch-[version].md?"
After the patch record is written:
/patch-notes to generate the player-facing version of the patch notes/bug-report verify [BUG-ID] for each fixed bug after the patch is live/bug-report close [BUG-ID] for each verified fix/retrospective launchIf any S1 bugs remain open after the patch:
"⚠️ S1 bugs remain open and were not patched. These are accepted risks. Document them in the rollback plan trigger conditions — if they occur at scale, rollback may be preferable to a follow-up patch."
/patch-notes is a required output, not optional