Feedback type
Bug / cross-harness isolation and reviewer provenance.
Problem
Fable is configured on the Claude side (advisorModel: "fable"), but consumer/shared SDLC prose can be read by a Codex driver as though it were an executable Codex reviewer route. That allowed Claude Opus output to be mislabeled as Fable review before the attribution was retracted.
The Claude harness should make genuine Fable execution externally distinguishable from Opus or another fallback. A prompt saying "act as Fable" is not model identity.
Required behavior
- Claude/Fable advisor and fallback configuration remains Claude-owned; it is not copied into or inferred by Codex configuration.
- Genuine Fable review emits a compact machine-readable receipt containing actual provider/model, effort, invocation path, candidate identity, timestamps, and verdict.
- Any fallback records its real model and cannot satisfy a Fable-required gate.
- Exported/shared SDLC guidance declares requirements and points to an adapter contract; it does not claim another host has Fable configured.
Acceptance
Paired Codex issue: BaseInfinity/codex-sdlc-wizard#143
Related: #504 (Fable/Opus topology), #616 (review liveness/hangs).
Feedback type
Bug / cross-harness isolation and reviewer provenance.
Problem
Fable is configured on the Claude side (
advisorModel: "fable"), but consumer/shared SDLC prose can be read by a Codex driver as though it were an executable Codex reviewer route. That allowed Claude Opus output to be mislabeled as Fable review before the attribution was retracted.The Claude harness should make genuine Fable execution externally distinguishable from Opus or another fallback. A prompt saying "act as Fable" is not model identity.
Required behavior
Acceptance
ReviewerUnavailablewhen Fable is required..claudeadvisor settings remain Claude-local and no.codexprovider config is emitted.Paired Codex issue: BaseInfinity/codex-sdlc-wizard#143
Related: #504 (Fable/Opus topology), #616 (review liveness/hangs).