singularity-forge/web/lib
TÂCHES d5b318a222 fix: use localStorage for auth token to enable multi-tab usage (#2785)
* fix: use localStorage for auth token to enable multi-tab usage

sessionStorage is tab-scoped, so manually opened second tabs cannot
access the auth token delivered via URL fragment to the first tab.
localStorage is shared across all tabs on the same origin, and since
each GSD instance binds to a unique random port the origin already
scopes the token to that instance.

Also adds a `storage` event listener so already-open tabs pick up
token changes immediately.

Closes #2714

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: update web-auth-token test for localStorage migration

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 20:06:50 -06:00
..
auth.ts fix: use localStorage for auth token to enable multi-tab usage (#2785) 2026-03-26 20:06:50 -06:00
browser-slash-command-dispatch.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
command-surface-contract.ts feat: managed RTK integration with opt-in preference and web UI toggle (#2620) 2026-03-26 09:33:07 -06:00
dev-overrides.tsx feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
diagnostics-types.ts feat: enhance /gsd forensics with journal and activity log awareness 2026-03-25 18:19:08 +00:00
git-summary-contract.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
gsd-workspace-store.tsx fix(web): auth token gate — synthetic 401 on missing token, unauthenticated boot state, and recovery screen (#2740) 2026-03-26 16:17:12 -06:00
image-utils.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
initial-gsd-header-filter.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
knowledge-captures-types.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
project-store-manager.tsx feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
project-url.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
pty-chat-parser.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
pty-manager.ts feat: managed RTK integration with opt-in preference and web UI toggle (#2620) 2026-03-26 09:33:07 -06:00
remaining-command-types.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
session-browser-contract.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
settings-types.ts feat: managed RTK integration with opt-in preference and web UI toggle (#2620) 2026-03-26 09:33:07 -06:00
shutdown-gate.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
use-editor-font-size.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
use-terminal-font-size.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
use-user-mode.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
utils.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
visualizer-types.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
workflow-action-execution.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
workflow-actions.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00
workspace-status.ts feat(web): browser-based web interface (#1717) 2026-03-21 12:16:54 -06:00