Skip to content

docs(console): fix VITE_SERVER_URL dev defaults and dev-proxy scope in READMEs - #5803

Merged
os-zhuang merged 1 commit into
mainfrom
claude/issue-5766-readme-env-drift
Aug 23, 2026
Merged

docs(console): fix VITE_SERVER_URL dev defaults and dev-proxy scope in READMEs#5803
os-zhuang merged 1 commit into
mainfrom
claude/issue-5766-readme-env-drift

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

Fixes#5766

What changed

PR #5765 emptied VITE_SERVER_URL in both console dev env files (same-origin by default, per the 2026-08-23 ruling on #5702). Three doc-prose items had drifted from that outcome:

  1. apps/console/README.md (Quick Start + Development Mode) — said VITE_SERVER_URL defaults to http://localhost:3000. It now ships empty; the Vite dev proxy forwards /api/* to http://localhost:3000 by default, or to DEV_PROXY_TARGET when set.
  2. examples/console-starter/README.md (Backend table) — tabulated the old non-empty .env.development/.env.production values. Both files ship empty (same-origin); the table and surrounding prose now say so and give the same DEV_PROXY_TARGET recipe.
  3. apps/console/README.md claimed the dev proxy covers /api/* and /_account/*. vite.config.ts (lines 709-711) only ever proxied /api. Per triage discretion on Console and console-starter READMEs state VITE_SERVER_URL dev defaults that no longer exist, and claim a /_account/* dev proxy that never existed #5766 this fixes the doc rather than widening the proxy: zero first-party producers of /_auth///_account/ action targets exist on origin/main (verified: ActionRunner.ts:1343/1362 only define the regex that would route such a target; the only other hits are CHANGELOG entries, one ActionRunner test, and doc prose), and apps/console/src/App.tsx:7 records /_account/* as being retired into the Console SPA. If a real producer of /_auth///_account/ action targets appears, the config half (widening the proxy) reopens as its own card — not folded into this one.

Verification

  • Re-anchored the issue's citations against the current tree before editing: apps/console/README.md:35-36 and :52-54 (line numbers matched what the issue quoted), examples/console-starter/README.md's Backend table (lines 89-92), and apps/console/vite.config.ts:709-711 (proxy config, /api only, unchanged).
  • Confirmed both .env.development files (console and console-starter) still carry the DEV_PROXY_TARGET recipe in their comments, as triage asked.
  • Confirmed PR Converge the dev stacks on one origin: empty VITE_SERVER_URL, proxy for the split host #5765 (Dev and split-host configs point VITE_SERVER_URL at an origin the page is not served from — the ruled prerequisite for #5702's sameOriginOnly default #5745) is on this branch's base: bc21c704b is present in git log origin/main, and 9850c6e4e (the commit the issue's reachability scan cites) is an ancestor of origin/main.
  • node scripts/check-doc-links.mjsLinks are valid across 13 scan roots. (exit 0).
  • node scripts/check-control-bytes.mjsOK (scanned 4827 tracked text file(s); skipped 85 binary).
  • node scripts/check-changeset-presence.mjs0 of them under the src/ of a package the release covers → no changeset owed (README-only diff, not guarded source).
  • Diff is prose-only, two files, no code/config touched (vite.config.ts not edited, per the card's instruction).

Out of scope

Filed #5802 (unassigned): content/docs/guide/console.md (lines 18 and 55) has the same stale VITE_SERVER_URLhttp://localhost:3000 default drift, but sits outside this card's two-README scope.


Generated by Claude Code

…n READMEs
PR #5765 emptied VITE_SERVER_URL in both dev env files (same-origin by
default, per the 2026-08-23 ruling on #5702). Three doc-prose items had
drifted from that:
1. apps/console/README.md's Quick Start and Development Mode sections still
said VITE_SERVER_URL defaults to http://localhost:3000 — it now ships
empty, with the Vite dev proxy (DEV_PROXY_TARGET, defaulting to
http://localhost:3000) forwarding /api/* to the backend.
2. examples/console-starter/README.md's Backend table still tabulated the
old non-empty .env.development/.env.production values — both now ship
empty (same-origin), documented with the same DEV_PROXY_TARGET recipe.
3. apps/console/README.md claimed the dev proxy covers /api/* and
/_account/* — vite.config.ts only ever proxied /api. Per triage
discretion on #5766 (zero first-party producers of /_auth/ or /_account/
action targets on origin/main, and /_account is recorded as retired into
the console SPA), this fixes the doc rather than widening the proxy:
states /api/* only and notes /_auth/* and /_account/* are not proxied.
Fixes#5766
Filed #5802 (out of scope) for the same stale-default drift in
content/docs/guide/console.md, which sits outside this card's scope.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EuPCi56cnGyykygi3z9w4m
@github-actions

Copy link
Copy Markdown
Contributor

✅ Console Performance Budget

MetricValueBudget
Eager closure (gzip, 52 chunks)3225.3 KB3990.2 KB
Main entry chunk (gzip)152.6 KB350 KB
Entry fileindex-CFheyJw7.js
StatusPASS

The eager closure is every chunk the entry reaches through static imports — what the browser fetches and parses before the app renders. The entry chunk on its own is a small fraction of it.


📦 Bundle Size Report

PackageSizeGzipped
app-shell (consoleActionDispatch.js)0.20KB0.19KB
app-shell (index.js)10.04KB3.72KB
app-shell (runtime-config.js)12.80KB4.47KB
app-shell (types.js)0.01KB0.04KB
app-shell (urlParams.js)10.06KB3.86KB
auth (ActiveOrganizationStorage.js)25.05KB9.16KB
auth (AuthContext.js)0.31KB0.24KB
auth (AuthGuard.js)2.07KB1.00KB
auth (AuthProvider.js)33.99KB8.57KB
auth (AuthShell.js)3.49KB1.40KB
auth (ForgotPasswordForm.js)12.21KB3.45KB
auth (LoginForm.js)18.15KB5.39KB
auth (PreviewBanner.js)0.90KB0.50KB
auth (RegisterForm.js)6.65KB2.22KB
auth (SocialSignInButtons.js)9.61KB3.89KB
auth (UserMenu.js)3.41KB1.23KB
auth (auth-gate-events.js)1.29KB0.66KB
auth (authStyles.js)5.04KB1.72KB
auth (createAuthClient.js)40.21KB10.80KB
auth (createAuthenticatedFetch.js)8.46KB3.43KB
auth (index.js)3.19KB1.44KB
auth (invitation-status.js)1.22KB0.70KB
auth (org-roles.js)6.66KB2.78KB
auth (phone-identifier.js)1.11KB0.66KB
auth (types.js)0.59KB0.35KB
auth (useAuth.js)5.30KB1.02KB
auth (useWorkspaceAdminStatus.js)5.13KB2.35KB
collaboration (CommentThread.js)26.08KB7.56KB
collaboration (LiveCursors.js)3.17KB1.27KB
collaboration (PresenceAvatars.js)6.49KB2.64KB
collaboration (PresenceProvider.js)2.79KB1.13KB
collaboration (index.js)1.68KB0.73KB
collaboration (useCollaborationTranslation.js)6.05KB2.52KB
collaboration (useCommentSearch.js)1.98KB0.88KB
collaboration (useConflictResolution.js)7.75KB1.86KB
collaboration (useMentionNotifications.js)1.81KB0.68KB
collaboration (usePresence.js)6.33KB1.84KB
collaboration (useRealtimeSubscription.js)7.91KB2.01KB
components (index.js)503.96KB113.94KB
core (index.js)4.92KB1.97KB
create-plugin (index.js)10.08KB3.26KB
data-objectstack (index.js)164.55KB45.67KB
fields (index.js)238.40KB59.89KB
i18n (LocalizationContext.js)1.76KB0.96KB
i18n (currency.js)1.22KB0.64KB
i18n (i18n.js)4.28KB1.75KB
i18n (index.js)3.44KB1.39KB
i18n (pickLocalized.js)7.62KB3.26KB
i18n (provider.js)23.13KB7.63KB
i18n (useDisplayLocale.js)2.85KB1.45KB
i18n (useObjectLabel.js)33.40KB8.71KB
i18n (useSafeTranslation.js)7.77KB3.13KB
layout (index.js)38.95KB10.97KB
mobile (MobileProvider.js)0.92KB0.49KB
mobile (ResponsiveContainer.js)0.94KB0.38KB
mobile (breakpoints.js)1.51KB0.70KB
mobile (createOfflineDataSource.js)5.61KB1.75KB
mobile (index.js)1.55KB0.62KB
mobile (offlineQueue.js)3.91KB1.35KB
mobile (pwa.js)0.97KB0.49KB
mobile (serviceWorker.js)1.48KB0.62KB
mobile (serviceWorkerSource.js)3.41KB1.48KB
mobile (useBreakpoint.js)1.54KB0.65KB
mobile (useGesture.js)6.96KB1.98KB
mobile (useOfflineSync.js)1.99KB0.72KB
mobile (usePullToRefresh.js)2.53KB0.85KB
mobile (useResponsive.js)0.72KB0.42KB
mobile (useResponsiveConfig.js)1.37KB0.63KB
mobile (useSpecGesture.js)4.32KB1.64KB
mobile (useTouchTarget.js)1.01KB0.54KB
permissions (MePermissionsProvider.js)9.53KB3.38KB
permissions (PermissionContext.js)0.31KB0.25KB
permissions (PermissionGuard.js)0.89KB0.45KB
permissions (PermissionProvider.js)4.64KB1.50KB
permissions (evaluator.js)5.12KB1.74KB
permissions (index.js)0.93KB0.41KB
permissions (store.js)0.91KB0.42KB
permissions (useFieldPermissions.js)1.28KB0.53KB
permissions (usePermissions.js)1.93KB0.88KB
plugin-ai (index.js)15.75KB3.80KB
plugin-calendar (index.js)46.62KB12.83KB
plugin-charts (index.js)64.65KB18.32KB
plugin-chatbot (index.js)181.41KB43.22KB
plugin-dashboard (index.js)128.41KB32.95KB
plugin-designer (index.js)212.30KB42.80KB
plugin-detail (index.js)242.34KB60.99KB
plugin-editor (index.js)2.46KB1.10KB
plugin-form (index.js)125.63KB30.64KB
plugin-gantt (index.js)164.10KB39.87KB
plugin-grid (index.js)200.79KB54.26KB
plugin-kanban (index.js)52.93KB14.60KB
plugin-list (index.js)111.80KB27.20KB
plugin-map (index.js)20.06KB6.62KB
plugin-markdown (index.js)13.72KB4.69KB
plugin-report (index.js)43.49KB11.93KB
plugin-timeline (index.js)26.49KB7.59KB
plugin-tree (index.js)8.50KB2.88KB
plugin-view (index.js)84.61KB20.74KB
providers (DataSourceProvider.js)0.75KB0.39KB
providers (MetadataProvider.js)1.37KB0.59KB
providers (ThemeProvider.js)1.90KB0.85KB
providers (UploadProvider.js)11.66KB3.50KB
providers (index.js)0.45KB0.23KB
providers (types.js)0.01KB0.04KB
react-runtime (index.js)5.62KB2.34KB
react (LazyPluginLoader.js)3.77KB1.33KB
react (SchemaRenderer.js)44.39KB14.99KB
react (data-invalidation.js)5.05KB2.08KB
react (index.js)1.33KB0.69KB
react (schema-input.js)2.32KB1.24KB
react (spec-input.js)0.20KB0.18KB
sdui-parser (codegen.js)5.41KB2.34KB
sdui-parser (dashboard-widget-options.js)3.08KB1.30KB
sdui-parser (index.js)4.93KB2.24KB
sdui-parser (input-type.js)2.84KB1.40KB
sdui-parser (parse.js)12.13KB3.65KB
sdui-parser (provenance.js)3.66KB1.82KB
sdui-parser (types.js)0.28KB0.23KB
sdui-parser (validate.js)7.54KB2.63KB
types (ai.js)0.20KB0.17KB
types (api-types.js)0.20KB0.18KB
types (app.js)2.87KB0.99KB
types (base.js)0.20KB0.18KB
types (blocks.js)0.20KB0.18KB
types (complex.js)0.20KB0.18KB
types (crud.js)0.20KB0.18KB
types (dashboard-filter-alias.js)6.23KB2.74KB
types (data-display.js)0.20KB0.18KB
types (data-protocol.js)0.20KB0.19KB
types (data.js)0.20KB0.18KB
types (designer.js)1.87KB0.85KB
types (disclosure.js)0.20KB0.18KB
types (error-code.js)1.54KB0.88KB
types (feedback.js)0.20KB0.18KB
types (field-types.js)0.20KB0.18KB
types (form.js)0.20KB0.18KB
types (http-inflight.js)8.87KB3.73KB
types (http-retry.js)4.32KB2.02KB
types (index.js)3.88KB1.85KB
types (layout.js)0.20KB0.18KB
types (managed-by.js)0.19KB0.18KB
types (mobile.js)2.59KB1.31KB
types (navigation.js)0.20KB0.18KB
types (objectql.js)0.20KB0.18KB
types (overlay.js)0.20KB0.18KB
types (permissions.js)0.20KB0.18KB
types (plugin-scope.js)0.20KB0.18KB
types (record-components.js)0.20KB0.19KB
types (record-semantics.js)1.28KB0.67KB
types (registry.js)0.20KB0.18KB
types (reports.js)0.20KB0.18KB
types (spec-report.js)5.05KB1.93KB
types (spec-ui-namespace.js)0.20KB0.19KB
types (system-fields.js)3.33KB1.54KB
types (theme.js)3.40KB1.68KB
types (ui-action.js)3.40KB1.71KB
types (views.js)0.20KB0.18KB
types (widget.js)0.20KB0.18KB

Size Limits

  • ✅ Core packages should be < 50KB gzipped
  • ✅ Component packages should be < 100KB gzipped
  • ⚠️ Plugin packages should be < 150KB gzipped

@os-zhuang
os-zhuang marked this pull request as ready for review August 23, 2026 11:58
@os-zhuang
os-zhuang added this pull request to the merge queueAug 23, 2026
Merged via the queue into main with commit 7b88aa9Aug 23, 2026
21 checks passed
@os-zhuang
os-zhuang deleted the claude/issue-5766-readme-env-drift branch August 23, 2026 11:58
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Console and console-starter READMEs state VITE_SERVER_URL dev defaults that no longer exist, and claim a /_account/* dev proxy that never existed

2 participants

@os-zhuang@claude