Summary
The governance / Language / package anti-pattern policy job fails on verisimiser (seen on PR #167, run 28286708330). Pre-existing — scripts/abi-ffi-gate.py is a Python file, and Python is fully banned estate-wide. Surfaced here for the master scheduler. (I added zero .py files in PR #167; this predates it.)
What the check reports (verbatim)
❌ Python files detected - Python is fully banned — use AffineScript/Rust/SPARK/Julia (SaltStack carveout removed 2026-01-03)
scripts/abi-ffi-gate.py
(declare an exemption via .hypatia-ignore or an inline
'# hypatia:ignore cicd_rules/banned_language_file' pragma if intentional)
Options
- Migrate (policy-preferred). Rewrite
scripts/abi-ffi-gate.py in an allowed language — Bash/POSIX (it's a CI gate script, likely a good fit), or Rust/Julia/AffineScript — and update any workflow/recipe that invokes it. Per CLAUDE.md, "Python is fully banned, no exceptions," so migration is the policy-correct path.
- Document an exemption (only if migration is genuinely blocked): add a
.hypatia-ignore entry or an inline # hypatia:ignore cicd_rules/banned_language_file pragma with a rationale + unblock condition. This is a policy decision for the owner, not something to apply unilaterally.
Proposed actions
Scope note
Likely a one-off in this repo, but if other -iser repos carry the same abi-ffi-gate.py, prefer a shared migration tracked in hyperpolymath/standards.
Filed from a Claude Code cloud session as a follow-up to PR #167 (merged). Surfaced for the master scheduler.
Summary
The
governance / Language / package anti-pattern policyjob fails onverisimiser(seen on PR #167, run 28286708330). Pre-existing —scripts/abi-ffi-gate.pyis a Python file, and Python is fully banned estate-wide. Surfaced here for the master scheduler. (I added zero.pyfiles in PR #167; this predates it.)What the check reports (verbatim)
Options
scripts/abi-ffi-gate.pyin an allowed language — Bash/POSIX (it's a CI gate script, likely a good fit), or Rust/Julia/AffineScript — and update any workflow/recipe that invokes it. PerCLAUDE.md, "Python is fully banned, no exceptions," so migration is the policy-correct path..hypatia-ignoreentry or an inline# hypatia:ignore cicd_rules/banned_language_filepragma with a rationale + unblock condition. This is a policy decision for the owner, not something to apply unilaterally.Proposed actions
scripts/abi-ffi-gate.py→ Bash/Rust/Julia and rewire its caller; verify the ABI↔FFI gate still works.Scope note
Likely a one-off in this repo, but if other
-iserrepos carry the sameabi-ffi-gate.py, prefer a shared migration tracked inhyperpolymath/standards.Filed from a Claude Code cloud session as a follow-up to PR #167 (merged). Surfaced for the master scheduler.