en un clic
en un clic
Run pre-release validation and execute the release process
Add new assertion function with comprehensive tests following TDD
Analyze test coverage and identify untested code paths
Debug and fix failing tests systematically
Push branch and create a GitHub PR with concise, issue-linked description
Run complete TDD red-green-refactor cycle for a test
| name | pre-release |
| description | Run comprehensive pre-release validation checklist |
| allowed-tools | Read, Bash, Grep, Glob |
Run all checks before releasing a new bashunit version.
Verify version matches across: package.json, CHANGELOG.md, src/bashunit.sh
./bashunit tests/unit/
./bashunit tests/functional/
./bashunit tests/acceptance/
./bashunit tests/
./bashunit --parallel tests/
All must pass. Run 3-5 times to catch flaky tests.
make sa # ShellCheck — zero warnings
make lint # EditorConfig — clean
shfmt -l . # Check formatting (don't modify)
CHANGELOG.md — version section complete with all changesREADME.md — examples current, no broken linksgrep -rn '\[\[' src/ # Should not use [[
grep -rn 'declare -A' src/ # No associative arrays
grep -rn '\${.*,,}' src/ # No case conversion
make docker/alpine
make docker/ubuntu
No hardcoded secrets, no unsafe eval, input validation present.
Review git log since last release. Breaking changes must be documented with migration guide.
gh run list --limit 5./bashunit --help
./bashunit --version
echo 'function test_smoke() { assert_equals "1" "1"; }' > /tmp/smoke_test.sh
./bashunit /tmp/smoke_test.sh
rm /tmp/smoke_test.sh
Report each check as pass/fail/warning. Only proceed to release when ALL checks pass.
git tag -a vX.Y.Z -m "Release vX.Y.Z"
git push origin vX.Y.Z