Skip to content

Cosmetic fix: Sync web title with nightly server branding#3219

Merged
juliusmarminge merged 1 commit into
pingdotgg:mainfrom
StiensWout:fix/web-title-nightly-stage
Jun 20, 2026
Merged

Cosmetic fix: Sync web title with nightly server branding#3219
juliusmarminge merged 1 commit into
pingdotgg:mainfrom
StiensWout:fix/web-title-nightly-stage

Conversation

@StiensWout

@StiensWout StiensWout commented Jun 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • sync the loaded web document title with the primary server stage label
  • share nightly-version detection between the sidebar badge and title branding path
  • preserve existing stable, dev, hosted-channel, and desktop-injected branding fallbacks

Why

PR #3103 fixed the sidebar badge, but the browser tab title still used the static app display name initialized before primary server config arrives.

Impact

Nightly web sessions show T3 Code (Nightly) in the browser tab after the primary server config is available. Stable and malformed versions keep the existing fallback title.

Validation

  • vp test run apps/web/src/components/Sidebar.logic.test.ts apps/web/src/branding.test.ts
  • vp check
  • vp run typecheck

vp check reports the repository's existing unrelated warnings and no errors.


Note

Low Risk
Cosmetic branding only; no auth, data, or routing behavior changes beyond when the tab title updates.

Overview
Browser tab title now updates when primary server config loads, using the same nightly-version rules as the sidebar stage badge.

Shared helpers in branding.logic.ts (resolveServerBackedAppStageLabel, resolveServerBackedAppDisplayName) centralize the -nightly.YYYYMMDD.N check. The sidebar badge delegates to that module instead of duplicating the regex. Static document.title assignment in main.tsx is removed; DocumentTitleSync in the root route sets document.title from primaryServerConfigAtom, falling back to existing desktop, hosted-channel, and dev/alpha branding when the server is stable or the version string is malformed.

Reviewed by Cursor Bugbot for commit 8da10df. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Sync web document title with nightly server branding reactively

  • Adds DocumentTitleSync in __root.tsx to update document.title reactively on all route paths, replacing the one-time set in main.tsx.
  • Adds resolveServerBackedAppDisplayName and resolveServerBackedAppStageLabel in branding.logic.ts to detect nightly server versions via a version pattern and produce a matching display name (e.g. App (Nightly)).
  • Consolidates the nightly version pattern into branding.logic.ts, removing the duplicate from Sidebar.logic.ts.

Macroscope summarized 8da10df.

Co-authored-by: Codex <codex@openai.com>
@coderabbitai

coderabbitai Bot commented Jun 20, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: caa5f393-9528-48ab-bd85-b8f4ff2ba011

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Jun 20, 2026
@StiensWout
StiensWout marked this pull request as ready for review June 20, 2026 06:42
@macroscopeapp

macroscopeapp Bot commented Jun 20, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved

This PR extracts existing nightly-detection logic into a shared module and adds a component to dynamically update the browser tab title based on server version. The change is purely cosmetic (affects only the document title), includes comprehensive tests, and refactors code the author recently wrote.

You can customize Macroscope's approvability policy. Learn more.

@juliusmarminge
juliusmarminge merged commit 8d61172 into pingdotgg:main Jun 20, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants