Repository navigation
chore: sync with upstream/main (8d3b06112) - #73
Conversation
pingdotgg#22570) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#22557) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#22575) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#22561) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…event-driven (pingdotgg#22565) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ing parent (pingdotgg#22581) Co-authored-by: syberia <n.kuhtin@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…g#22588) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…tgg#22589) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#23124) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
pingdotgg#23389) Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…desktop updates (pingdotgg#23113) Co-authored-by: PR Batch Tester <agent@local.test> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
pingdotgg#23454) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Merge 896 upstream commits into the fork. Two of them implement parts of fork ADRs, and the fork now uses upstream's versions; the ADRs record what remains. - Upstream pingdotgg#21032 renamed "Start from origin" to "Start from remote": it fetches the base branch's tracked remote, an explicit ref such as upstream/main, or origin. That meets ADR 0009's own retirement condition, so the fork drops startFromRemote, WorktreeStartRemote, the status remoteNames and GitWorkflowService.resolveWorktreeBase on server, web, mobile, MCP and agent instructions. Saved strategies and drafts still load. The fetch-stage detail and fallback warning and the exact-match ref ordering stay (ADR 0009). Existing-branch worktrees reject startFromOrigin instead of a start remote (ADR 0008). - Upstream pingdotgg#22492 added RepositoryOrigin.remoteUrl itself, and pingdotgg#22180 added a dialog that clones a project to another machine from Run on. Web's settings "Add checkout" now opens that dialog instead of the command palette, and the dialog strips credentials from the URL it clones. Mobile keeps its rows inside upstream's new Checkouts section (ADR 0022). - Upstream pingdotgg#20907 recovered Beta-renamed desktop catalogs and was reverted by pingdotgg#22219; the fork keeps its Linux migration (ADR 0021). - Fork code re-applied on upstream's refactors: the scheduled-task resolver on pingdotgg#16595's option merge (ADR 0016), the composer and palette hooks (ADR 0008), the PR page logic modules and Azure DevOps Server authorities (ADR 0002), mobile update checks on public release pages and the outdated-server offer (ADR 0011), and the settings writer (ADR 0009). - Upstream pingdotgg#22557 deleted many low-signal tests. Base tests it deleted stay deleted; fork-added tests stay, and fork browser tests use upstream's disposable render. - CI (ADR 0011): upstream-only workflows stay deleted. ci.yml takes the Electron cache and the Expo GraphQL check. The release workflow drops its own Node pin for pingdotgg#23165's engines.node. ci-changes.cjs returns because upstream's check:changed reads it. - ADRs compare against 8d3b061.
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. |
… isRemoteReachableHost Upstream pingdotgg#22557 deleted the tests that were the only references knip followed to scripts/resolve-nightly-release.ts and to isRemoteReachableHost in the fork. release-smoke.ts still runs the resolver by path, and the fork's auth policy uses isRemoteReachableServer instead of the host check.
|
Thanks for this sweep. It's a big one, and several pieces land well: the Tailscale status cache keyed on addresses, SIGKILL exit reporting, and the narrow 422 catch in the thread-transfer report are all careful work. OverviewSummary. This PR covers several areas:
It also deletes a large number of tests for behaviour that this PR leaves unchanged and still running. That is the main risk here. Most of the Main Issues below are about coverage lost on paths users hit every day, not about bugs in the new code. Good points
Main Issues
If these deletions are deliberate (for example, a suite trim to satisfy the new no-polling lint rules), please say so in the PR description so maintainers can accept the coverage loss knowingly. Additional Notes
|
…g-derived state The primary environment, server configs and project list derive from the connection catalog. When its load landed mid-test under CI load, it replaced the seeded values, so the thread-checkout PR link tests and the sidebar group resolution test failed intermittently. The tests now seed plain atoms, as upstream's do, and stub the opener's click-time project read.
|
Thanks for pulling this sync together. It covers a lot of ground, and the targeted fixes are well thought out. OverviewSummary
On the CI side, it adds change-based job gating ( The main risk is not in the new code. The sync deletes a large number of tests for code it leaves unchanged, and some of the new behavior has no positive test. Good points
Main Issues
Additional Notes
|
|
Replying to the review overview: every main issue and additional note is on a file identical to The two |
|
Thanks for the follow-up. This push is small and tidy, and I found nothing new that needs changing. OverviewSummary
The inline threads from the last review (removed tests, the device scale factor that can't be cleared, Zed allowlist coverage) aren't touched by this push. I haven't reposted them. Good points
Main IssuesNone in this push. Additional Notes
|
|
Replying to the second overview: its main issues are the six threads I already declined and resolved. The additional notes cover The one exception is |
There was a problem hiding this comment.
💡 Codex Review
t3code/apps/web/src/hooks/useOpenPullRequestList.ts
Lines 59 to 62 in a0e75f0
When a grouped project has a checkout on a disconnected primary environment and another on a connected environment, this search examines the primary representative first and checks only its cached capability. Because enabled environments retain their server configuration while offline, the hook can scope the pull-request page to the disconnected checkout, leaving it unable to query even though a usable checkout exists. Prefer connected candidates before falling back to cached/offline ones.
AGENTS.md reference: AGENTS.md:L65-L75
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Re the Codex P2 on |
Problem
The fork is 896 commits behind
upstream/main. This sync keeps the features recorded indocs/adrand uses upstream's implementation wherever it can.Change
Merged
pingdotgg/t3codemain at8d3b061121fe65669d5d43d011b48cd3027a4108. 100 files conflicted. Most conflicts came from three upstream changes: pingdotgg#22557 deleted about 258k lines of low-signal tests, ChatView and the command palette were split into hooks, and pingdotgg#21032 reworked where new worktrees start.Upstream implemented part of two ADRs, and the fork now uses upstream's version
upstream/main), or origin. ADR 0009 said to drop the fork's upstream source once upstream could start from a remote other than origin, so the fork's version is gone:startFromRemote,WorktreeStartRemote,resolveWorktreeStartRemote, the statusremoteNames, andGitWorkflowService.resolveWorktreeBase. This covers server, web, mobile, MCP tools and agent instructions.startFromOriginbeside it. I read the live database read-only: all six stored tasks havestartFromOrigin: true. Web drafts saved with"origin"keep Start from remote on. Mobile drafts and queued tasks fall back to the configured default.origin/main at abc1234), the "not found, using local branch" warning, and the exact-match-first ref search.RepositoryOrigin.remoteUrl, the same field the fork had added, so the fork keeps upstream's.useAddProjectTargets, which means two losses on web: machines without clone permission are no longer listed as disabled, and projects without a remote get no folder fallback.cloneUrlForProtocolpasses a same-protocol URL through unchanged, token included.Other upstream overlaps (ADR notes added)
authoritytoo. GitManager's PR repository key now takes the authority shortcut only for Forgejo, skipping_gitrepositories, and a new test covers it. fix(server): Forgejo and GitCafe pull requests link to their threads again pingdotgg/t3code#22937's Forgejo/pulls/case keeps the port, as ADR 0002 requires.releaseRepositorytoo.Fork code re-applied on upstream's refactors
useComposerSelection/useComposerSend. The palette's "New thread on branch" moves into the split palette.useSettingsWriter.t3code/require-disposable-renderandprefer-effect-fnrules flagged five fork files. Four browser tests (ADRs 0004, 0014, 0018 and shared PR summaries) now useawait using screen = await render(...). The ADR 0021 safe-storage method usesEffect.fn.Tests
startFromRemotealone.CI (ADR 0011)
vercel-deployment-output.test.cjs, which reads them.ci.ymltakes upstream's Electron download cache and the new Expo GraphQLgenerate --checkstep.engines.node(26.12.1).server-linux-release.ymldrops itsVP_NODE_VERSION: 26.8.2pin, which would now fail the build.ci-changes.cjsis back, because upstream'svp run check:changedimports it. Theci-changesaction stays dropped.Follow-ups after the first CI run
scripts/resolve-nightly-release.tsand toisRemoteReachableHostin the fork.knip.jsoncnow lists the resolver as an entry, sincerelease-smoke.tsruns it by path. The helper is no longer exported, because the fork's auth policy usesisRemoteReachableServer.git show --remerge-diffon the merge commit (16944c7) shows the whole fork-side resolution. ADRs now compare against8d3b06112.Scope and approval
This is a maintainer-requested sync of the fork onto upstream. Every fork divergence is covered by an ADR in
docs/adr.Verification
vp fmt --checkis clean on all 253 files that differ from upstream.vp linton them has 0 errors; the warnings are upstream's.node --test .github/scripts/*.test.cjs. Browser tests ran in real Chromium.pinnedRuntimetest copies/bin/sleep, which this NixOS machine lacks.generate --checksteps pass.vp check, knip, the full suites), per AGENTS.md; CI runs them. I did not do a manual UI pass in a real client.Model: Claude Opus 5.5; harness: Claude Code in T3 Code.
🤖 Generated with Claude Code