Skip to content

Conversation

@tyemirov
Copy link
Collaborator

Summary\n- load tauth.js from a configurable CDN (tauthScriptUrl) and stop proxying /tauth.js through gHTTP\n- plumb tauthScriptUrl through runtime config, app loader, and test harnesses\n- rename env templates to env..example and keep .env files untracked\n- update gHTTP dev/docker compose wiring for HTTPS on :4443\n- refresh docs/changelog for the new auth/runtime setup\n\n## Testing\n- make test

tyemirov and others added 14 commits January 27, 2026 10:27
- add frontend/config.yaml with per-origin auth settings

- load mpr-ui config before bundle and remove manual auth wiring

- enforce strict auth boot via config loader promise

- CI: make lint passing; make test/make ci killed by sandbox
- wait for DOMContentLoaded before config load

- init tauth + prime nonce prior to loading mpr-ui.js

- CI: make lint passing; make test killed by sandbox
- mirror mpr-ui demo proxy routes and origin lists

- expand CORS + tenant origin placeholders in config.tauth.yml

- CI: make lint passing; make test killed by sandbox
…tion

Added auth operation chaining to prevent race conditions when concurrent
auth events (authenticated/unauthenticated) interleave during async
operations like IndexedDB hydration.

Previously, rapid auth state changes could cause activeStorageKey to
change during hydrateActiveScope(), leading to a mismatch when
ensureHydrated() was called and throwing 'storage.notes.not_ready' error.

Changes:
- Added authOperationChain (Promise) to serialize auth operations
- Added authOperationId (number) to track and cancel stale operations
- Modified handleAuthAuthenticated to chain operations and check ID
- Modified handleAuthUnauthenticated with same pattern

Tests: node --test tests/auth.operationChain.test.js (9 tests)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Updates mpr-ui CDN references from @latest to @v3.6.2 which includes
the MU-132 fix for dispatching authenticated event after credential
exchange.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ation tests

- Remove authenticatedCount checks that required mpr-ui callback firing
- Use waitForSyncManagerUser to verify authentication completion
- Set initialProfile in TAuth harness to match expected test users
- Update UI tests to use prepareFrontendPage for proper auth flow
- Add skipAppReady option for landing page tests
- Set default 5-second timeouts for auth wait functions
- Refactor test harness to properly coordinate session cookies
- Add page-separation architecture (app.html + index.html)
- Delete legacy auth modules (auth.js, tauthSession.js, authControls.js)
- Add profileNormalization utility for TAuth/mpr-ui profile mapping

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- remove standalone fullscreen control and styling

- update menu toggle state handling with prefixed fullscreen events

- add Playwright coverage for menu-only toggle and webkit fallback

- CI: make test, make lint, make ci
@tyemirov tyemirov self-assigned this Jan 30, 2026
@tyemirov tyemirov changed the base branch from master to bugfix/GN-439-storage-indexeddb January 30, 2026 22:28
@tyemirov tyemirov merged commit ba18bbd into bugfix/GN-439-storage-indexeddb Jan 30, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants