Skip to content

I3420 — A mesh peer asked for critique receives the question and its evidence, and its answer is recorded with the session that gave it

Have the mesh-review adapter send the bounded, scrubbed question the driver built as the review request body, within the mesh's body bound. The question holds the hypothesis and prior opinions marked as opinions, the evidence references and the request for a falsifier. Return the answering session as the consultation's source.

BLOCKED wave 2 · p2 · implementation profile · parallel safe

Part of an-inference-names-its-source-and-budget — Every inference a decision rests on names its model and source, stays inside a declared budget, counts independent sources rather than answers, and is never reached from a hook path.

Blocked. This issue cannot start until I3418, milestone:an-inference-names-its-source-and-budget are done. The status is derived from that, not declared.

Objective

Have the mesh-review adapter send the bounded, scrubbed question the driver built as the review request body, within the mesh's body bound. The question holds the hypothesis and prior opinions marked as opinions, the evidence references and the request for a falsifier. Return the answering session as the consultation's source.

Why

The owner's 2026-10-19 Cognitive Fabric pack asks peer critique to reuse the mesh review request (campaigns/prismatic-way-cognitive-fabric-prompt-pack/prompts/04_REASONING_MESH.md). contracts/ECONOMICS.md reserves peer critique for the highest materiality, which a subject line cannot serve.

Current state

scripts/lib/advisors/mesh-review.mjs:31-35 posts only subject and reviewer, while docs/MESH.md:376 admits a request body of up to 8 KiB. The answer carries session, verdict and note (apps/majordomus-cli/src/mesh/state.rs:406-413), and the adapter returns only conclusion and stance (mesh-review.mjs:44-50).

Desired state

The request body is the prompt cut to the mesh bound, with a marker when it is cut. The consultation carries the answering session. changes_requested maps to opposes, as today.

Scope

  • scripts/lib/advisors/mesh-review.mjs
  • scripts/lib/advisors/contract.test.mjs
  • apps/majordomus-cli/tests/reasoning_mesh.rs
  • docs/REASONING.md

Out of scope

  • Replacing the 2 s poll with the pushed channel (unmerged on feature/the-blackboard-is-pushed)
  • Executing anything on the peer
  • A new mesh event kind

Dependencies

Acceptance criteria

  • The review request a peer reads holds the question's evidence references and the opinion markers
  • A prompt longer than the body bound is cut with a visible marker, and the request is still admitted
  • The recorded consultation names the answering session
  • reasoning_mesh's absence half still decides locally

Validation

  • node --test scripts/lib/advisors/contract.test.mjs
  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test reasoning_mesh
  • bash test/run.sh 731_advisor_transport_contract

Evidence required

  • contract test of the peer request body
  • reasoning_mesh assertion on the replicated body

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I3420.yaml. Read it back with majordomus plan show I3420.

Searches the titles and descriptions of every page this site publishes.