원클릭으로
release-check
Use before cutting a release to verify build, version, and smoke test.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use before cutting a release to verify build, version, and smoke test.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use before cutting a release to verify build, version, and smoke test.
Add a new cloud speech-to-text provider to Handless. Use when integrating a new cloud STT API (e.g., Google Cloud STT, Azure Speech, Rev AI). Covers Rust backend, provider registration, settings defaults, dictionary injection, realtime WebSocket support, and i18n across all 17 locales.
Handless app architecture, project structure, and core patterns. Use when understanding or modifying the app's structure, data flow, module responsibilities, or adding new features that span backend and frontend.
CLI flags and remote control parameters for Handless. Use when working with command-line arguments, autostart integration, signal handling, or remote instance control.
Force the onboarding page to display during development, even when permissions are already granted. Use when testing or iterating on the onboarding UI.
| name | release-check |
| description | Use before cutting a release to verify build, version, and smoke test. |
Pre-release verification for Handless. Run all checks, report pass/fail per item, and block release on any failure.
All three files must contain the same version string:
src-tauri/tauri.conf.json → "version": "X.Y.Z" (primary source — release workflow reads this)src-tauri/Cargo.toml → version = "X.Y.Z"package.json → "version": "X.Y.Z"Read all three files and compare. Any mismatch is a Fail.
CHANGELOG.md must have a ## [X.Y.Z] - YYYY-MM-DD section matching the version from step 1.## [Unreleased] section should be empty (all items moved to the new version section).Run:
bun run check:translations
Non-zero exit code is a Fail. Report any missing or extra keys.
Run in parallel:
bun run lint
npx tsc --noEmit
Non-zero exit code on either is a Fail.
Run in parallel:
bun run format:check
cd src-tauri && cargo fmt --check
Non-zero exit code on either is a Fail.
Run:
cargo clippy --manifest-path src-tauri/Cargo.toml -- -D warnings
Non-zero exit code is a Fail. Warnings promoted to errors.
Run:
cargo check --manifest-path src-tauri/Cargo.toml --locked
Fails if Cargo.lock is out of date with Cargo.toml.
Specta auto-generates src/bindings.ts during cargo check. After the Rust check in step 7, verify:
git diff --name-only src/bindings.ts
If bindings.ts has uncommitted changes, bindings are stale — Fail.
Run:
bun run tauri build
Non-zero exit code is a Fail. This is the slowest step; run it last.
Run:
git status --porcelain
Any uncommitted changes (other than the release commit itself) is a Fail. Everything must be committed before triggering the release workflow.
Print a summary table:
## Release Check: vX.Y.Z
| # | Check | Status |
|----|------------------------|--------|
| 1 | Version sync | Pass |
| 2 | CHANGELOG.md | Pass |
| 3 | Translations | Pass |
| 4 | Lint & type check | Pass |
| 5 | Formatting | Pass |
| 6 | Clippy | Pass |
| 7 | Cargo.lock sync | Pass |
| 8 | Bindings up-to-date | Pass |
| 9 | Build smoke test | Pass |
| 10 | Clean working tree | Pass |
Result: READY TO RELEASE ✓
Any Fail must be fixed before release. After all checks pass, the release can be triggered via gh workflow run release.yml.