Commit Graph

3 Commits

Author SHA1 Message Date
jules
777951ca9c fix: clear resolveFailed on retry so the FAB recovers
resolveAgents() throwing once (e.g. tenant id not ready on the first
render) latched resolveFailed=true, and nothing ever cleared it — so
the FAB stayed hidden permanently even after a later retry succeeded.
Reset the flag at the start of each resolution attempt.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 08:17:20 +10:00
jules
7fd81f14a9 demo: mock-transport AgentDock demo
Drives the dock with a mock transport that returns a canned reply
containing a rich table block — no network. Doubles as the design-
review surface and satisfies the crema-manifest demo requirement.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 16:05:12 +10:00
jules
05d2195fe8 feat: lib-agent-dock-ui — global assistant dock
@crema/agent-dock-ui — a floating Sparkles FAB that opens a right-side
slide-over chat with an agents-platform agent. Extracted from
skyai-finance (the canonical dock) and made app-agnostic.

The shell, threading, compose box, and rich-block rendering (via
@crema/agent-ui's MessageBody) live here; the app injects identity
(resolveAgents), context (getPageContext → structured PageContext),
and transport (auth closed over inside it — the dock never sees a
token). Self-contained: raw slide-over + buttons styled with theme
tokens, no app-local shadcn dependency. Page context travels as a
structured field, never concatenated into the message.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 15:06:02 +10:00