Skip to content

Refine T3 Connect authorization surfaces#4159

Merged
juliusmarminge merged 1 commit into
mainfrom
agent/refine-connect-auth-surfaces
Jul 19, 2026
Merged

Refine T3 Connect authorization surfaces#4159
juliusmarminge merged 1 commit into
mainfrom
agent/refine-connect-auth-surfaces

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Jul 19, 2026

Copy link
Copy Markdown
Member

Summary

  • give the loopback OAuth callback the matching Dev, Nightly, or stable header treatment
  • remove the floating checkmark and collapse the completion guidance into one plain paragraph
  • label Dev and Nightly explicitly while keeping stable builds branded as simply T3 Code
  • apply the same stable-channel naming rule to the hosted web app

Why

The callback introduced in #3749 did not carry build-channel context consistently, and its status badge plus boxed follow-up copy made the simple completion state feel busier than necessary. Stable surfaces also exposed an unnecessary (Latest) implementation label.

Impact

Users now see a quieter callback with channel-correct artwork and consistent product naming across the CLI callback and hosted authorization surfaces.

Validation

  • vp test run apps/server/src/cloud/cliAuthHtml.test.ts apps/web/src/branding.test.ts
  • targeted vp lint for all changed files
  • vp run --filter @t3tools/web typecheck
  • vp run --filter t3 build
  • isolated browser verification for Dev and Latest branding

Note

Low Risk
Branding and static HTML/CSS only; OAuth callback behavior and token handling are unchanged.

Overview
The T3 Connect loopback OAuth completion page now reflects Dev, Nightly, or stable builds: the CLI injects __T3CODE_BUILD_CHANNEL__ at build time (nightly from version string, otherwise latest; undefined in dev), and the HTML header uses channel-specific branding and artwork (stage-dev, stage-nightly, stage-latest). Stable builds show T3 Code without a “Latest” suffix.

The completion UI is simplified—the floating checkmark and boxed “Next” copy are removed in favor of a single instruction to return to the terminal.

Hosted web naming is aligned: formatAppDisplayName omits the parenthetical when the stage label is latest, so the app displays as T3 Code instead of T3 Code (Latest).

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

Note

Refine T3 Connect authorization surfaces with stage-specific branding and HTML

  • Introduces resolveLoopbackAuthorizationStage in cliAuthHtml.ts to determine the current stage (dev, nightly, or latest) from the build-time constant __T3CODE_BUILD_CHANNEL__.
  • Updates renderLoopbackAuthorizationCompleteHtml to include stage-specific CSS classes, a data-stage attribute, and stage-aware brand labels (e.g. "T3 Code", "T3 Code (Nightly)").
  • Updates vite.config.ts to inject __T3CODE_BUILD_CHANNEL__ at build time based on whether the package version contains -nightly..
  • Updates formatAppDisplayName in branding.logic.ts to omit the stage suffix when the stage label is latest.
  • Behavioral Change: the authorization complete page no longer renders the status checkmark or "Next" informational box, and copy changes to "Return to your terminal to finish setting up T3 Connect."

Macroscope summarized 6fc0a76.

Co-authored-by: codex <codex@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Jul 19, 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: 4d6332c0-52bf-4919-8b76-bf7411023152

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
  • Commit unit tests in branch agent/refine-connect-auth-surfaces

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

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Jul 19, 2026
@juliusmarminge
juliusmarminge marked this pull request as ready for review July 19, 2026 17:19
@macroscopeapp

macroscopeapp Bot commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved

This PR adds visual branding differentiation (dev/nightly/latest) to the authorization completion page. Changes are purely presentational - CSS styling and display text only, with no modifications to authorization logic or security-sensitive code.

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

@juliusmarminge
juliusmarminge merged commit 2b180a2 into main Jul 19, 2026
21 checks passed
@juliusmarminge
juliusmarminge deleted the agent/refine-connect-auth-surfaces branch July 19, 2026 17:23
cursor Bot pushed a commit to aaditagrawal/t3code that referenced this pull request Jul 20, 2026
Co-authored-by: codex <codex@users.noreply.github.com>
(cherry picked from commit 2b180a2)
cursor Bot pushed a commit to aaditagrawal/t3code that referenced this pull request Jul 20, 2026
…ingdotgg#3749, pingdotgg#4159) (#172)

* [codex] Route OpenCode missing-session errors through Effect (pingdotgg#3608)

Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
(cherry picked from commit d0b9f8d)

* [codex] canonicalize client timestamps (pingdotgg#4112)

(cherry picked from commit da3c203)

* fix: increase OpenCode server startup timeout from 5s to 30s (pingdotgg#4132)

(cherry picked from commit 398140a)

* fix(shared): delete unused agentAwareness phase predicates (pingdotgg#4134)

(cherry picked from commit e8ff6bc)

* perf(client): defer active thread cache writes (pingdotgg#4006)

(cherry picked from commit 765e1b5)

* fix(client): use lightweight connection probe (pingdotgg#4137)

(cherry picked from commit 2640e6d)

* fix(client): adapt deferred thread cache tests for fork warm-cache

Fork warm-cache seeding stays on synchronizing and must not re-persist
active turns. Gate the seed persistence write with shouldPersistThread
and drive the pingdotgg#4006 regression test to live via a socket snapshot.

Co-authored-by: aaditagrawal <aaditagrawal@users.noreply.github.com>

* feat(web): themed sidebar header art for nightly and dev builds (pingdotgg#4130)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Julius Marminge <jmarminge@gmail.com>
(cherry picked from commit 53e3c98)

* feat: add headless `t3 connect` setup for SSH hosts (pingdotgg#3749)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: codex <codex@users.noreply.github.com>
(cherry picked from commit 7a820ab)

* Refine T3 Connect authorization surfaces (pingdotgg#4159)

Co-authored-by: codex <codex@users.noreply.github.com>
(cherry picked from commit 2b180a2)

---------

Co-authored-by: Wout Stiens <71498452+StiensWout@users.noreply.github.com>
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Maxwell Young <maxtheyoung@gmail.com>
Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com>
Co-authored-by: Kriday Dave <technocratix902@gmail.com>
Co-authored-by: Chris Michael Guzman <67719167+Chrrxs@users.noreply.github.com>
Co-authored-by: eeinarsson <128746408+eeinarsson@users.noreply.github.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: aaditagrawal <aaditagrawal@users.noreply.github.com>
Co-authored-by: maria <maria@kuuro.net>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <jmarminge@gmail.com>
Co-authored-by: Theo Browne <me@t3.gg>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: codex <codex@users.noreply.github.com>
adamfgr pushed a commit to agriffiths-bots/t3code that referenced this pull request Jul 20, 2026
* Add isolated app testing workflow (pingdotgg#4121)

Co-authored-by: codex <codex@users.noreply.github.com>

* feat(web): themed sidebar header art for nightly and dev builds (pingdotgg#4130)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Julius Marminge <jmarminge@gmail.com>

* feat: add headless `t3 connect` setup for SSH hosts (pingdotgg#3749)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: codex <codex@users.noreply.github.com>

* Refine T3 Connect authorization surfaces (pingdotgg#4159)

Co-authored-by: codex <codex@users.noreply.github.com>

* fix: increase OpenCode server startup timeout from 5s to 30s (pingdotgg#4132)

* fix(shared): delete unused agentAwareness phase predicates (pingdotgg#4134)

* fix(mobile): Stabilize native stack option updates (pingdotgg#4037)

Co-authored-by: codex <codex@users.noreply.github.com>

* Make test-t3-app skill discoverable by Claude Code (pingdotgg#4162)

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

* fix(web): improve dev sidebar backdrop contrast & remove version pills (pingdotgg#4166)

* Fix draft banner stack overlap (pingdotgg#4164)

Co-authored-by: codex <codex@users.noreply.github.com>

* Add portable mobile app testing guidance (pingdotgg#4165)

Co-authored-by: codex <codex@users.noreply.github.com>

* fix(client): use lightweight connection probe (pingdotgg#4137)

---------

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: maria <maria@kuuro.net>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <jmarminge@gmail.com>
Co-authored-by: Theo Browne <me@t3.gg>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com>
Co-authored-by: Kriday Dave <technocratix902@gmail.com>
Co-authored-by: eeinarsson <128746408+eeinarsson@users.noreply.github.com>
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:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant