fix(oracle-l8): close 3 polish caveats (dispatch labels / chat unread / leftrail leak)
build-and-publish / test (push) Has been cancelled
build-and-publish / image (push) Has been cancelled

Oracle PASS-with-caveats; closing all 3:

1. Wizard dispatch labels were 'human'/'agent'/'system' (impl-ish).
   Now 'Person'/'Assistant'/'System' in both the dropdown and the
   preview-pane badge.

2. Chat badge was thread COUNT (a buyer with 5 chats sees '5' forever).
   Now real unread count, computed locally from localStorage heads +
   read maps that the Chat scene already persists. App.tsx topbar
   poll still only fires 2 network calls (listThreads + workItems);
   per-thread unread math is zero-network.

3. LeftRail toast leaked 'POST /api/runtime/transactions/{id}/actions/
   submit' / save_draft. Rewritten as 'Switch to live mode and sign
   in to submit this action against EA2.'

Plus engineering-string sweep elsewhere: 'demo.flow-master.ai' /
'bundled JSON' / 'in-browser fetch' references removed from:
- App.tsx mode toggle title
- MissionControl loading spinner
- Landing mode-button title
- state/store snapshot toast
- data/live.ts + data/synthetic.ts tour-step bodies
- buildScenarios.ts tagline

Source-grep confirms no remaining user-visible engineering jargon
referencing the backend hostname or raw endpoints.
This commit is contained in:
2026-06-14 19:08:44 +04:00
parent dd83530d6a
commit a02cc70e68
10 changed files with 43 additions and 18 deletions
+3 -3
View File
@@ -281,7 +281,7 @@ export default function Wizard() {
<li key={n._key || i} className="wizard-preview-chain-item">
<span className="wizard-preview-chain-idx">{i + 1}</span>
<span className="wizard-preview-chain-name">{n.display_name || "Untitled step"}</span>
<span className={`wizard-preview-chain-kind kind-${n.dispatch_kind || "human"}`}>{n.dispatch_kind || "human"}</span>
<span className={`wizard-preview-chain-kind kind-${n.dispatch_kind || "human"}`}>{({ human: "Person", agent: "Assistant", system: "System" } as Record<string, string>)[n.dispatch_kind || "human"] || "Person"}</span>
</li>
))}
</ol>
@@ -412,8 +412,8 @@ export default function Wizard() {
updateDraft({ nodes: newNodes });
}}
>
<option value="human">Human</option>
<option value="agent">Agent</option>
<option value="human">Person</option>
<option value="agent">Assistant</option>
<option value="system">System</option>
</select>
<div className="node-controls">