/mise:run-full-release
Run the current repo's mise release pipeline end-to-end. Detects GitHub releases (mandatory), PyPI (optional), and crates.io (optional).
Step 0: Pre-Release Sync
git pull origin main
Step 1: Detect Release Tasks
mise tasks ls 2>/dev/null | grep -i release
If release tasks NOT FOUND → read scaffolding-and-recovery.md and scaffold first.
Step 2: Execute Release
- Check working directory:
git status --porcelain - Push unpushed commits:
git log --oneline @{u}..HEAD→git push origin main - Reset lockfile drift:
git diff --name-only | grep -E '(uv\.lock|package-lock\.json|Cargo\.lock|bun\.lockb)$' | xargs -r git checkout -- - If dirty → commit related changes or stash WIP, then verify clean
- Route by flags:
--dry→mise run release:dry--status→mise run release:status- No flags →
mise run release:full
- Post-release: reset any lockfile drift from release tasks
References
- Scaffolding & Recovery — audit, scaffold, error recovery, known issues
- Task Implementations — PyPI, crates.io, postflight details
Post-Execution Reflection
After this skill completes, reflect before closing the task:
- Locate yourself. — Find this SKILL.md's canonical path (Glob for this skill's name) before editing. All corrections target THIS file and its sibling references/ — never other documentation.
- What failed? — Fix the instruction that caused it. If it could recur, add it as an anti-pattern.
- What worked better than expected? — Promote it to recommended practice. Document why.
- What drifted? — Any script, reference, or external dependency that no longer matches reality gets fixed now.
- Log it. — Every change gets an evolution-log entry with trigger, fix, and evidence.
Do NOT defer. The next invocation inherits whatever you leave behind.