Repository navigation
v0.20.0 — Isolated Pass-Capable Executor
v0.20.0 — Isolated Pass-Capable Executor
This is the milestone release. verified and review_ready are now legitimately reachable under a strict proof chain.
What this release delivers
For the first time, the full repair pipeline is operationally pass-capable:
detected → evidence_collected → proposed → verified → review_ready → approved → applied
A pass receipt is accepted only when:
- The backend is explicitly pass-authorized (
docker-executoronly) - Valid durable backend isolation evidence exists for that backend and image digest
- The receipt binds to the exact same image identity and locked proposal inputs
- Every validation command completed successfully under the verified isolated backend
PRs Shipped
| # | Title | Commit |
|---|---|---|
| 54 | Executor backend abstraction + Docker/Podman implementation | 0226a8b |
| 55 | E2E isolation evidence + immutable OCI image identity | f689f88 |
| 56 | Pass-capable unlock: backend evidence gate, docker-executor enabled | 5411c67 |
New Infrastructure
- ExecutorBackend abstraction: Contract-based backend selection with
describe()/run() - docker-executor: Full container isolation (
--network=none,--read-only,--user,--cpus,--memory,--pids-limit) - node-executor: Host spawn (always inconclusive, not pass-capable)
- Image identity:
GITWIRE_VALIDATOR_IMAGE_REFconfig,parseImageReference(),isDigestPinned() - Runtime inspection:
inspectContainerImage(),verifyImageIdentity(),computeInspectionHash() - Isolation probes: 10 required probes (network, credentials, non-root, read-only, limits, socket)
- Backend evidence store: Durable, audit-complete, content-addressed
- Migration 036:
backend_isolation_evidencetable with inspection columns - Verifier check 3e: Backend evidence gate wired into lifecycle verifier
Test Coverage
60 suites, 2,196 tests — all green.
Production Deployment
Before pass-capable execution works in production:
- Build a real validator image and set
GITWIRE_VALIDATOR_IMAGE_REF - Run isolation probes and store backend evidence
- Configure Docker/Podman with the required isolation flags
Non-blocking follow-up
Make runtime_version binding symmetric between receipt and evidence (currently checked only when both sides present).