Repository navigation
Conversation
There was a problem hiding this comment.
All clear
Posted via Macroscope — Effect Service Conventions
There was a problem hiding this comment.
All clear
Posted via Macroscope — Effect Service Conventions
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — The PR narrowly corrects deep-link and reconnect handling by distinguishing cached data from live shell authority and using the existing socket snapshot protocol for legacy servers. Its production changes are localized, backward-compatible at the protocol level, and accompanied by focused route and synchronization regression tests. You can add or adjust custom eligibility rules. Learn more. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: pingdotgg/t3code/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 WalkthroughWalkthroughShell synchronization now handles sessions without completion markers by requesting a complete socket snapshot after an HTTP snapshot. Thread routes treat only ChangesSnapshot authority
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Sequence Diagram(s)sequenceDiagram
participant Shell as Shell synchronization
participant HTTP as HTTP snapshot
participant Socket as Socket snapshot
Shell->>HTTP: Load snapshot when session has none
HTTP-->>Shell: Apply snapshot
Shell->>Socket: Request complete snapshot
Socket-->>Shell: Apply snapshot and become live
Merge Risk: ⚪ Minimal · up to Legacy sessions wait for a full socket snapshot before missing threads are treated as authoritative, while available details and drafts remain visible. No concrete merge-blocking risk is established. Architecture SummaryArchitecture risk: 🔵 Low · up to The change affects 2 systems. Changed systems: Architecture concerns Review detailsSystems and components
Before / after behavior
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
Friendly review nudge @juliusmarminge @maria-rcks — this is mergeable and hasn't had a maintainer pass yet. Independent bot/agent reviews have run with findings triaged in-commit (see receipts in earlier comments). Full queue context and status: #10688. |
a325b17 to
d3360b0
Compare
Dismissing prior approval to re-evaluate d3360b0
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
A session that already received a snapshot no longer reloads the shell over HTTP before requesting the full socket snapshot legacy servers need, so foreground wakeups and retries pay one transfer instead of two. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
d3360b0 to
4b9e7bb
Compare
Dismissing prior approval to re-evaluate 4b9e7bb
|
Heads-up on the |
Dismissing prior approval to re-evaluate 9bf1e91
Dismissing prior approval to re-evaluate 1cd6689
|
Note This comment is posted by Julius' dot Closing for missing verification of the current loading transition. The PR says its screenshots and recordings predate the change that makes an available thread or draft ready before shell bootstrap completes. The focused tests cover the decision logic, but the changed client transition is still unshown. The verification rule requires evidence of that behavior. Add before/after screenshots and a short recording of the current integrated client through this ordering, with the environment and observed results, then request reconsideration. |
|
Follow-up on the closing note: the missing verification is now provided in the focused replacement #14697. GitHub wouldn't let me reopen this PR.
Could you assess #14697 for review in place of this PR? |
Opening a valid thread deep link during legacy connection synchronization can redirect to an unrelated thread when cached or HTTP shell data is mistaken for authoritative state. Routes now wait for live shell authority before deciding a thread is missing. Already available thread detail or a local draft stays visible while shell synchronization is pending.
Legacy servers receive a full socket snapshot request because their cursor replay has no completion signal. Marker-capable servers retain cursor replay and completion markers. Same-session subscriptions reuse the available snapshot; a new session refreshes it. The shared synchronization behavior also serves mobile, whose missing-thread route policy remains separate.
Verified after integrating upstream main 35be904, using Node24.13.1:
Current browser/mobile/relay proof is still missing for the integrated candidate, particularly delayed shell versus available detail, valid/missing deep links, offline rendering and reconnect. The historical captures below predate the new available-detail repair and current integration; they do not establish those checks.
Historical Linux Chromium before/after evidence
The following is the original capture record, retained with its original revisions and verification limits.
Same Linux Chromium web scenario at base
09e8de9c655ae85410bf6b00446f272a01da81c7and candidatea325b17ed3e398a88ce10de7744008c064debf7e: an isolated fixture retains the HTTP shell response from before the target thread was created, omits the completion-marker capability, and holds live shell/target-detail delivery until the initial route is observed. Delivery then resumes. Both clients use the same exact-base backend; Chromium local-network permission is scoped to that isolated origin.Before: the valid deep link redirects to an unrelated New thread and remains there after live delivery resumes.
Full before recording · Full before screenshot
After: the requested Reconnect target conversation stays selected and opens after the live snapshot arrives.
Full after recording · Full after screenshot
The GIFs use the same sidebar crop and 12 fps sampling, with labels added above the captured frame. No temporal cuts or speed changes. Full recordings provide context. Files were anonymously downloaded again, hash-verified, decoded, and inspected by sampled frames; interactive browser playback was not inspected. Raw recordings, receipts, and capture script · Media receipt.
Original fix: GPT-5.6 Sol in the Codex harness. Current integration and repair: GPT-6 Astra; independent review: GPT-6.1 Sol, both in the Codex harness via T3 Code.