Execute task-plan catalogue validation from verified source bytes

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a13690-09e0-7cd1-964b-ec83cdbcd348
This commit is contained in:
codex 2026-10-13 20:55:05 +02:00
parent 7c79293831
commit b98d17c09f
5 changed files with 139 additions and 11 deletions

View file

@ -25,7 +25,13 @@ No other lane module, mount enable/config, KV read/write, token/SecretID deliver
AppRole mutation, caller HCL/JSON body, paths or command argv can be compiled.
The catalogue comes from a separately owner-pinned local Secrets catalogue file,
loaded by the actual installed/pinned `secrets_engine.catalog.validate_entry`.
loaded by `secrets_engine.catalog.validate_entry` executed directly from the
verified source snapshot, together with its pinned package/errors/redactor.
Each compilation uses temporary private module names and removes them on success
or failure. Canonical application imports remain untouched. Cached modules and
timestamp-based bytecode cannot substitute different code for the verified bytes;
new Secrets Engine imports outside the closed source set refuse. This is source
consistency within the admitted Python runtime, not a Python security sandbox.
Its catalogue id, existing mount, logical path, fields, production stage and
approval CCR reference must match the owner CCR. Engine-managed mounts and auth
are refused: existing delivery-auth metadata can be carried, but is never applied
@ -91,8 +97,14 @@ Token custody/revoke, temporary object removal, owner-private recovery after unk
and truthful native readback remain gates. General lifecycle/apply/exec/default
migration and SecretsT06/RPF35T02/T12 cannot close from this source component.
Validation:40 offline tests pass, covering real owner K8s/OIDC body generation,
Validation:45 compiler tests and 15 journal tests pass, covering real owner K8s/OIDC body generation,
exact catalogue unicode digest interoperability, refusal of alternate action/kind/
path/body/ordinal, re-pinned root policy, nonapproved/unconfirmed/replayed CCR,
engine-managed catalogue, forged immutable plan, source drift/duplicates and
symlink/hardlink/writable source. No native action, credential/Secret access or owner checkout writes.
October 13 correction: a regression first demonstrated that a cached validator
could replace the hashed source. Additional cases cover cached dependencies,
invalid catalogue acceptance through a substituted validator, and private-module
cleanup on both success and refusal. The October 11 v2 review remains evidence
for its original bytes only; it does not attest this corrected revision.