fix(agents): add mandatory task completion checklist and tracked git hooks
Root cause fix for AI agent failing to commit/push automatically: 1. Added Task Completion Checklist to AGENTS.md with mandatory items: - All requested work implemented - Changes staged (git add) - Changes committed (conventional format) - Changes pushed (git push) - STATUS.md updated (if applicable) - JOURNAL.md updated (if applicable) 2. Added pre-push hook in .githooks/ (tracked, not .git/hooks/): - Blocks push if uncommitted changes exist - Safety net if checklist is skipped 3. Fixed .gitignore: changed "vendor/" to "vendor" to also ignore symlink After cloning, run: git config core.hooksPath .githooks 💘 Generated with Crush Assisted-by: GLM-5 via Crush <crush@charm.land>
This commit is contained in:
25
.githooks/pre-push
Executable file
25
.githooks/pre-push
Executable file
@@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Pre-push hook: Prevents push if uncommitted changes exist
|
||||||
|
# This is a safety net to ensure AI agents commit their work
|
||||||
|
#
|
||||||
|
|
||||||
|
# Check for uncommitted changes
|
||||||
|
if [[ -n $(git status --porcelain 2>/dev/null) ]]; then
|
||||||
|
echo ""
|
||||||
|
echo "ERROR: Uncommitted changes detected!"
|
||||||
|
echo ""
|
||||||
|
echo "Per AGENTS.md policy, AI agents MUST commit changes before stopping work."
|
||||||
|
echo ""
|
||||||
|
echo "Uncommitted files:"
|
||||||
|
git status --short
|
||||||
|
echo ""
|
||||||
|
echo "Run the following before push:"
|
||||||
|
echo " git add <files>"
|
||||||
|
echo " git commit -m '<type>: <message>'"
|
||||||
|
echo " git push"
|
||||||
|
echo ""
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
||||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,2 +1,2 @@
|
|||||||
vendor/
|
vendor
|
||||||
.env
|
.env
|
||||||
|
|||||||
12
AGENTS.md
12
AGENTS.md
@@ -99,6 +99,18 @@ echo '{"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{},"protoc
|
|||||||
timeout 10 docker run --rm -i kneldevstack-aimiddleware-<service>
|
timeout 10 docker run --rm -i kneldevstack-aimiddleware-<service>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Git Hooks
|
||||||
|
|
||||||
|
This project uses tracked git hooks stored in `.githooks/`. After cloning, run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git config core.hooksPath .githooks
|
||||||
|
```
|
||||||
|
|
||||||
|
### Available Hooks
|
||||||
|
|
||||||
|
- `pre-push` - Blocks push if uncommitted changes exist (safety net for AI agents)
|
||||||
|
|
||||||
## Task Completion Checklist
|
## Task Completion Checklist
|
||||||
|
|
||||||
**MANDATORY**: Before declaring ANY task complete, AI agents MUST verify ALL applicable items:
|
**MANDATORY**: Before declaring ANY task complete, AI agents MUST verify ALL applicable items:
|
||||||
|
|||||||
Reference in New Issue
Block a user