I3418 — Every advisor consultation records the model that answered, the source it came through and the session that asked
Add to the consultation record the model the transport actually used, or its absence with a reason, and the adapter and vendor or peer runtime it came through. Add to the reasoning record envelope the session id of the writer. Every inference a decision rests on is then attributable.
BLOKOVÁNO vlna 1 · p1 · profil implementation · bezpečné paralelně
Blocked. This issue cannot start until I3426, milestone:an-inference-names-its-source-and-budget are done. The status is derived from that, not declared.
Cíl
Add to the consultation record the model the transport actually used, or its absence with a reason, and the adapter and vendor or peer runtime it came through. Add to the reasoning record envelope the session id of the writer. Every inference a decision rests on is then attributable.
Proč
The owner's 2026-10-19 Cognitive Fabric pack asks for model and source diversity to be tracked (campaigns/prismatic-way-cognitive-fabric-prompt-pack/prompts/04_REASONING_MESH.md), and contracts/ECONOMICS.md asks for attribution per inference.
Aktuální stav
ConsultationInput (apps/majordomus-cli/src/reasoning/record.rs:414-460) has advisor, status, duration_ms and usage, and no model. The envelope (record.rs:912-930) has task, recorded_at and head, and no session. scripts/advisor-consult:119-125 copies a fixed field list with no model. ollama-chat.mjs:11-15 and lmstudio-chat.mjs:10-11 choose the first served model and do not return it.
Cílový stav
Each adapter returns the model it used, and advisor-consult records model, adapter and vendor or peer runtime on the consultation. The writer stamps the active session id, or records its absence with the reason. reasoning status and explain print them, and records stored earlier read as absent.
Rozsah
- apps/majordomus-cli/src/reasoning/record.rs
- apps/majordomus-cli/src/reasoning/store.rs
- scripts/advisor-consult
- scripts/lib/advisors/contract.mjs
- scripts/lib/advisors/ollama-chat.mjs
- scripts/lib/advisors/lmstudio-chat.mjs
- scripts/lib/advisors/openai-chat.mjs
- scripts/lib/advisors/contract.test.mjs
- docs/REASONING.md
Mimo rozsah
- Recording prompt or answer text
- Pricing or cost fields (I3422, I3292)
- Observing local runtimes
Závislosti
Co na tom čeká
- I3419BLOCKED A conclusion's independent review count counts distinct sources, defined as adapter plus recorded model, so two answers from one source are one review
- I3420BLOCKED A mesh peer asked for critique receives the question and its evidence, and its answer is recorded with the session that gave it
- I3422BLOCKED Advisor consultations are economics usage with their measurement class, and a consultation over its plan's budget is a finding
Kritéria přijetí
- A completed consultation through each api and local_runtime adapter carries the model the fake transport reported
- A transport that reports no model yields model absent with a reason, never a guessed name
- Every reasoning record written inside a session carries that session id, and one written outside a session says so
- reasoning check still finds no advisor or model literal in the provider-independent files
Validace
- node --test scripts/lib/advisors/contract.test.mjs
- bash test/run.sh 731_advisor_transport_contract 733_advisor_failure_and_recovery
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib reasoning
- majordomus reasoning check
Požadované důkazy
- contract test naming the served model per adapter
- unit test of the envelope session stamp
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3418.yaml. Read it back with majordomus plan show I3418.