Skip to content

test(redaction): þing-01 P2 (#135) — delivery-log/provenance redaction audit + permanent guards - #136

Merged
Polichinel merged 1 commit into
developmentfrom
feat/thing01-p2-redaction-audit
Jul 28, 2026
Merged

test(redaction): þing-01 P2 (#135) — delivery-log/provenance redaction audit + permanent guards#136
Polichinel merged 1 commit into
developmentfrom
feat/thing01-p2-redaction-audit

Conversation

@Polichinel

Copy link
Copy Markdown
Collaborator

Closes #135 (þing-01 P2 — orð_09 §3 commitment; PLATFORM-001 multi-carrier redaction clause).

Audit report (one pass, 2026-07-28) — verdict: CLEAN

Scope: every log line and provenance/description the delivery emits from this repo's code.

  1. Log lines — all statements in unfao/managers/unfao.py (26) and unfao/wire/sink.py (2, incl. the upload ledger) enumerated and classified: arguments are filenames, run_ids, cell/row counts, regions, staging paths, and non-secret metadata dicts (name/loa). No path by which a credential value reaches any of them.
  2. Structural guaranteeunfao/wire/, delivery/, historical.py, track_a_source.py, frame_extraction.py contain zero references to os.environ/getenv/load_dotenv/credentials: the wire layer is credential-blind by construction (the manager's DIP port hands it data only). Credentials exist in exactly three places in the repo — the AppwriteConfig constructions in unfao.py — passed as parameters, never logged, never in a repr that is logged.
  3. The carrier that leaves the machine — the provenance description uploaded into store metadata is a closed key set of delivery primitives (lookup_version, region, expected_cell_count, actual_cell_count, unmapped_count, optional fill_count); compact_description serializes exactly that dict, fail-loud on overflow.
  4. Exception carriers — the port's fail-loud RuntimeError (PR fix(delivery): 255-safe provenance descriptions + loud upload port (#131 findings) #132) embeds filename + the store's error string (server-side text; the key travels in headers, which the SDK does not echo into messages). exc_info=True tracebacks show source text, not values.
  5. Boundary (named, not audited here): log lines emitted by pipeline-core's modules during my delivery (DatastoreModule/AppWriteFileModule internals, W&B) are pipeline-core's own þing-01 row (C4), not this repo's surface.

Change

tests/test_redaction_guard.py — two permanent guards pinning the audited facts: the credential-blind module set stays credential-blind, and the provenance key set stays closed. Zero production-code changes (the audit found nothing to fix).

Verification

  • New guards green; full suite: 264 passed, 44 xfailed, 5 failed — the five known local pyarrow-toolchain byte-parity tests (local 23.0.1 vs pinned 16.1.0; CI authoritative, documented in the repo).

🤖 Generated with Claude Code

…rmanent guards

The delivery-log/provenance redaction audit (orð_09 §3 commitment; PLATFORM-001
multi-carrier redaction clause) found the delivery clean: every log line carries
filenames/run_ids/counts/regions only, and the provenance description — the one
carrier that leaves the machine — is a closed set of delivery primitives. Two
guards pin that: the wire/delivery modules stay credential-blind (no environment
or credential reference), and build_provenance's key set stays closed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Polichinel
Polichinel merged commit 088211c into development Jul 28, 2026
4 checks passed
@Polichinel
Polichinel deleted the feat/thing01-p2-redaction-audit branch July 28, 2026 17:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant