What problem does it solve? Changing a spec or scope status in the Bubbles framework is not a simple edit: statuses are gated by per-mode ceilings, sequential completion rules, and dual status mirrors that must agree. This Skill prevents rejected transitions, fabricated completion claims, and broken certification records when updating state.json or scope status lines. ## Core Features & Use Cases - Ceiling-aware transitions: Enforces each workflow mode's statusCeiling (e.g., brainstorm caps at specs_scoped, docs-only at docs_updated) and treats ceiling statuses as terminal-for-mode via is-terminal-for-mode.sh. - Mechanical guard execution: Runs state-transition-guard.sh, artifact-lint.sh, and framework-validate before any status flips to done, with raw output captured as evidence. - Mirror divergence handling: Detects E009-STATUS-MIRROR conflicts between top-level status and certification.status and routes repair to bubbles.validate via state-certification-reconcile.sh. - Grandfather clause guidance: Explains when historical done specs stay green (advisory profile) versus when changed specs are re-evaluated under current policy. - Use Case: Before committing a change that marks a bugfix spec done, run the transition guard, confirm all scopes show Status: Done with evidenced DoD items, and verify the status mirrors agree so the pre-push hook passes. ## Quick Start Ask the agent to transition the spec in specs/042-feature to done and run the Bubbles state transition guard to verify the change passes all gates.