Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This PR introduces a new user-facing feature allowing hosts to customize their display name. The changes span server, relay, web, mobile, and contracts packages with new database operations and modified data flow for environment labels. New features of this scope warrant human review. You can add or adjust custom eligibility rules. Learn more. |
f7d7c28 to
1b689f9
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 1b689f955fae75ffded96473ca0e13e695cabbcd. Configure here.
a718716 to
f03974b
Compare
|
Written by inayayousfi, typed by gpt-5.6-sol running in OpenCode. Thanks for working through the server-owned naming design. PR #7267 now implements the same core approach and extends it with authorized remote editing, a native mobile rename screen, duplicate-name confirmation, an explicit live label event, and direct environment-authenticated relay synchronization with bounded retries. Would you be open to closing this PR in favor of #7267? The overlap is substantial, and keeping one implementation should reduce the review and integration burden for maintainers. The remote-access documentation added here is useful and could still be carried over separately. |
f03974b to
1ef1fec
Compare

Summary
Why
T3 Connect environment names were derived from the host operating system with no supported override. Relay-managed machines, especially remote hosts, could not choose a useful display name from the host itself.
Before / After
Before
After
The screenshots use an isolated test environment and the neutral example “Studio Mac”; no real machine hostname is shown.
Verification
vp test run packages/contracts/src/settings.test.ts apps/server/src/environment/ServerEnvironment.test.ts packages/client-runtime/src/state/server.test.ts packages/client-runtime/src/relay/discovery.test.ts infra/relay/src/environments/EnvironmentConnector.test.ts infra/relay/src/environments/EnvironmentLinks.test.ts infra/relay/src/agentActivity/AgentActivityPublisher.test.ts infra/relay/src/agentActivity/MobileRegistrations.test.ts infra/relay/src/environments/EnvironmentLinker.test.ts infra/relay/src/http/Api.test.ts— 105 tests passedvp run --filter @t3tools/contracts --filter @t3tools/client-runtime --filter t3 --filter @t3tools/web --filter @t3tools/mobile --filter t3code-relay --concurrency-limit 2 typecheckgit diff --checktest-t3-apppass: verified the new row is absent onmain, setting “Studio Mac” persists, and Connections renders the configured name without exposing the system hostnameChecklist
Note
Add
environmentLabeltoServerSettingsand let hosts set their display nameenvironmentLabeltoServerSettingsandServerSettingsPatchschemas in settings.ts, defaulting to an empty trimmed string so legacy configs decode unchanged.ServerEnvironment.getDescriptornow reads the current configured label at runtime (no restart), and the newgetDescriptorForSettingsreturns a descriptor snapshot for a given settings object in ServerEnvironment.ts.settingsUpdatedwebsocket event includes anenvironmentdescriptor in ws.ts, and clients project it into config state in server.ts.EnvironmentLinks.updateLabelForUserin EnvironmentConnector.ts, and client discovery updates labels from status descriptors in discovery.ts.ServerEnvironment.getDescriptornow depends onServerSettings; if settings cannot be read it logs a warning and falls back todefaultDescriptor. TheServerConfigSettingsUpdatedPayloadschema gains an optionalenvironmentfield that older clients will ignore.Macroscope summarized 4ae38b7.
Model: GPT-5.6 Sol | Harness: Codex in T3 Code
Note
Medium Risk
Touches live server descriptors, WebSocket config events, and relay link persistence. Label updates are gated by verified health responses and a timestamp compare-and-set, but still change shared environment identity shown across clients.
Overview
Hosts can now set a Host name in Settings → Connections. That override is stored as
environmentLabelin server settings, applied live to the environment descriptor, and used as the default name for new manual connections. Clearing it falls back to the OS-detected computer name.settingsUpdatedWebSocket events now include the environment descriptor so web/mobile presentation tracks the live label without a restart. Relay health checks persist a renamed label onto the user’s environment link (updateLabelForUser) when the verified descriptor differs, so T3 Connect clients pick up the new name.Reviewed by Cursor Bugbot for commit 4ae38b7. Bugbot is set up for automated code reviews on this repo. Configure here.