-
Notifications
You must be signed in to change notification settings - Fork 3
plat 343
| Coordination | Value |
|---|---|
| Assigned agent | Codex |
| Ticket state | deployed to RTS; focused regressions and service health green |
| Last synchronized | 2026-09-21 |
| Priority | P0 chat correctness / navigation |
After selecting another workflow, the header changed immediately but the chat pane continued showing the old workflow's messages while the new workflow's session and tab were being resolved. On a slow server this made unrelated messages appear to belong to the newly selected workflow.
Workflow selection is synchronous, but openWorkflowPresetPage awaits active
sessions, running-workflow lookup, and tab restoration before activating the
destination tab. The chat renderer treated the still-active source tab as valid
during this interval and had no ownership check between the selected workflow
and the active workflow tab.
The workflow surface now requires the active tab's presetQueryId to match the
currently selected workflow. A mismatch renders the existing loading surface
immediately, even if the old tab has content. Once destination activation is
atomic and the IDs match, the destination transcript renders normally.
This does not clear, merge, or mutate either workflow's events; it only prevents the source workflow from being displayed under the destination workflow's UI.
- Resolver regression coverage verifies that source content cannot override a workflow-ownership mismatch.
- Existing workflow surface resolver coverage remains green.
- Deployed to RTS in release
6c47129-20260921082037; public HTTP and service health checks passed. Interactive workflow-switch verification remains.
Auto-synced from docs/ on main. Edit there, not here.