fix(web): keep server storage off the startup bundle; form-field defaults on sign-in

PwaService imported isBackendUrl from the @iptvnator/services/server-storage
barrel, which pulled the whole storage subsystem (sync, migration, API
client) into main, though server mode loads it by dynamic import. The
helper now lives with the token helpers in @iptvnator/services
(re-exported from the interceptor): renderer.initialBytes 1,392,902 ->
1,357,795 bytes locally.

The remaining 11,988 bytes over #1931's baseline are what must run
before the first route (instance probe, connection status, token bound to
its instance, storage backend and write serialization); the baseline is
raised with a note, under the PR's perf-baseline-increase label.

The sign-in component provides the form-field defaults per component, as
master's check (#1928) now requires.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
4grayandClaude Opus 5.5 committed 2026-10-14 14:58:25 +02:00
1 parent dfe48f59a0
commit 176108b682
5 files changed
+40 -32

No files matched your search

+6 -5
View File
@@ -3,12 +3,13 @@
"journeys": {
"launch": {
"renderer.initialBytes": {
"value": 1345807,
"value": 1357795,
"unit": "bytes",
"slack": 4096,
"updatedAt": "2026-10-13",
"evidencePr": 1931,
"measuredWith": "pnpm nx build web && pnpm run perf:initial-bytes"
"updatedAt": "2026-10-14",
"evidencePr": 1903,
"measuredWith": "pnpm nx build web && pnpm run perf:initial-bytes",
"note": "Raised by 11,988 bytes (0.9%) over #1931's 1,345,807 for self-hosted server storage: what must run before the first route stays on the startup path (the /v1/instance probe and remembered server, the connection status, the access token bound to its instance, the playlist storage backend with its per-playlist write serialization). The storage code itself (user-data sync, migration, sign-in, Settings > Server) loads by dynamic import in server mode only."
},
"renderer.ipcCallsToFirstCard": {
"value": 15,
@@ -26,7 +27,7 @@
"updatedAt": "2026-10-12",
"evidencePr": 1903,
"measuredWith": "J1 launch A/B on macOS (pnpm run perf:journeys builds, launch journey only): master 6fe684af5 555, PR 1903 556 in every iteration; CI measured 569 on master",
"note": "Raised by 1 for self-hosted server storage: its new lazy chunks (server sign-in, server-storage providers, Settings > Server) split one shared initial chunk in two, so index.html carries one more modulepreload link, a node the parser inserts. Initial bytes stay within their baseline."
"note": "Raised by 1 for self-hosted server storage: its new lazy chunks (server sign-in, server-storage providers, Settings > Server) split one shared initial chunk in two, so index.html carries one more modulepreload link, a node the parser inserts. Initial bytes are raised separately (see renderer.initialBytes)."
},
"main.modulesRegisteredBeforeWindow": {
"value": 2,