ci/woodpecker/pr/ci Pipeline was successful
invariant_r_unittest.py (landing with the lease-remediation stack, PR #1109) hard-requires an installed `pi` binary pinned to the measured version: it boots Pi's real tool registry and proves the broker's read-only carve-out resolves to real, unshadowed builtins. Absent runtime fails loud by design — so CI must provide it. Install @earendil-works/[email protected].1 (the canonical Pi; @mariozechner/* is embedded-legacy) at step level in the test step. Step-level rather than baked into Dockerfile.ci because ci-image publishes are currently blocked on registry UNAUTHORIZED; baking it in is the follow-up once registry auth is fixed, at which point this line degrades to a fast no-op guard like the openssl line above it. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Dtdjx4Gxude9fwyLezCrhh