- `ENFORCEMENT` in scripts/code_health/config.py (blocking / advisory / off) turns the ratchet down or off with a one-line commit to main. It is read from the BASE revision, so it applies to fork PRs (repo variables are not passed to fork-triggered workflows), CI and local hooks alike, and a PR cannot relax its own check. - `scripts/check --install-hook pre-push` judges each pushed commit the way CI judges the PR (base = that commit's merge-base); `--commit REV` is the underlying mode, `--uninstall-hook` removes our hooks and leaves foreign ones. Pre-commit and pre-push share one tree snapshot that never touches the user's worktree or index. - A failing report names the local commands; CONTRIBUTING, AGENTS.md and the PR template point at `python scripts/check`.
3.4 KiB
3.4 KiB
What does this PR do?
Related Issue
Fixes #
Type of Change
- 🐛 Bug fix (non-breaking change that fixes an issue)
- ✨ New feature (non-breaking change that adds functionality)
- 🔒 Security fix (undisclosed vulnerabilities in SECURITY.md §3.1 scope go to Security Advisories first, not a public PR)
- 📝 Documentation update
- ✅ Tests (adding or improving test coverage)
- ♻️ Refactor (no behavior change)
- 🎯 New skill (bundled or hub)
Changes Made
How to Test
Checklist
Code
- I've read the Contributing Guide
- My commit messages follow Conventional Commits (
fix(scope):,feat(scope):, etc.) - I searched for existing PRs to make sure this isn't a duplicate
- My PR contains only changes related to this fix/feature (no unrelated commits)
- I've run
pytest tests/ -qand all tests pass python scripts/checkpasses (the blocking lint and code-health checks CI runs)- I've added tests for my changes (required for bug fixes, strongly encouraged for features)
- I've tested on my platform:
Documentation & Housekeeping
- I've updated relevant documentation (README,
docs/, docstrings) — or N/A - I've updated
cli-config.yaml.exampleif I added/changed config keys — or N/A - I've updated
CONTRIBUTING.mdorAGENTS.mdif I changed architecture or workflows — or N/A - I've considered cross-platform impact (Windows, macOS) per the compatibility guide — or N/A
- I've updated tool descriptions/schemas if I changed tool behavior — or N/A
For New Skills
- This skill is broadly useful to most users (if bundled) — see Contributing Guide
- SKILL.md follows the standard format (frontmatter, trigger conditions, steps, pitfalls)
- No external dependencies that aren't already available (prefer stdlib, curl, existing Hermes tools)
- I've tested the skill end-to-end:
hermes --toolsets skills -q "Use the X skill to do Y"