Repository navigation
Conversation
Windows drive paths were parsed as SCP-style SSH remotes, so Add to another machine offered an invalid HTTPS rewrite. Reject them using the existing Windows path helper and preserve valid single-letter SSH hosts. Code and regression tests written by GPT-6 Astra at high reasoning through the Codex harness in T3 Code.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This focused bug fix prevents local Windows drive paths from being misclassified as SSH remotes, while preserving valid single-letter SSH hosts. It changes only the shared parser and adds targeted regression coverage, with no schema, default, deployment, or static-analysis configuration impact. You can add or adjust custom eligibility rules. Learn more. |
|
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
|
Thanks for this. Before a bug fix is taken further, the bug is reproduced on current main, and here it did not appear. We ran your steps on current main (5abf383) with a Windows machine as the source environment and a second environment connected and paired in, so a machine without the project was available. A project whose origin is C:\repos\project.git (we also tried C:/repos/project.git) never shows the machine selector or "Add to another machine", so the clone dialog and its SSH/HTTPS switch cannot be opened for it. A control project with origin git@github.com:acme/widget.git on the same setup did offer the option, and its dialog showed the protocol toggle as expected. The reason is on the server: when it builds a project's repository identity it already discards remotes that look like a Windows drive path. Such a project has no identity, the add-to-machine option is not offered, and the dialog only reads its clone URL from that identity. The clone URL helper would indeed misread a drive path as SSH if it were given one, but the app never passes one in, so we could not show a user-facing bug for this pull request to fix. Closing this pull request. If it still happens for you, please open an issue with the exact steps, what you see, and the version and platform you are on; a fix is picked up from there. |
A local Windows remote such as
C:\repos\project.gitis classified as SSH. In Add to another machine, switching it to HTTPS produces an invalid address:Reuse
isWindowsDrivePathbefore parsing network URLs. The dialog then preserves the original path and offers no protocol switch; the server's clone fallback uses the same helpers.This is a small, focused obvious-bug fix under CONTRIBUTING: two files, 20 added lines, no dependency or contract changes. Tests cover both drive-letter cases and separators while preserving valid single-letter SSH hosts.
Verification
Rechecked against
mainat8b44f42b14after resolving the conflict with its newer Azure URL tests:vp test run packages/shared/src/cloneUrl.test.ts: with the unpatched parser, the two Windows backslash cases fail (26 pass); with the fix, all 28 pass, including Azure credentials, host/path mapping, and custom-port cases.vp run check:changed --concurrency 1: passed format, lint, both knip passes, typechecks for all 34 affected packages, and 29 tests across two selected files. CI owns the full suites, build, and release smoke checks.Validation ran on Linux with Node 26.12.1. No native Windows clone or browser flow was exercised.
Original code and regression tests: GPT-6 Astra through the Codex harness in T3 Code. Conflict resolution, review, and refreshed verification: GPT-6.1-Sol through the Codex harness in T3 Code.