I read this as a scoped production fix for three confirmed defect clusters - I’ll trace the failing tests and runtime paths, preserve the stated isolation/safety contracts, then verify only the affected surfaces.


The RED runs confirm three independent mechanisms: trainer authority is never configured, provider parsing keys off the requested label rather than the resolved client contract, and finalized callback state is read only once. I’m now applying the smallest seam-level fixes while preserving the existing Telegram changes in this shared worktree.


The confirmed RED nodes are now green against the original trainer fixtures, including all safety variants, and the provider/closure regressions pass in the current suite. I’m moving to the requested full affected-module and recovery/preflight/publication verification; any failures caused by the concurrently replaced trainer-free fixtures will be classified separately rather than patched around.


I read this as a scoped production fix for three confirmed defect clusters - implemented and verified without touching agent-owned tests or committing.

Implemented:

- Trainer-scoped group/private bridges, exact route isolation, opaque private callbacks, launcher/text/callback flows, and Telegram ingress routing.
- Provider metadata classification based on the resolved `CodexAuxiliaryClient` contract.
- Finalized snapshot re-read immediately before callback publication, aborting on snapshot or canonical drift.

Verification:

- All 21 original trainer RED nodeids pass.
- OpenAI provider regression and strict closure tests pass.
- Genuine Codex missing-metadata enforcement passes.
- Recovery/preflight/publication: `24 passed`.
- Ruff, `py_compile`, and `git diff --check`: pass.
- No-excuse counts unchanged for nutrition/physique; files retain substantial pre-existing debt.
- Strict basedpyright ran but remains blocked by 1,035 existing project errors.

Current concurrently modified two-module suite: `129 passed, 31 failed`. These are fixture/profile-contract failures, including trainer-free fixtures still asserting trainer behavior, frozen fixture mutation, and missing `owner_confirmed`; production was not weakened to accommodate them.

Architectural review: changes preserve typed boundaries, exact address isolation, exhaustive callback validation, and add no escape hatches or redundant verification. The three inherited modules remain oversized multi-responsibility files; splitting them was outside this exclusive fix scope. No commit created.