fix(agents-tools): never block commits on missing bumper; robust .version parse

This commit is contained in:
2026-06-17 21:38:03 -04:00
parent 5cbb01497c
commit 58e21eba95
4 changed files with 46 additions and 7 deletions
+28
View File
@@ -87,6 +87,34 @@ git log -1 --pretty=%s | grep -qF 'add specs (v1.1.0)' || fail "e2e structure me
echo z > specs/z.md
git add -A; git commit -q -m "edit spec"
[ "$(cat .version)" = 1.1.1 ] || fail "e2e content: want 1.1.1 got $(cat .version)"
git log -1 --pretty=%s | grep -qF 'edit spec (v1.1.1)' || fail "e2e content message: $(git log -1 --pretty=%s)"
cd /; rm -rf "$r"
echo "e2e OK"
# ── corrupt .version recovers to a clean baseline ────────────────────────────
r="$(new_repo)"; cd "$r"
mkdir -p plans; : > plans/.gitkeep
echo 1.0.0 > .version
git add -A; "$SCRIPT" precommit; git commit -q -m init
printf '1.\n' > .version # partial/corrupt
echo hi > plans/a.md
git add -A; "$SCRIPT" precommit
[ "$(cat .version)" = 1.0.1 ] || fail "corrupt recovery: want 1.0.1 got $(cat .version)"
cd /; rm -rf "$r"
echo "corrupt-recovery OK"
# ── hook never blocks a commit when version-bump is missing ──────────────────
r="$(new_repo)"; cd "$r"
mkdir -p .agents-tools/hooks
cp "$HERE/hooks/pre-commit" .agents-tools/hooks/pre-commit
cp "$HERE/hooks/prepare-commit-msg" .agents-tools/hooks/prepare-commit-msg
chmod +x .agents-tools/hooks/pre-commit .agents-tools/hooks/prepare-commit-msg
# note: .agents-tools/version-bump intentionally NOT copied
git config core.hooksPath .agents-tools/hooks
echo hi > file.txt
git add -A
git commit -q -m "no bumper present" || fail "missing version-bump blocked the commit"
git rev-parse -q --verify HEAD >/dev/null || fail "commit did not happen"
cd /; rm -rf "$r"
echo "hook-resilience OK"