mirror of
https://github.com/Heretek-AI/agentic-hooks.git
synced 2026-11-07 10:46:10 -10:00
Multi-plugin marketplace of forced mechanical gates (the Turnstile): agents cannot end a turn with mechanically failing code. Verdicts are deterministic CLI results — never LLM-judged. - core/gate: stdlib-only dispatcher (Python 3.11+) with SARIF-lite finding protocol (content-based fingerprints, line-drift proof), policy loader with includes/tiers, tool-chain resolver with fallback order + explicit DEGRADED verdicts, verdict cache, ratchet baseline, expiring waivers, guard-the-guard, loop-guard, turn ledger, doctor, report - 14 tool adapters: py_ast, ruff_format/check, secret_scan, node_check, tsc, oxlint, biome_*, prettier, ty, pyright, mypy, gitleaks (pure parsers, unit- testable without the tools installed) - packs: gates-essential (engine + all enforcement hooks + commands), gates-polyglot/security/strict (declarative content packs, registration-only hooks, dependencies on the engine — multi-fire structurally prevented) - Quality Ladder wiring: L0 PostToolUse (format/syntax/secrets, unchanged-hash fast path), L1 PostToolBatch (lint+types), L2 Stop turnstile with loop-guard, L3 gate check for CI parity - 56 tests: unit + golden-stdin hook contracts + packaging invariants + registration idempotence; manifest validator; seed fixtures - Spike results: H4 ratchet PASSED (0 false blocks / 10-10 caught); H2 partial falsification recorded (unchanged-hash <15ms unreachable at ~51ms p95 with per-edit CPython spawn — escalation path documented) - Design history: .research/brainstorm_20260926T1835.md (dialectic + tool matrix) Co-Authored-By: Claude Code <[email protected]>