When to use it
Use rollback when a completed feature needs to be removed from the product. Name the checked build-plan feature by number, name, or archived spec, and include the reason when you know it.
/rollback 4 because the export flow is corrupting files
/rollback "PDF export"
Use $rollback for the same skill in Codex. With no target, rollback lists recent
completed feature archives and asks you to choose. It never silently selects the
latest feature.
The planning gate
Rollback does not change product code immediately. It first:
- Matches the checked build-plan item to its archived feature spec.
- Finds the exact git commit that added that archive.
- Separates product paths from protected Blueprint workflow paths.
- Reviews later commits for shared files, contracts, routes, data, and dependency risk.
- Writes a
Type: Rollbackspec tocurrent-feature.mdand stops for review.
The risk review distinguishes harmless path overlap from a real dependency. If a later feature relies on the target or the rollback would require destructive data work, the command stops instead of guessing or cascading into more reversals.
What happens after approval
Run /implement after reviewing the spec. It creates a rollback/ branch and
applies only the target commit’s product diff in reverse with three-way conflict
detection. It excludes plans, context, history, adapters, agent instructions, and
prototypes from the reverse patch.
This is intentionally narrower than reverting the whole feature commit. A normal completed feature commit also contains its archive and build-plan bookkeeping, so reversing the whole commit would damage the record of what happened.
If the reverse patch conflicts, implementation stops and reports the paths and later commit involved. It does not discard changes, reset the repository, or resolve a dependent feature without approval.
Proof and completion
Run /check to prove the removed behavior is no longer reachable and at least one
unaffected regression path still works. Then /complete:
- Adds a separate record under
blueprint/history/rollbacks/ - Preserves the original completed feature archive
- Unchecks the target build-plan item while keeping its number stable
- Creates one
revert:commit and merges only with approval - Requests separate approval before pushing the default branch
Hard boundaries
Rollback never rewrites git history, force-pushes, uses git reset --hard,
silently rolls back dependent features, or performs destructive data migration.
The working tree must be clean and no other Blueprint work can be active when the
rollback is planned.