* feat(ui): add custodian onboarding surface
* fix(ui): reset custodian session when credentials change on the same gateway
* fix(ui): include bootstrap token in custodian session ownership key
* fix(ui): no replay for ambiguous user turns; send sensitive input verbatim
* fix(ui): harden custodian session and route state
* fix(ui): keep device-token session scope stable across transient drops
* fix(ui): detect gateway scope errors structurally, not by class identity
Under isolate:false a custom element registered by an earlier test file keeps
its own module registry, so instanceof GatewayRequestError diverges while the
error shape stays stable; the branch's new custodian test files reshuffled
worker packing and exposed this in usage-page.test.ts.