githubnext/chopinPublic

Let's compose rich plans together

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>
ALAlex Lavaee authored
f473d41Patch
Parentb9a3671
4 files changed+172-50
StackedSplit
apps/web/bundle-budget.ts+2 โˆ’3
apps/web/src/navigation-shell.tsx+35 โˆ’47
apps/web/src/sidebar-decision-counts.tsx+67 โˆ’0
e2e/sidebar-decision-counts.e2e.ts+68 โˆ’0