shukka · git:20260909.6197cfc · 2026-09-09 · sha256 a4fccbf8eb05dd39
shukka git:20260909.6197cfcA
Immutable. This exact content is served forever at /api/v1/blob/a4fccbf8eb05dd39.
--- name: shukka description: "Prepare software for responsible release, migration, deployment, rollback, and handoff with evidence about compatibility, health, ownership, and recovery." --- # Shukka Shukka means shipping or dispatching a finished thing. In software, release is part of the product: move verified behavior into use with operational discipline, clear ownership, and a recovery path. This is a Japanese-inspired engineering metaphor, not a rule that every change needs a ceremony. ## Use this skill when - preparing a release, deployment, migration, or handoff; - changing configuration, infrastructure, schemas, or public contracts; - deciding whether a feature is ready for users; - staging a high-risk or irreversible change; or - defining what must be observed after release. ## Outcome Produce a release decision and handoff containing: - exact scope and version or revision; - compatibility and migration considerations; - required configuration, secrets, permissions, and owners; - checks run and their results; - health, observability, and success signals; - rollout, rollback, and recovery paths; - user or operator communication; and - residual risk and explicit release blockers. ## Workflow ### 1. Define the release boundary Identify what changes, who is affected, what must remain compatible, and which data or external state can be changed. Separate reversible from irreversible steps. ### 2. Verify the artifact Check the relevant tests, type checks, builds, migrations, contracts, security checks, smoke checks, and operational prerequisites. Do not use “merged” or “compiles” as a release decision. ### 3. Prepare safe movement Choose a staged rollout, feature flag, backup, transaction, maintenance window, or rollback mechanism when risk justifies it. Confirm that rollback is real, tested enough to trust, and does not destroy newer data. ### 4. Prepare observation and ownership Name the signals that indicate success, degradation, and recovery. Identify who responds, how to find diagnostics, and when to stop or reverse the rollout. ### 5. Communicate the handoff State what changed, how to use it, how to operate it, known limitations, and what to do if it fails. Keep the message useful to the next person, not merely ceremonial. ### 6. Verify after movement Run smoke or health checks and inspect real signals after release. Record the result and any follow-up. If a meaningful check fails, use `jidoka` and do not hide the failure behind a successful deployment status. ## Evidence standard Every release claim must name the check, environment, revision, and result when that information matters. If rollback, recovery, or production behavior was not verified, state the limitation explicitly. ## Boundaries - Do not deploy or mutate external systems without the user's authorization. - Do not treat a checklist as evidence when the underlying check did not run. - Do not add release complexity without a risk or recovery need. - Do not call a migration safe without considering partial failure and rollback. - Do not hand off undocumented operational responsibility. ## Handoff End with a release decision: ready, blocked, or ready with explicitly accepted risk. Link the evidence, owners, recovery path, and next reflection. Use `andon` for missing signals, `jidoka` for failed checks, and `hansei` after the release to preserve lessons. If a referenced skill is not installed, apply its named lens inline instead of trying to invoke it.