Defer sidebar decision counts until after first paint
Load the sidebar socket, conflict resynchronization, and unwatched-project refresh in a lazy background component. Keep navigation and HTTP counts available while it loads, and isolate failed chunk loads from the document. Restore the initial JavaScript budget exactly to main's limits rather than raising it. Renew only the navigation-shell review hash; its finite motion class producers and consumers are unchanged. Cover delayed loading, hidden-sidebar catch-up, and failed loading in the browser suite. Wait for the fake sidebar socket before sending live frames. Assistant-model: GPT-6.1 Sol (fast) Assistant-workflow: inline Assistant-duration: 6m30s converged, estimated unmeasured Assistant-verification: gh run view --log-failed passed: container run 37723775863 fails at bun run build, 258290 raw / 82412 gzip bytes over the raised branch budget Assistant-verification: bun run build failed: reproduced 258294 raw / 81600 gzip bytes against unchanged main limits 256000 / 81500; two earlier redirected attempts terminated by SIGTERM Assistant-verification: bun run build passed: final E2E client build 253746 raw / 80114 gzip bytes, unchanged main budget Assistant-verification: bun --bun run build passed: Bun runtime matches container gzip behavior and stays within the unchanged budget Assistant-verification: docker build passed: docker build --progress=plain --tag chopin:sidebar-ci-378 . completes; initial JavaScript 253742 raw / 80911 gzip bytes, 1501 gzip bytes below failing CI Assistant-verification: bun run fix passed: repeated after edits and local task updates, formatter changes inspected, 12 existing warnings and 0 errors Assistant-verification: bun run types passed: every workspace and E2E typecheck Assistant-verification: bun run ci failed: changed navigation-shell reviewed-owner hash; inspected unchanged finite motion data flow and renewed only that source hash Assistant-verification: bun run ci passed: formatting, lint, tokens, design contract, design record and Impeccable; no new findings Assistant-verification: bun test passed: GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=commit.gpgsign GIT_CONFIG_VALUE_0=false bun test; 4155 pass, 3 PostgreSQL-dependent skips, 0 fail Assistant-verification: playwright E2E passed: bun run e2e e2e/sidebar-decision-counts.e2e.ts e2e/smoke.e2e.ts; 31/31 including delayed-chunk catch-up and failed-chunk isolation Assistant-verification: debugger review passed: read-only review of lifecycle, current props, resync cleanup, isolated failure and test fixture readiness; no remaining production defects found Assistant-verification: git diff --check passed: no whitespace errors; apps/web/bundle-budget.ts matches origin/main exactly User-preference: Do NOT raise the budget in apps/web/bundle-budget.ts; cut sidebar code from the initial bundle instead User-preference: Do not touch apps/web chat/composer design beyond what a conflict forces User-preference: Every subagent uses openai/gpt-6.1-sol-fast:high with only the requested -fast models allowed User-preference: Keep the active gh account unchanged and push only sidebar-decision-counts with force-with-lease; do not edit the PR title or body Co-authored-by: Alex Lavaee <lavaman131@github.com>
Parent3cb1227
4 files changed+172-50
StackedSplit