docs(sf): wire parentTrace into advisory-partner dispatch

Adds a Dispatch Pattern subsection showing the parentTrace shape for
advisory review. For advisory, the trace is the planner's reasoning trail
(alternatives considered, untested assumptions, explicit out-of-scope) —
not tool calls. This lets the advisory reviewer catch the gap between
what the planner thought and what the artefact says, which is exactly
what advisory review exists to catch.
This commit is contained in:
Mikael Hugo 2026-05-02 03:45:37 +02:00
parent 2fd0f15c98
commit 0266ca3ec8

View file

@ -24,6 +24,34 @@ Use `subagent` to dispatch an advisory review (with the `validation` model) when
- A significant architectural decision needs challenge — dispatch advisory, then write the ADR
- The planning model is uncertain and needs a second opinion
### Dispatch Pattern
Pass `parentTrace` so the advisory agent reviews the planner's actual
reasoning trail — not just the artefact that landed. For advisory dispatch,
the trace shape is *reasoning*, not *tool calls*: alternatives considered,
assumptions made, what the planner is uncertain about, what was rejected
and why. The advisory agent uses this to find the gap between what the
planner *thought* and what the artefact *says*.
```
subagent({
agent: "reviewer",
model: "<validation-tier model>",
parentTrace: "Reasoning trail (what the planner considered):\n" +
"- Alternatives weighed: A vs B vs C; chose B because <reason>\n" +
"- Untested assumptions: <assumption 1>, <assumption 2>\n" +
"- Where the planner is uncertain: <one or two specifics>\n" +
"- What was explicitly out of scope: <items>",
task: "Apply the advisory-partner protocol to <artefact path>. " +
"Answer Q1-Q5, run the trap scan, end with ADVISORY VERDICT."
})
```
The advisory verdict carries more weight when the reviewer can see *what
the planner thought* and not just *what the planner wrote*. Hidden
assumptions and waved-away objections are exactly what advisory review
exists to catch.
---
## Advisory Review Protocol