Repository navigation
fix(server): T3 Connect clients are named "T3 Connect", not "T3 Connect connect" - #27887
juliusmarminge wants to merge 2 commits into
Conversation
…abel A credential minted for T3 Connect should show as "T3 Connect" in Settings > Sharing & access > Authorized clients. This test signs a valid cloud mint proof, calls CloudLink.mintCredential, and records the label passed to EnvironmentAuth.createPairingLink. It fails on main, which passes "T3 Connect connect". Reproduces #27881. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Settings > Sharing & access > Authorized clients listed T3 Connect sessions as "T3 Connect connect". The cloud mint path hardcoded that label, a leftover of the T3 Cloud -> T3 Connect rename turning "T3 Cloud connect" into a doubled word. New sessions now get the label "T3 Connect". Labels already stored are left as they are. Fixes #27881 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ApprovabilityVerdict: Needs Human Approval Macroscope's review found this PR requires human approval — New T3 Connect clients will be named "T3 Connect" rather than "T3 Connect connect", with authentication behavior unchanged. Human confirmation is required for the change to the automatically assigned client name. You can add or adjust custom eligibility rules. Learn more. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Mint label and verification apps/server/src/cloud/CloudLink.ts, apps/server/src/cloud/CloudLink.test.ts |
The mint path uses the label “T3 Connect.” The test harness captures pairing-link labels, and a signed mint-request test checks the captured value. |
Estimated code review effort: 2 (Simple) | ~8 minutes
Change: Bug fix · Severity of issue fixed: Low
Possibly related PRs
- pingdotgg/t3code#27197: Both changes affect
CloudLink.mintCredential; this PR changes the label used when creating a pairing link.
Suggested reviewers: t3dotgg, macroscopeapp
Merge Risk: 
Minimal · up to 13c5e
-
New T3 Connect sessions receive the corrected label. No merge-blocking risk was identified.
Pre-merge checks: 
3 · 
1
-
Failed checks: 1 warning Passed checks: 3 passed-
Full details: Out of Scope Changes check
-
Explanation
The changes are limited to the cloud mint label and focused automated test support. The label correction and test directly implement the naming objective in issue [
#27881]. No unrelated product behavior is changed.
-
Full details: Linked Issues check
-
Explanation
Issue [
#27881] requires replacing the repeated label and providing a distinguishing detail when multiple sessions have identical metadata.CloudLink.mintCredentialchanges the label to"T3 Connect", and the added test verifies that label. The implementation does not add a per-session or per-device distinguishing detail, so identical sessions can still have identical names.Resolution
Implement and test a stable distinguishing detail for sessions that share the same visible metadata. Keep the corrected
"T3 Connect"label as the base name if appropriate.
-
Finishing Touches
-
📝 Generate docstrings
-
- Commit to this branch
- Create a new PR
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Comment @coderabbitai help to get the list of available commands.
Problem
Every client that connects through T3 Connect appears in Settings → Sharing & access → Authorized clients (and in
t3 auth pairing list) as "T3 Connect connect". The cloud mint path hardcodes that label. It was "T3 Cloud connect" until the T3 Cloud → T3 Connect rebrand (22f9f30), whose find/replace doubled the word.Reproduced on main (cb9629e): a server started in an isolated home, sent a signed request to the real
POST /api/t3-connect/mint-credentialroute, lists the issued pairing link as(T3 Connect connect).Change
CloudLink.mintCredentialnow passeslabel: "T3 Connect"tocreatePairingLink. The subject, scopes, TTL and proof binding are unchanged, and nothing reads the label for access decisions. Labels stored before this change keep their old text until those sessions expire. A new connect creates a session with the new label.Scope and approval
Fixes #27881
This PR only fixes the doubled word. Telling apart several sessions with identical device metadata, which the issue also mentions, is not changed here.
Verification
vp test run apps/server/src/cloud/CloudLink.test.ts: 7/7 pass. The new testnames T3 Connect sessions "T3 Connect" in authorized clientscalls the realmintCredentialwith an Ed25519-signed mint proof. On main it fails withexpected [ 'T3 Connect connect' ] to deeply equal [ 'T3 Connect' ].vp run check:changed: format, lint, knip, graphql, typecheck (3 packages) and tests (3 files) pass.t3 serve --base-dir <fresh isolated home>, empty database). A throwaway mint key, cloud user id and issuer were written to that home's secrets (synthetic values). The driver sent one signed mint request, then rant3 auth pairing list:POST /api/t3-connect/mint-credential -> HTTP 200POST /api/t3-connect/mint-credential -> HTTP 200b0b471be-… (T3 Connect connect)8b0fbfe5-… (T3 Connect)Not checked:
AuthorizedClientsSettings.tsx), but the captures and the driver script could not be uploaded from the triage machine, so none are attached here.Model and harness: Claude Opus 5.5 (lead, red test, fix, review B) and GPT-6.1 Sol (review A, proof audit) in T3 Code.
🤖 Generated with Claude Code