18 lines
1.4 KiB
Markdown
18 lines
1.4 KiB
Markdown
# ThothII workflow UI contracts
|
|
|
|
- Pi reasoning arrives as nested `message_update.assistantMessageEvent.type = thinking_delta`.
|
|
The backend maps it to the named SSE event `activity_delta`; the frontend EventSource must
|
|
explicitly subscribe to that name. Model activity is separate from final `text_delta` output.
|
|
- Session create/resume must preserve the configured or persisted thinking level. Forcing
|
|
`thinking: off` disables the upstream signal and makes the activity panel legitimately empty.
|
|
- A join-only `reviewer_decide` proposal is one complete, atomic join set. The read-only
|
|
`join-review` widget persists every proposed join on Continue; `Other — specify` persists none
|
|
and requires the model to propose the complete corrected set again. Ledger read, sequence
|
|
assignment, and atomic replacement share a per-session cross-process writer lock.
|
|
- A v2 phase summary accepts `open_questions?: string[]`. Validate this at the gate boundary and
|
|
normalize legacy malformed entries defensively in the viewer so one object cannot crash React.
|
|
- `SqlViewer`'s horizontal/vertical layout control is meaningful only with multiple SQL blocks;
|
|
hide it for the single CTE result shown by `CteResultViewer`.
|
|
- Deployment lifecycle details live in [[datamart-builder-deployment-gotchas]]: a rebuilt image
|
|
does not update a running Compose service until the containers are recreated.
|