release
Prepare, verify, publish, or diagnose a Proqi release through the repository's protected tag workflow. Use only when explicitly invoked for this repository.
- License 许可
- MIT
- 最近更新
- 2026-10-08
- Stars
- ★ 11
- Forks
- 3
01 前言 Front Matter
- name
- release
- description
- Prepare, verify, publish, or diagnose a Proqi release through the repository's protected tag workflow. Use only when explicitly invoked for this repository.
02 资源文件 1
- 参考文档references/release-notes.md4.5 KB
03 SKILL.md 正文
Proqi Release
This is a repository-local maintainer skill. Act only after explicit invocation. Never advertise, install, or publish this skill as an end-user Proqi skill.
Begin safely
- Read the repository instructions and
docs/RELEASING.mdcompletely. The runbook and checked-in workflows are authoritative over this skill. - Verify the branch,
HEAD, remotes, tags, and complete worktree state. Never discard, hide, or publish unexpected changes. - Determine whether the user asked to prepare a release, inspect release
status, diagnose a failure, or proceed toward publication. Preparing files,
committing them, or pushing
maindoes not authorize a tag or release. - Read references/release-notes.md before drafting or reviewing release notes.
Prepare
- Derive the change set from the previous stable tag through
HEAD. Inspect commits, user-visible diffs, tests, documentation, and known limitations. Do not infer a shipped capability from a commit title alone. - Recommend the next semantic version with reasons. Before
1.0, use a minor increase for a new capability or intentional compatibility break, and a patch increase for compatible fixes and operational hardening. The user owns the final version choice. - Update the workspace version in
Cargo.toml, refreshCargo.lockthrough normal Cargo tooling, create.github/release-notes/vX.Y.Z.md, and add or update one exact matching entry with three to six concise user-facing items inrelease-highlights.json. GitHub notes remain the only changelog. The manifest is the bounded in-product projection of those reviewed notes. - Run focused checks appropriate to the changed code. Routine release
preparation then runs the cheap
cargo xtask release-plan vX.Y.Zcontract and Git diff hygiene. Run workflow lint only when workflows changed. Full check, PTY, coverage, audit, package, crate dry run, full MSRV, rehearsal, and Linux parity remain milestone or diagnostic gates as documented indocs/RELEASING.md; do not repeat them merely because metadata is prepared. - Review generated or changed release artifacts explicitly. Never weaken a gate, accept snapshots automatically, or claim an unavailable platform check passed.
- Review the exact GitHub notes and matching packaged highlights together. Never draft highlights from commit titles alone. Show both texts, the version diff, gate results, and any limitations before committing or pushing release preparation unless the current instruction already authorizes those exact local and remote changes.
Pre-publication checks
Before asking for publication confirmation:
- Require the release commit on
main, its required CI result and immutable candidate workflow to be green, and the exactvX.Y.Ztag to match the Cargo version, notes filename, and reviewed highlights. - Confirm that the exact tag is absent locally and remotely and that no conflicting GitHub Release or crates.io version exists.
- Record the full release commit SHA and verify that the worktree contains no unreviewed release input.
Mandatory publication confirmation
Always stop immediately before creating or pushing the release tag. Ask the user to confirm one exact action in this form:
Create and push the annotated tag vX.Y.Z at <full-commit-sha>, triggering the
public GitHub Release, crates.io publication, and Homebrew tap update?
This confirmation is mandatory even if the user previously asked to prepare, finish, cut, or publish a release, approved the release notes, or approved the release preparation commit. Do not infer it from earlier authority. Do not create a local tag, push a tag, call a release workflow, or create a GitHub Release before the user answers affirmatively to the exact tag and commit.
Publish after confirmation
- Revalidate that the commit, CI result, version, notes, and tag state have not changed since confirmation. If any changed, stop and ask again with the new exact tag and commit. Never move, recreate, or force a public release tag.
- Create and push one annotated stable tag. Do not create or publish a GitHub Release manually. The protected tag is the workflow's sole publication trigger.
- Monitor the tag-triggered
Releaseworkflow. It selects the exact prior main candidate without rebuilding native binaries, publishes crates.io through OIDC, publishes and verifies GitHub assets, then notifies the Homebrew tap. - If promotion fails, inspect the exact failing step. Rerun the same promotion when safe. If the candidate is missing or expired, manually run the non-publishing candidate workflow for the exact main SHA or protected tag, then retry promotion. Never publish around a failed verification.
- Verify the public GitHub Release, exact crates.io version, Homebrew formula,
and installed
proqi --version. Report each channel independently.
Recovery boundaries
- The manual
Release candidateworkflow is diagnostic or recovery tooling. It never publishes and is not part of an ordinary release. - If crates.io or any immutable public artifact exists, recover with a new semantic version. Never overwrite, delete, yank, or retag merely to make the workflow green.
- A failed or ambiguous external operation is not success. Preserve the command output and current public state before proposing a retry.
- Do not merge dependency pull requests, alter protection rules, change repository settings, or expand distribution channels as a side effect of a release.
Finish with the released version, commit and tag, workflow URL and result, GitHub Release URL, crates.io result, Homebrew result, installed version, and any skipped or failed verification.
04 同仓库更多 Skills
ci-cd-and-automation
Automates CI/CD pipeline setup. Use when setting up or modifying build and deployment pipelines. Use when you need to automate quality gates, configure test runners in CI, or establish deployment strategies.
chrome-devtools
Uses Chrome DevTools via MCP for efficient debugging, troubleshooting and browser automation. Use when debugging web pages, automating browser interactions, analyzing performance, or inspecting network requests. This skill does not apply to `--slim` mode (MCP configuration).
chrome-cdp
Drive a real Chrome via the Chrome DevTools Protocol (CDP). Ensures a debuggable Chrome is running (launching it if needed) so the agent can navigate, read page content, inspect the DOM, run JavaScript, and take screenshots — without the user typing any launch command. Includes a first-class "review a live running app" flow: point Chrome at the app under development and inspect/screenshot the REAL page (what a static-artifact tool cannot do). Backed by Glimpse and the chrome-devtools MCP server. Use when asked to "use chrome", "open chrome", "drive my browser", "read the page in chrome", "review the running app", "screenshot the app", or "/chrome-cdp".
check-identity-pack
Run an AFP 100-point or AUSTRAC safe-harbour identity check over a set of documents, and report exactly what's missing. Use when the user asks to check identity documents, verify someone's ID for onboarding, or assess whether a document pack satisfies Australian identity requirements.
changelog
Auto-generates a changelog from git commits, sprint data, and design documents. Produces both internal and player-facing versions.
cellxgene-census
Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data. Use when you need population-scale cell metadata, gene expression slices, Census summary counts, source H5AD URIs/downloads, embeddings, spatial Census data, or reference atlas comparisons across organisms, tissues, diseases, assays, and cell types. For analyzing your own local single-cell data use scanpy, anndata, or scvi-tools.