I read this as a final read-only compliance audit of the exact frozen candidate against every Task26 requirement and prior blocker - I’ll inspect the immutable artifacts and offline verification evidence, then return a strict PASS/FAIL/INCONCLUSIVE with residual risk and no release actions.


The frozen identity and pre/post-freeze seals reconcile. I’m now validating the two former release blockers at their actual seams: the subprocess-backed 749-test receipt and PTB’s application-level update-dispatch lease, including real loopback delivery after revocation.


I read this as the final objective/constraint audit of immutable v36 - I verified the sealed artifacts, critical code paths, and representative offline gates without release or live actions.

## Bottom line

**PASS** for the objective/constraint lane on candidate `1a8ba68a8312943b8918ef9029023aa97fc968fd2d9c0f316d7385232e0d7712`. Both prior blockers are closed: the profile receipt is execution-backed rather than synthetic, and complete PTB `process_update` dispatch is protected by the shared authority lease, with a server-delivered post-revocation update blocked before any handler entry or mutation.

This is not Task26 completion or release authorization; the other independent review lanes must also pass.

## Action plan

1. **Accept exact-candidate provenance.**
   - Recomputed candidate digest from canonical derivation inputs: exact match.
   - Ledger line 168 hashes match: Hermes `cf7685…`, profile `a56da2…`, prefreeze seal `ca3a42…`, postfreeze receipt seal `2ccf4d…`.
   - All 391 inventoried prefreeze entries matched; 394 total files had correct `0400`/`0500` modes, no symlinks or writable paths.
   - All 43 postfreeze-sealed artifacts matched their hashes.

2. **Accept the former profile-receipt blocker as closed.**
   - `write_profile_qualification_receipt` executes isolated pytest via `subprocess.run`; it does not accept caller-provided PASS text.
   - Receipt file hash `11b5e964…`; runner `ef7c3ce7…`; manifest contains 749 unique collected/executed/passed IDs across 31 real test files.
   - Bound evidence: Python `3.12.9`, executable hash `d9bc96d1…`, pytest `9.1.1`, source digest unchanged before/after, profile wheel `a56da2…`, raw stdout `749 passed`, empty stderr.
   - Fewer-test, source-drift, coherent forgery, runner/log/receipt substitution cases reject.

3. **Accept ingress authority and privacy closure.**
   - Nutrition-enabled Telegram installs an application-level wrapper around PTB `process_update`.
   - The wrapper acquires `LOCK_SH`, awaits the original complete dispatch, and releases in `finally`; revocation uses the same lock exclusively.
   - Update-first, revoke-first, exception, and cancellation paths pass.
   - Source and installed loopback transcripts each show one server-delivered post-revoke update, but `handler_entries=0`, `mutations=0`, watcher failure deliberately deferred, and socket/watcher cleanup true.
   - Non-nutrition Telegram configurations bypass this Task26 wrapper.
   - Watcher is event-driven `dnotify_signalfd_v1`, one directory resource, zero inotify watches. All three coaching completion paths set `store=False`.

4. **Accept lifecycle clauses and final state.**
   - Seven hash-chained clauses pass: 22 answers without re-asks; deterministic ambiguity/revision; preview isolation; projection-failure capability block; unknown-outcome no-retry; successful lifecycle; forward-resumed terminal cleanup.
   - Protected production controller issues the one-use capability under external authority.
   - Source and installed bundles each contain one transport call, one `sent_audited` delivery, one surface receipt, consumed capability, and duplicate rejection.
   - No trainer paths, JSON fields, Python content, or wheel content were found.
   - Direct URL projection v2, Python 3.12 Ty semantics, final-state v7, isolated frozen bootstrap, rehydration, tamper rejection, and cleanup all pass.
   - Original and disposable v36 runtimes are absent; zero process, FD, socket, watcher, writable-path, or symlink residue.

5. **Verification performed.**
   - Sealed logs: profile 749; parser 204 source + 204 installed; lifecycle 131; focused 284; expanded 76; gateway 8,530/0 failures; direct-URL attacks 32; Ty-target attacks 14.
   - Fresh targeted audit: **68 passed**, covering profile execution/forgery, runtime authority, update ordering, real loopback delivery, and transcript substitution.
   - An initial ambient-Python async invocation lacked `pytest-asyncio`; rerunning with the project’s bound Python environment passed all affected tests.

## Risks and mitigations

- Evidence provides deterministic integrity, not external signatures, non-repudiation, or protection from a compromised operator/host; this limitation is explicit in the sealed trust boundary.
- Ty reports 810 diagnostics outside the changed capability spans; zero capability-surface diagnostics are claimed, not whole-file cleanliness.
- Loopback QA proves the real PTB/HTTP ingress mechanism without external Telegram traffic. It is not a new live-customer rehearsal, consistent with the amendment and this task’s no-live constraint.
- Keep Task27 and release blocked until every remaining independent Task26 lane returns PASS.