skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
jackin-project/jackin-dev162 installs

release-check

Use when preparing for a release, verifying release readiness, or running pre-release checks on the jackin project

How do I install this agent skill?

npx skills add https://github.com/jackin-project/jackin-dev --skill release-check
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill performs standard pre-release validation for the project, including CI checks, Rust tests, linting, and documentation validation. It utilizes standard development tools like git, cargo, and the GitHub CLI. No malicious patterns or security risks were identified.

  • Socketpass

    No alerts

  • Snykpass

    Risk: LOW · No issues

What does this agent skill do?

Release Check

Pre-release validation for the jackin project. Runs a series of checks and produces a readiness report.

When to Use

  • Before running /release
  • When you want to verify the project is ready to release
  • After fixing issues found in a previous release check

Process

Run each check in order. Collect results into a readiness report.

Check 1: CI Status

Verify the latest CI run on main is green:

gh run list --workflow=ci.yml --branch=main --limit=1 --json status,conclusion --jq '.[0]'

If conclusion is not success, report FAIL and stop.

Also check path-specific workflows if their paths changed since the last tag:

LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")

# Check if docker/construct/** changed since last tag
if [ -n "$LAST_TAG" ] && [ -n "$(git diff --name-only "$LAST_TAG"..HEAD -- docker/construct/)" ]; then
  gh run list --workflow=construct.yml --branch=main --limit=1 --json status,conclusion --jq '.[0]'
fi

# Check if docs/** changed since last tag
if [ -n "$LAST_TAG" ] && [ -n "$(git diff --name-only "$LAST_TAG"..HEAD -- docs/)" ]; then
  gh run list --workflow=docs.yml --branch=main --limit=1 --json status,conclusion --jq '.[0]'
fi

Report result as PASS, FAIL, or SKIP (if no changes in those paths).

Check 2: Local Tests

cargo test --locked

If any test fails, report FAIL and stop.

Check 3: Clippy

cargo clippy -- -D warnings

If clippy reports any warnings-as-errors, report FAIL and stop.

Check 4: Format Check

cargo fmt --check

If formatting violations found, report FAIL and stop.

Check 5: Direct Commit Warning

Find commits since the last tag that are not merge commits from PRs:

LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")
if [ -n "$LAST_TAG" ]; then
  git log "$LAST_TAG"..HEAD --oneline --no-merges
fi

For each commit, check if it was part of a PR:

gh pr list --state merged --search "<commit-sha>" --json number --jq '.[0].number'

If there are commits not associated with any PR, report WARN with the list. Do not block.

Check 6: Doc Link Validation

Check for broken internal links in docs/content/docs/:

  • Read markdown files and extract internal links (relative paths, href attributes)
  • Verify each linked file exists
  • For external URLs, verify they return HTTP 200 (skip rate-limited domains)

Report PASS or WARN with list of broken links.

Check 7: TODO Freshness

Read TODO.md and all files in todo/:

  • Check if any items reference work that has already been completed (look for matching commits or closed PRs)
  • Check if any items are stale (no related activity in recent commits)

Report PASS or WARN with findings.

Check 8: Security Exceptions

Read SECURITY_EXCEPTIONS.md and present its contents to the user.

Ask: "Are these security exceptions still current? (yes/no)"

If the user says no, report REVIEW — the user needs to update the file before releasing.

If the user says yes, report PASS.

Check 9: Docker Build Status

Check if Docker-related files changed since the last tag:

LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")
CONSTRUCT_CHANGED=$(git diff --name-only "$LAST_TAG"..HEAD -- docker/construct/ 2>/dev/null)
RUNTIME_CHANGED=$(git diff --name-only "$LAST_TAG"..HEAD -- docker/runtime/ 2>/dev/null)

If changed, verify the construct.yml workflow passed (already checked in Check 1). Report PASS or SKIP.

Output

Present a structured readiness report:

Release Readiness Report
========================
✓ CI: all workflows green
✓ Local tests: N passed, 0 failed
✓ Clippy: no warnings
✓ Format: clean
⚠ Direct commits: N commits since vX.Y.Z not from PRs
  - <sha> <message>
✓ Doc links: all valid
✓ TODOs: up to date
? Security exceptions: review required (N items)
✓ Docker: builds pass (or: no changes, skipped)

Result: PASS | REVIEW NEEDED | FAIL

Blocking vs Non-blocking

CheckFailure behavior
CI statusBLOCK — cannot release with red CI
Local testsBLOCK — cannot release with failing tests
ClippyBLOCK — cannot release with clippy errors
FormatBLOCK — cannot release with fmt violations
Direct commitsWARN — show list, do not block
Doc linksWARN — show broken links, do not block
TODO freshnessWARN — show stale items, do not block
Security exceptionsREVIEW — ask user, block only if user says "no"
Docker buildsBLOCK if changed and CI failed; SKIP if unchanged

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/jackin-project/jackin-dev/release-check">View release-check on skillZs</a>