with one click
pre-release
Run a comprehensive pre-release validation checklist for bashdep
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Run a comprehensive pre-release validation checklist for bashdep
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Add a new bashdep:: lifecycle command with TDD
Stage and commit changes using conventional commits format
Coverage gap analysis for the bashdep public API plus a bashdep::doctor audit
Debug and fix failing bashdep tests systematically
Fetch a GitHub issue, create a branch, plan and implement with TDD, then open a PR
Push branch and create a GitHub PR following the bashdep PR template
| name | pre-release |
| description | Run a comprehensive pre-release validation checklist for bashdep |
| allowed-tools | Read, Bash, Grep, Glob |
Run all checks before releasing a new bashdep version.
grep -n 'BASHDEP_VERSION="' bashdep
awk '/^## \[/{print; exit}' CHANGELOG.md
git tag --list --sort=-v:refname | head -3
bashdep's BASHDEP_VERSION is the source of truth. The release script
bumps it; verify it matches the intended target version.
make test
Run 3-5 times to catch flaky tests. All must pass.
make sa # ShellCheck — zero warnings
make lint # editorconfig-checker — clean
CHANGELOG.md ## [Unreleased] section is complete and reflects
every user-visible change since the last tagdocs/api.md reflects every public bashdep::* functiondocs/behavior.md reflects current lockfile / dev-dep / error semanticsdocs/releasing.md is currentREADME.md examples copy-paste cleanlyTODO / FIXME in docsgrep -nE 'declare -A' bashdep
grep -nE '\$\{[A-Za-z_][A-Za-z0-9_]*,,\}' bashdep
grep -nE '\$\{[A-Za-z_][A-Za-z0-9_]*\^\^\}' bashdep
grep -nE '\bmapfile\b|\breadarray\b' bashdep
grep -nE '&>>' bashdep
grep -nE '\$\{[A-Za-z_][A-Za-z0-9_]*\[-1\]\}' bashdep
grep -nwE 'jq|python|node|yq' bashdep || echo "OK"
Library code must only call curl / awk / mktemp / POSIX builtins.
Every public mutating command honors BASHDEP_DRY_RUN,
BASHDEP_SILENT, BASHDEP_VERBOSE, BASHDEP_FORCE. Spot-check each
in the test suite:
grep -nE 'BASHDEP_(DRY_RUN|SILENT|VERBOSE|FORCE)=true' tests/unit/bashdep_test.sh
./release.sh --dry-run
Verify:
Review git log <last-tag>..HEAD for any breaking changes. Each must be
called out in CHANGELOG.md under ### Changed or ### Removed with a
brief migration note.
git status --short empty)maingh run list --limit 5 --branch maingit tag --list <X.Y.Z> returns empty( cd "$(mktemp -d)" \
&& cp /path/to/bashdep . \
&& source ./bashdep \
&& bashdep::version )
Report each check as ✅ pass / ❌ fail / ⚠️ warning. Only proceed to
/release when all checks are ✅.