- The route provider learns the server's local port from the first
/qqq/v1 request (a before-handler), so the loopback UI API is known
as soon as the UI has loaded, not only after an assistant call.
- The assistantAccess widget says why access could not be computed when
the UI API is unreachable, instead of failing the dashboard.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The tool's table is recorded before the call, so a call the UI API
refuses still names its table in the log and in Recent denials.
- AssistantDemoServer seeds a default profile (Ada), an analysts profile,
two skills (one linked) and data access rows (page READ_WRITE,
media NONE).
- Screenshots of the Recent denials card, Explain access widget, Data
access table, profile, skill and policy (light/dark, 390/1440).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>