Skip to content

Continue a usage-limited chat with another account or agent - #31241

Open
brennanb2025 wants to merge 79 commits into
mainfrom
brennanb2025/usage-limit-actions
Open

brennanb2025 wants to merge 79 commits into
mainfrom
brennanb2025/usage-limit-actions

Conversation

@brennanb2025

@brennanb2025 brennanb2025 commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor
Files Added Deleted Net
Test 18 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​1874 $\color{#cf222e}{\Huge{\mathbf{−}}}$​120 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​1754
Prod 52 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​1965 $\color{#cf222e}{\Huge{\mathbf{−}}}$​499 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​1466

ELI5

When a chat hits its account's usage limit, its warning row only offers Continue. Using another account or handing the work to another agent requires leaving the conversation and finding those actions elsewhere. The row now offers an account action when this open chat can follow the selection and Hand Off to Another Agent, plus Continue Now once the limit's reported reset time has passed. Before the reset, or when the provider reports no reset time, Continue Now stays hidden because the same limit would refuse the message; after switching accounts, the next message the person sends continues on the new account.

What Changed

The warning keeps its reset time and adds “Continue this chat without waiting:” followed by small outline buttons. Switch Account opens the existing account menu. With one signed-in account on this computer, Add Account… opens this chat’s native account settings. A paired host with at most one signed-in account offers Hand Off only; eligible paired hosts with two or more still offer Switch Account. Hand Off opens the existing dialog using this chat’s title and owning workspace, with a different available agent selected. File-backed sources pass their existing admitted native transcript; database-backed sources pass recent loaded chat messages. Full saved history for database-backed sources is a temporary limitation, tracked in STA-11454. No export files or retention mechanism are added. Without another available agent, Start is disabled. A Claude destination remains an editable draft that requires Send; other agents keep their existing submission behavior. The execution host resolves the file through the same account-scoped transcript importer used to open a chat in the command-line interface. The row reads the current options response on click so a newly created chat gets its saved transcript too. Older hosts or providers without a saved path use loaded chat context, labelled as chat messages. These controls disappear with Continue Now once another message is sent, and loading controls remain disabled.

Account eligibility comes from the chat's host: it verifies that launches follow account selection and that this conversation's projects store is shared with System default and every native account destination. An isolated or unverified store offers Hand Off only. Shared custom folders remain eligible. The options response carries optional canSwitchAccount and transcriptPath fields; neither is saved, and older peers safely omit or ignore them. A fresh eligibility read before each switch covers new roster destinations. Ordinary options reads outside a stopped usage-limit turn do no recovery discovery; lookup remains outside send/Stop serialization. Mounted paired rows observe their host’s account roster. A single current hand-off request prevents a late response reopening a cancelled or superseded dialog. Codex and OpenCode offer Hand Off only. The existing account menu, switching action and settings navigation target the chat’s host, including paired servers. Add and Manage open its native account view even when Windows Settings normally prefers WSL; explicit account-location choices and ordinary Settings visits retain their existing behavior and defaults. Chat-row switches skip terminal restart offers. The account slot keeps a fixed width through loading, Add/Switch labels, and ineligible states so Hand Off does not move; switcher instances are keyed to their owner. The phone stays unchanged. No automatic continuation, saved field, new operation, or new runtime capability is added.

Why

Changing the selected account helps only if this exact conversation will use it. Reading the host's per-chat proof keeps the button honest for shared and isolated history, including with older servers. Reusing the existing account menu and hand-off dialog keeps their sign-in, switching, and launch behavior consistent. The common pattern derives recovery controls from the current stopped turn; the extra row entry points are an intended difference: the common pattern offers those workflows from a composer picker or plugin, while Orca's existing equivalents are the status-bar account switcher and hand-off dialog. Brennan chose the row to reach them. Account recovery keeps Orca's existing native resume and separate explicit hand-off, an intended mechanism difference from the common pattern that preserves the approved conversation behavior. Passing the saved transcript file is an intended transport difference that reuses the existing agent launch flow. Automatic retry and scheduled continuation are excluded by the approved product scope.

Linked Issue

Follow-up to the usage-limit warning introduced in #30396, tracked in #30955 for moving open chats to the selected account.

Visual Proof

The review status comment retains the accepted real-agent evidence from 8fe9e7e030ea, the separately identified private integration runs, their explicit agent limits, and the before/after reset screenshots on 323e395a842. The reset images use the actual notice row in a declared hidden renderer fixture, with no provider or agent run.

The final Hand Off picker uses the production dialog and menu in a scoped renderer fixture, with no agent launch: picker screenshot. Local image: /Users/brennanbenson/orca-qa/usage-limit-actions/workers/pr-31241-final/qa3789-agent-menu-open.png. Evidence and limits: /Users/brennanbenson/orca-qa/usage-limit-actions/workers/pr-31241-final/qa3789-report.md. The independently audited and inspected capture is from exact f0ab7bea, using production imports/styles and a declared Claude/Claude Agent Teams/Codex/Gemini inventory on CLI surfaces only. Codex is visible and the source-family menu rows are absent. It proves no actual Start, agent launch, account operation or chat route. The five-minute stalled attempt and successful fresh-session retry remain recorded in the report. This unchanged nonempty flow carries through 476fb91d.

Testing

The integrated branch passed 160 tests across 12 named files covering account-history proof, source ownership, Settings routing, reset behavior, shared options reads, hand-off selection and cancellation. The subsequent repair passed 71 tests across 11 named files, including the actual picker rows, 100/1,000 retained chats, 10/100 account readers, provider/host isolation, equal serialized Settings replies, and pending account operations during an owner change. Tests count producer work separately from renders and verify that genuine account/name changes still update their consumers. The original implementations fail the corresponding regression controls.

The historical notice fixture correction passed 52 notice-row tests. The changed-code-quality correction passed its three affected files and 11 tests; it preserves the real account-controller producer and every operation/render assertion. The later type/config correction passed five focused files and 17 tests, preserving scheduled type coverage and the existing verification contracts. Restoring the existing empty-host explanation passed 13 rendered tests; its regression control first failed on the missing paragraph. The public-mock-type annotation passed the same 13 dialog tests, with runtime values and assertions unchanged. The existing feature-tip test adapter now follows the Settings navigation input, matching production host choice; all eight tests passed with every assertion unchanged. Normal pre-commit hooks passed. Current-head CI for 476fb91df1d5f8c7c9ecd5149aa13075186c9511: PASS — PR checks, including all 12 unit shards, static analysis/typecheck, both package jobs, relay integration and cross-version compatibility; mobile verification, persistence, Windows compiler diagnostics and all three WSL distro jobs also passed. The single current-head watcher exited 0..

Changed lifecycle and hand-off flows retain the accepted real-agent evidence and limits in the status comment. Later changes affect renderer/state contracts or verification only; they do not repeat agent QA. The final picker has its separate branch-only screenshot above. The empty-host correction restores the existing localized paragraph from the same settled menu rows, without a new layout, control or interaction; rendered tests cover that state. The nonempty picker screenshot does not prove the empty flow, and no additional screenshot or agent run is claimed for the paragraph condition.

Integration and verification

The final reviewed and pushed head is 476fb91df1d5f8c7c9ecd5149aa13075186c9511. Correctness accepted on f0ab7bea carries through the accepted code-quality and type/config corrections and the restored empty-host feedback. The final independent mechanism comparison is complete on a1588114 and carries through the test-only annotation at 1dc20fa0 and feature-tip adapter at 476fb91d. Its CI result is listed above.

Commit Result and verification
2bdfcef56e8 Merges the final #30955 account-following dependency.
7e104e95d86 Merges main, including #36582's shared options-read ownership; scoped recovery evidence stays within that existing owner. It retains the approved reset actions, restores six locale catalogs and moves unchanged account usage preparation into its own module. The integrated contracts passed 160 tests across 12 named files. The older #30982 Continue prerequisite was already in main; it is distinct from #36582.
06e00b75 Corrects a TypeScript test-fixture error by admitting/narrowing the historical notice before rendering it. No shipped behavior or assertion changed; 52 notice tests passed.
6a4ee883 Makes the actual Hand Off menu use the permitted destinations, indexes retained-chat title lookups, shares observed account sources by host, and keeps unchanged provider menus quiet. Picker, producer, selector, lifetime and Settings contracts passed 65 tests across 10 named files; the picker interaction has the scoped screenshot above.
f0ab7bea Retires pending menu state when its account owner changes and retains equal local account Settings projections. The added resolve/reject and serialized-reply contracts brought the focused total to 71 tests across 11 files. No new screen, agent launch behavior or saved field.
8d00ba9 Corrects changed-code-quality diagnostics: inert owner provenance on the existing memo object, typed service doubles in the account fixture, and stable reader-ID expressions. The real controller, runtime behavior and assertions are preserved; three affected files/11 tests passed. This correction carries the accepted correctness, mechanism comparison and QA evidence without another app run.
0029a833 Corrects type/config verification while preserving its strength: moves the existing focus-read allowance without increasing the total, assigns real-producer suites to an already-scheduled typed project with exclusive-coverage checks, and preserves runtime behavior in the type annotations and selected-provider correlation. Five focused files/17 tests passed; the exact-head CI result is listed above.
a1588114 Restores the existing empty-host paragraph when the settled picker has no rows, using the same row authority as the menu. No selection, Start, wording or style change. The missing-paragraph regression failed before the repair; all 13 rendered tests passed after it. This rendered-state correction carries existing QA and needs no extra screenshot for the restored condition.
1dc20fa0 Gives the existing exported test mocks a public type name so TypeScript can check their declarations. Test-only: runtime values, signatures and all 13 dialog contracts are unchanged; the 13 tests and normal hook passed.
476fb91d Updates the existing feature-tip test adapter to consume the current Settings navigation input. It follows production host-choice semantics and preserves every real click, render path and assertion; all eight tests and the normal hook passed. No shipped behavior changes.

Agent skill upstream boundary

  • Not applicable; no upstream skill-installer source or data is copied.

Notes

#30955 has landed, and this PR now targets main with its account-following behavior included. Merging this PR ships usable account recovery and hand-off actions.

Folder workspaces and git worktrees use the same owning-workspace hand-off path. Remote chats switch accounts only on their execution host, when that host verifies this conversation can move. Codex remains hand-off-only until the #30957 follow-up supplies account following. Older peers omit or ignore the optional response fields. The Session History list was considered for transcript lookup, but its scan roots omit isolated workspace account stores; the host importer already has the record-scoped lookup that covers them. Mobile behavior is unchanged.

Author: @BrennanKB5

Checklist

  • Focused on usage-limit recovery actions.
  • User-facing before/after, mechanism, alternatives, and merge order explained.
  • Before/after screenshots linked in the review status comment.
  • Self-reviewed for host ownership and compatibility.
  • Cross-platform, remote, folder workspace, and mobile behavior considered.
  • CI covers full lint, typecheck, and workflow checks.

…ore its next message

A running chat's agent read its account only when it started, and nothing compared it with the
account a start would use now, so open chats kept answering on the old account after a switch.

The agent a chat runs now records the account its launch used, and the host's replace-before-the-
next-send check replaces an idle one whose account is no longer what a start would use. A chat
mid-reply finishes on the old account first. Claude chats follow; agents whose chats keep the
account they were created on are never compared.

A chat's model-list reads and saves now use the account it runs on, so a moved chat no longer
writes its new account's list under its first account (STA-11281).

Tracked in STA-11211.
@brennanb2025
brennanb2025 marked this pull request as ready for review October 20, 2026 22:17
@brennanb2025

brennanb2025 commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor Author

A chat that reaches its usage limit should offer the ways to keep working beside the warning. This PR adds account actions on the chat's host and Hand Off to Another Agent. Continue Now appears only after the provider's reported reset time has passed; it stays hidden when no reset time is known. Switching accounts does not send anything: the next message you send uses the selected account.

The account action reuses the existing switcher after the host verifies that this chat's saved history is available to every native account destination. With at most one signed-in account, a local chat opens Add Account…; a paired chat offers Hand Off only. Isolated or unverified history also offers Hand Off only. Add and Manage open the chat host's native account view without changing the saved Windows/WSL preference. Explicit location choices and ordinary Settings/sidebar navigation restore the normal preference. Hand Off excludes launch modes of the same CLI, uses the source workspace and opens the existing chooser. The final repair removes excluded source-family rows from the actual menu as well as its selection, search and terminal paths, tracked in STA-13138. Its new branch-only screenshot is recorded in the scoped picker evidence below. With no alternative available, Start is disabled. A Claude destination opens an editable draft that still requires Send.

File-backed chats intentionally pass their existing live native file, with no export or snapshot file. Database-backed chats pass accurately labelled recent loaded messages; full saved history there remains a temporary limitation tracked in STA-11454. Older hosts safely omit the two optional read-only recovery fields and use the recent-message fallback. Nothing is saved for these fields and no minimum server version changes.

Six source-review rounds are complete, including the reset timer fix verification. The review fixed account-destination proof, repeated filesystem discovery, stale hand-off preparation, paired roster updates, native Windows account navigation, same-CLI exclusion, missing native-file admission and source-directory ownership. Reset eligibility now uses current wall time and a capped boundary timer with cleanup. The shorter warning copy is intended, retaining the sentence removal in #33392 and the October 25 reset-time ruling; manual composer sends remain available.

Final reviewed and pushed head is 476fb91df1d5f8c7c9ecd5149aa13075186c9511. Independent correctness accepted f0ab7bea; the accepted changed-code-quality correction at 8d00ba9, type/config correction at 0029a833, empty-host feedback repair at a1588114, test-only public mock annotation at 1dc20fa0, and test-only feature-tip adapter at 476fb91d carry that acceptance and the existing QA forward. Fresh final mechanism comparison is complete on a1588114 (refs=done) and carries through the accepted test-only annotation at 1dc20fa0 and adapter at 476fb91d. The checklist has no new proven P0/P1 finding. Six source rounds remain complete; this final assembly adds no source round. The exact-head CI result is listed below.

Commit after the accepted real-agent evidence Changed flow and verification
2bdfcef56e8 Merges #30955's final dependency head so open chats follow the selected account before their next manually sent message.
7e104e95d86 Merges main, including #36582's shared options-read owner. Recovery evidence is scoped inside that existing owner; approved reset actions, six restored locale catalogs and the unchanged usage-preparation extraction are retained. Integration contracts passed 12 files/160 tests. The historical #30982 Continue prerequisite was already in main; it is a separate change, not the shared-read-owner integration.
06e00b75 CI-1, TypeScript fixture correction only: admit/narrow the historical notice fixture before the production renderer path; no shipped behavior or assertion changes. 52 notice tests passed; accepted real QA carries.
6a4ee883 Tests-row renderer/performance flows: policy-permitted destinations drive actual menu/search/terminal choices and Start; retained chats reuse the existing title index; account readers share one host source and stable provider results. 10 files/65 tests passed, including original-mechanism RED controls, actual producer counts and unaffected-consumer render assertions. The changed picker interaction has a new branch-only screenshot below; no agent rerun for these flows.
f0ab7bea Tests-row renderer/performance flows: old-owner selection/sign-in state retires on owner replacement; equal deserialized local Settings account data keeps its selected identity. Resolve/reject and real Settings-write contracts at10/100 readers extend the passing total to 11 files/71 tests. Genuine changes still update; no new screenshot or agent run solely for this bounded repair.
8d00ba9 CI-2, changed-code-quality correction, not TypeScript: retain inert owner provenance in the existing memo object, use typed account-service fixture doubles and map stable reader IDs. Real RuntimeAccountController production calls, runtime behavior, lifetimes and operation/render assertions remain unchanged. 3 affected files/11 tests passed; normal hook passed. Correctness, final reference verdict and QA carry through this neutral change.
0029a833 CI-3, behavior-neutral type/config correction: move the existing focus-read allowance without increasing its total; assign the real-producer suites/fixture to the existing scheduled mixed typed project with exclusive-coverage checks; preserve runtime behavior in the Tab annotation, unused target sentinel and selected-provider type correlation. No producer substitution or relaxed assertion. 5 focused files/17 tests passed; normal hook passed. Tests preserve verification contracts; current-head CI still supplies the TypeScript verdict.
a1588114 Tests-row empty-host feedback: restore the existing localized paragraph when the settled projected menu rows are empty, under the same row authority already used by the picker. No new string, style, screen, control, eligibility rule or launch gate. The missing-paragraph RED control was 12 pass/1 fail, then 13 rendered tests passed after repair; normal hook passed. Existing QA carries; no extra screenshot/agent run for restoring this condition. The nonempty picker image does not prove this empty state.
1dc20fa0 CI-4, test-only declaration portability: name the exported fixture mocks with Vitest’s public Mock type, preserving existing defaults/signature. Runtime initializer, values, sole consumer and all assertions are byte-identical. 13 dialog tests passed; normal hook passed. Prior correctness, reference and QA evidence carries.
476fb91d Test-only feature-tip adapter: follows this PR’s Settings navigation input contract with the same host-choice transition as production. All original real clicks, rendering and assertions remain unchanged. 8 feature-tip tests passed; normal hook passed. Explicitly authorized bounded repair after round 6, independently accepted; no additional source round or design change. Prior correctness, reference and QA evidence carries.

Before integration, the reset delta passed56 focused renderer tests. No runtime latency claim is made by these count contracts. Current-head CI for 476fb91df1d5f8c7c9ecd5149aa13075186c9511: PASS — PR checks, including all 12 unit shards, static analysis/typecheck, both package jobs, relay integration and cross-version compatibility; mobile verification, persistence, Windows compiler diagnostics and all three WSL distro jobs also passed. The single current-head watcher exited 0..

Final scoped picker evidence — ticket3789

Production Hand Off picker screenshot. Local image: /Users/brennanbenson/orca-qa/usage-limit-actions/workers/pr-31241-final/qa3789-agent-menu-open.png. Report and capture limits: /Users/brennanbenson/orca-qa/usage-limit-actions/workers/pr-31241-final/qa3789-report.md. This branch-only renderer check covers the changed menu rows and interaction; it is not a real provider, agent, quota-exhaustion or lifecycle run.

The scoped picker evidence audit passed: exact f0ab7bea, 1280×860, declared inventory and CLI surfaces only. Codex is selected/visible and both Claude-family menu rows are absent. The Codex driver exited0 after the recorded five-minute stall and one fresh-session retry; this was not a clean first attempt. No Start, agent, account or chat-route claim. Recorded process/port cleanup and unchanged real-config hashes are lead attestations; the report, drive record and primary image were independently audited. The accepted CI corrections and test-adapter repair through 476fb91d leave the picker bytes unchanged.

The audited production imports/styles and declared inventory are limited to this CLI-only renderer fixture. The primary screenshot was directly inspected. The nonempty flow is unchanged through 476fb91d; the restored empty-host paragraph is proved separately by rendered RED/GREEN tests, not by this image. Ticket3789 is released, the lead’s own terminal is closed and all owned processes are stopped per the report.

What was exercised and carried forward

Real-agent evidence is carried from qa_head=8fe9e7e030ea509f3de1096d14c3f36b5ab75c00 and the separately identified private integration 57a4934. Main and dependency merges do not repeat accepted QA. The later reset commits 27e75e719cbd42bef0bb15baecab2fad1a98512e and 323e395a84271ed94c8d82900efa2c4b554c21e8 changed presentation only and have their separate renderer evidence below. These builds and evidence types are not interchangeable.

Evidence Accepted result and limits
Exact 8fe9e7e, Claude and Codex Genuine saved chats replied after upgrade. Claude Continue and an ordinary follow-up produced two real replies; different-agent row hand-offs recovered context. Codex has Hand Off only; no enabled alternative disables Start.
Exact 8fe9e7e, OMP and OpenCode An unpinned OMP source exposed its native file, and real Claude read it and replied. OpenCode's first default endpoint failed; after an explicit available model choice the real source replied, then its recent-message row hand-off produced a real Claude reply without exposing a database path.
Exact 8fe9e7e, older server a9d0cba Both optional fields were absent; Hand Off remained, account actions and Full were unavailable, and Codex -> Claude produced a real focused-context reply on the source owner/folder. This supersedes an earlier older-host Pi attempt that delivered context but failed with 401.
Exact 8fe9e7e, long/adopted source Beyond-loaded-tail Full hand-off launched real Codex, which read the original file and answered MAPLE/64 without the answer in its input. A History source in A handed off while B remained focused; Codex ran in A, read its native file and answered FERN/17. The older-message rail still indexes historical previews by design but was not destination input. An ordinary adopted record with an incidental saved directory is not reachable through shipped UI, not a test pass.
Private integration 57a4934, accounts and History One genuine saved Claude chat replied on account 1 -> row Switch to 2 -> explicit Continue/reply -> reverse Switch to 1/Continue/reply. Actual native launch directories and first-party OAuth identities matched; selection did not send, and the original stored history home remained provenance. Ordinary History Full hand-off to Codex read the original Claude file and answered a neutral question. This predates the reset-time presentation rule.
Private integration 57a4934, other recovery Saved Codex Continue plus follow-up replies; OMP native-file hand-off to Codex and actual Stop/Interrupted followed by an ordinary reply; ordinary History OpenCode recent-context hand-off to Codex. Folder OMP -> Codex read all 9,395 source bytes and answered a neutral context question. Isolated paired Claude -> OMP offered no account controls and read its original native file; those reads were clipped/truncated and have no separate numeric exit-code claim.
Private integration 57a4934, reachable ownership Local floating OMP under paired-workspace focus retained its pinned A folder, isolated home and original native file; real Codex read it and replied. The configured default B was captured before Start, but its first Settings-page readback was after Start. Peer chat visible under a different local workspace is unreachable in shipped UI, not a waiver/pass.
Private integration 57a4934, editable draft Recognized local Codex terminal -> editable unsent Claude draft -> one explicit Send -> real reply, with original-file access supported by completed tool receipts. The draft already contained source results; the answer alone is not transcript-read proof and the tool receipt has no separate numeric exit field.
Private integration 57a4934, Pi A real source reply plus production-function evidence for native-file admission, deletion rejection and restoration/readmission of the same file. No Pi quota row, normal RPC recovery advertisement or exact-head Pi recovery run is claimed. An earlier Pi destination failed auth; that attempt is not a pass.
Identified main 52f6960 The same saved Claude source produced real ordinary/Continue replies; its old warning lacked the new recovery actions. Main comparison and branch snapshots retain their original build identities.
Renderer fixture, 323e395a842, ticket2437 Actual production notice/styles in hidden Electron, no agents: same row before reset hid Continue Now and after reset showed it; Hand Off stayed enabled, one mount/no unmount/no action callbacks. Unknown-reset behavior was a separate remount. Switch was unavailable; no account, provider quota, reply, restart or upgrade claim.
Renderer fixture, f0ab7bea, ticket3789 Audited1280×860 production dialog/menu/styles: declared Claude/Teams/Codex/Gemini inventory, CLI surfaces only; Codex selected and enabled, Claude/Teams menu rows absent, no clipping. Driver exit0 after stalled-attempt retry; no Start/agent/account/chat-route assertion. The unchanged nonempty flow carries through accepted 476fb91d; it does not prove the restored empty state. Report and image paths above.

Quota failures were declared success-bound replay fixtures, not natural account exhaustion. Agent replies, recorded file reads and UI actions were real. Raw JSONL reads sometimes truncated; successful follow-up extraction is identified separately. Empty nongit-workspace searches returned exit 1 while original-file reads succeeded. The initial long-history setup repeated its probe and did not establish beyond-tail coverage; the later fact-free source/tail measurements and real destination did. No extra agent rounds are claimed for UI/Settings, saved-unlisted choice or controlled-delay experiments: those use CI/renderer contracts under the QA classification. Controlled-delay seams were unavailable, native-picker interaction was not tested, and no live Windows/WSL run is claimed.

Actual successful agents in these accepted records are Claude, Codex, OpenCode, OMP and Pi, with Pi's narrower scope above. Separately registered OpenCode2 was not exercised: only its installed opencode v2.0.21 probe is established; compatible isolated sign-in was not established, which is not proof that every QA machine lacks a sign-in. Grok and Antigravity code was unchanged; their separate sign-ins/runtime installation were outside this QA scope.

Account sign-in completion and repeated switcher testing waived by Brennan (October 22): “Why do I need four claude sign ins??? Isn't this reusing this existing claude switcher? This doesn't need to be tested if reusing the same code”. That repeated batch was cancelled; it is not a new pass or a blanket waiver for other agents/flows. The earlier real managed 1->2->1 evidence remains accepted. Local Add/Manage, paired Accounts routing/parity and loading behavior use renderer/source contracts and the existing screenshots; earlier routing-only attempts established ordinary local Accounts but did not complete eligible quota-row routing or parity. A listed OMP model inspection did not prove saved-unlisted continuity. The later Stop-only attempt never reached a source request; its cleanup also left the disposable QA profile's OMP command at /opt/homebrew/bin/omp instead of its old omp-limit wrapper. That is an explicit QA leftover, not a source failure or an extra Stop pass.

Deferred and inherited observations

A failed Windows Account Location settings write can end the temporary native-account view even though the preference was not saved; reopen chat Add/Manage or retry the location choice. This low-impact failure case is deferred, tracked in STA-13139. The final repair removes repeated retained-chat tab scans by reusing the existing index. Account menus share one observed host stream and stable provider results, keeping unchanged Claude menus quiet during Codex/other-host updates; explicit reloads remain fresh. Operation and render contracts cover100/1000 retained chats and10/100 account readers, including real producer counts, meaningful updates and cleanup. No measured latency claim is made. Clicking Accounts in the Settings sidebar intentionally returns to the ordinary saved view, including when Accounts is already selected; it writes no preference.

Source-family exclusion can leave misleading existing “No enabled Agents” copy when only excluded modes are detected. This copy-only P2 is assigned and parented as STA-13153, deferred without changing the settled exclusion policy. Genuinely empty-host feedback is separately fixed by a1588114. The late-snapshot concern supplied no concrete real-producer failing input or demonstrated worsening of the mechanism already on main; it remains unproven, with no speculative guard added. The repeated Settings report is covered by the existing deferred STA-13139.

Historical observations were tracked separately: STA-11573 recorded draft loss after restart on the old main build and is now Done; this review does not claim it remains on current main. STA-11589, STA-11590, and STA-11596 recorded missing-file wording, a generic OpenCode quota error and delayed dialog layout shift. Those historical QA reports are not current-head reproductions or newly asserted blockers. The separate socket-test flake was fixed in #31520. Intermittent History zero counts/previews, workspace labels, loading/connecting and renderer observations did not establish a PR cause or data loss; they are not silently promoted to passes or repaired here.

All accepted selected packets retained independent exact-file/byte/hash checks and their original provenance limits. Cleanup records support recorded owned processes stopped and assigned ports clear; they are bounded inventories, not every machine process. Temporary trust-key restoration preserved the other checked data; genuine histories stayed. Real config hash changes during concurrent QA had unknown attribution, and no contents were read/copied/restored. The reset evidence audit accepts the two screenshots and 27 payload hashes, with runtime full-head/isolation details beyond receipts remaining lead attestations. Ticket2437's later check found six recorded PIDs absent/ports clear; the targeted retry2151 found 58 recorded identities absent. Earlier cleanup/setup failures remain historical limitations, not successful flow evidence.

For Brennan's review

The reset fixture before/after frames are the current presentation evidence; earlier UI captures below deliberately retain their historic build labels.

Continue Now hidden before reset; renderer only

Continue Now appears after reset; renderer only

All carried screenshots are retained here with their original scope:

Build/scope Screenshot
exact 8fe9 QA full-dialog.png
exact 8fe9 QA reply.png
exact 8fe9 QA b-full-codex.png
exact 8fe9 QA destination-reply.png
exact 8fe9 QA ordinary-menu.png
exact 8fe9 QA context-options.png
exact 8fe9 QA destination.png
historical main 52f6960 Main: warning row with Continue only
exact 8fe9 QA 8fe9: manual retry and recovery actions
exact 8fe9 QA 8fe9: Claude reads OMP source context and replies
private integration 57a4934 Integration: Codex reads the original OMP native file and answers a context question
private integration 57a4934 Integration: OMP Interrupted after Stop, then a real ordinary reply
private integration 57a4934 Integration: saved Codex Continue and ordinary follow-up replies
private integration 57a4934 Integration: ordinary History OpenCode recent-context hand-off to Codex
private integration 57a4934 Integration: real Pi source replies with inventory context and marker
private integration 57a4934 Integration: local Accounts page with one saved account and Add Account
private integration 57a4934 Integration: real Claude reply on the current paired server in a folder workspace
private integration 57a4934 Integration: real Claude reply after switching to the second OAuth account and explicit Continue
private integration 57a4934 Integration: ordinary History hand-off reads the saved Claude file and Codex answers the neutral source-marker question
private integration 57a4934 Integration: real reverse-account Continue reply with its 2:46 PM timestamp
private integration 57a4934 Integration: local terminal hand-off opens an editable unsent Claude draft
private integration 57a4934 Integration: real Claude reply after explicit Send from that local terminal hand-off
private integration 57a4934 Integration: paired-host quota row offers Hand Off using its own roster
private integration 57a4934 Integration: paired Codex reads the original Claude file and answers a neutral context question
private integration 57a4934; limited/incomplete attempt Integration: genuine folder OMP usage-limit row; destination flow remains incomplete
private integration 57a4934 Integration: settled Full transcript hand-off to Codex in the source folder
private integration 57a4934 Integration: original native-file read and neutral Codex context reply; stale History count visible
private integration 57a4934 Integration: isolated Claude row offers Hand Off without account actions
private integration 57a4934 Integration: OMP reads the original isolated native file and answers the neutral inventory question
old a9 server + private integration client; historical attempt Older server: genuine preserved Codex source reply after route repair
old a9 server + private integration client; historical attempt; limited/incomplete attempt Older server: Hand Off row after a declared quota replay; recent-context delivery reached Pi but its reply failed
private integration 57a4934; limited/incomplete attempt Integration: default Claude model menu; required 1M selection and native-chat history measurement unverified
private integration 57a4934 Integration: real Codex follow-up confirms original context, owning home and pinned working directory
private integration 57a4934; limited/incomplete attempt Integration: selected Gemini model remains listed; saved-unlisted-choice coverage incomplete
private integration 57a4934 Integration: real OMP reply after explicit Continue, same local floating source under paired workspace focus
private integration 57a4934; limited/incomplete attempt Integration: local Accounts with two managed entries; floating chat obscures part of the page
private integration 57a4934; limited/incomplete attempt Integration: preserved floating OMP source before the unexercised Stop attempt; background error is from an earlier Codex turn

Three code spots for judgment: reset-time shortcut, owning-host file and account proof, chat-owned Accounts visit.

brennanb2025 and others added 11 commits October 30, 2026 06:22
…eceiving fixtures

Main now resolves a worker start lazily through bindRun with objective and task references, and creating a Run no longer unbinds a coordinator's earlier Runs; run-use does. The receiving fixtures follow the same production owners so every original scenario, input and bound is exercised unchanged. The receiving runtime subclass moves verbatim into its own support module.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
A live Claude chat compared its account against the selected one only after that account's folder passed an availability check, so an account still being set up (or whose setup failed) left the chat silently answering on the previous account, and a resting chat refused its start before preparation could run. The retirement comparison and the start pre-read now ask the router for the selected route as identity, through the existing resolver purposes; catalog, create and probe reads keep checking availability. Preparation, typed launch failure and parking are unchanged.

Session History details show the account a chat was last launched under when the host recorded one, else its founding home.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…sertion

The History account case now reads the fixture receipt through the typed acquisition reader instead of spreading the record field through a cast; the three assertions and their inputs are unchanged.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The account-setup cases spread an optional link, which typed its id as possibly undefined; the rig always links a handle, so a guard that cannot fire narrows it. No assertion or input changes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… the History account projection

Chat admission no longer reads an experimental host setting, so the continuation-context test drops the spy main dropped in its own fixtures. The two History consumers that install a minimal chat host give their fake store the record accessor and host id the real store has, since the projection now reads the acquisition receipt. An operation-count contract holds the production History projection to one roster read and one record lookup per owned row at 10 and 100 rows.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…port

The declared-effort fixture builds a catalog service without the capture member the options reader asks every catalog for, which failed its desktop, catalog and phone consumers; it now supplies the inert test operation like the other fakes. The History projection contract also drops an unused map parameter.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
brennanb2025 and others added 2 commits October 31, 2026 01:03
…split at-rest suites

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Main's keyed journal records deliver each change after an epoch's frozen prefix as an
outcome sequence naming touched keys instead of typed rows. The receiving-account index
now re-reads those keys at their current values: queue cards by id, a deleted submission
retires its exact notice, and a deleted item drives the existing recovery rebuild, with
Stop marks still excluded. The in-process read row exposes the already-persisted
queue.cards keys and per-key deletion facts; itemIds and submissionIds keep listing every
touched key. The mobile unknown-consumer test mocks MobileSwitch as main's picker test does.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@brennanb2025
brennanb2025 changed the base branch from brennanb2025/chat-account-switch to main October 31, 2026 11:33
…2025/usage-limit-actions

# Conflicts:
#	src/main/claude-accounts/claude-profile-router.ts
#	src/main/claude/claude-structured-launch-home.ts
#	src/main/native-chat/agent-session-wire/structured-agent-session-options-read.test.ts
#	src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts
#	src/main/native-chat/structured-agent-cli-conversations.ts
#	src/main/opencode/opencode-transcript-import.ts
#	src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test.tsx
#	src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.tsx
#	src/renderer/src/components/native-chat/NativeChatMessageList.turn-status.test.tsx
#	src/renderer/src/components/native-chat/NativeChatNoticeRow.test.tsx
#	src/renderer/src/components/native-chat/NativeChatNoticeRow.tsx
#	src/renderer/src/components/native-chat/NativeChatStructuredSession.tsx
#	src/renderer/src/components/native-chat/use-structured-agent-session-option-state.ts
#	src/renderer/src/components/native-chat/use-structured-agent-session-options.ts
#	src/renderer/src/components/settings/AccountsPane.owner-scope.test.tsx
#	src/renderer/src/components/settings/chat-settings-unsaved-guard.test.tsx
#	src/renderer/src/components/status-bar/ClaudeSwitcherMenu.tsx
#	src/renderer/src/i18n/locales/en.json
#	src/renderer/src/i18n/locales/es.json
#	src/renderer/src/i18n/locales/fr.json
#	src/renderer/src/i18n/locales/ja.json
#	src/renderer/src/i18n/locales/ko.json
#	src/renderer/src/i18n/locales/zh.json
#	src/renderer/src/lib/settings-navigation-types.ts
…mit-actions

# Conflicts:
#	src/main/claude-accounts/claude-profile-router.ts
#	src/renderer/src/i18n/locales/en.json
#	src/renderer/src/i18n/locales/es.json
#	src/renderer/src/i18n/locales/fr.json
#	src/renderer/src/i18n/locales/ja.json
#	src/renderer/src/i18n/locales/ko.json
#	src/renderer/src/i18n/locales/zh.json
@coderabbitai

coderabbitai Bot commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Note

Reviews paused

It 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 reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • Resume reviews
  • Trigger review

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 3ee5d76c-9d51-4979-9729-75a838d771a3
Commits

Reviewing files that changed from the base of the PR and between 8d00ba9 and a158811.

Files selected for processing: 10
  • config/focus-setting-read-baseline.txt
  • config/scripts/typecheck-project-coverage.test.mjs
  • config/tsconfig.tc.web.json
  • config/tsconfig.test.pane-launch.json
  • config/tsconfig.web.json
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test.tsx
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.scaling.test.tsx
  • src/renderer/src/components/status-bar/use-claude-switcher-state.ts
  • src/renderer/src/runtime/observed-provider-accounts.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 5 remain after this review.

Walkthrough

The changes add Claude launch-home resolution and structured-session recovery options, including transcript paths and account-switch eligibility. Native-chat usage-limit notices now provide reset-gated continuation, account controls, and agent hand-off. Continuation selection can exclude the source agent. Provider account state and Claude switching are owner-scoped. Settings navigation now tracks native-account intent and host state, and the accounts pane applies that state when displaying and updating account locations.

Merge Risk: Low · up to a1588

Account settings can unexpectedly return to another runtime, and hand-off feedback can be misleading or unclear. These are bounded usability risks for owner awareness.

Pre-merge checks: Passed 3 · Failed 1 · Inconclusive 1

Failed Failed checks: 1 warning · 1 inconclusive

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 28.57% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documenta… Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check Inconclusive The description follows most of the repository template. It has ELI5, What Changed, Why, Linked Issue, Visual Proof, Testing, AI Disclosure, Review, Agent skill upstream boundary, Notes, and Checklist… Clarify and tighten the description before merge. (1) State the CI status clearly. The description says current-head CI passed, but the PR objectives say CI was blocked by the 303/300 line limit. Confirm which is current and update the text…
Passed Passed checks: 3 passed
Check name Status Explanation
Title check Passed The title clearly and concisely describes the primary change: continuing a usage-limited chat with another account or agent.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 28.57% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 42 functions across 53 files. (4 skipped: 4 unsupported.)

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

Full details: Description check

Explanation

The description follows most of the repository template. It has ELI5, What Changed, Why, Linked Issue, Visual Proof, Testing, AI Disclosure, Review, Agent skill upstream boundary, Notes, and Checklist sections, and most are substantively filled in. The author covers the user-facing before and after, the mechanism, the alternatives considered, and the merge order. Visual proof links to external evidence and a picker screenshot. The Linked Issue section cites a follow-up to #30396 and tracks #30955, but it does not use the template's 'Fixes #' form. The description is long and dense, and the Testing section lists many test counts without clear reviewer steps. The 'Review' and 'AI Disclosure' sections are empty or not clearly filled, and the 'Manually tested' checkbox is not ticked. The PR objectives say manual real-app testing is unchecked and that current-head CI is reported blocked, which conflicts with the description's claim that current-head CI passed.

Resolution

Clarify and tighten the description before merge. (1) State the CI status clearly. The description says current-head CI passed, but the PR objectives say CI was blocked by the 303/300 line limit. Confirm which is current and update the text. (2) Add reviewer-facing Testing steps. State which platforms were tested (macOS, Windows, Linux, SSH, WSL) and whether manual testing was done, and tick or explain the 'manually tested' box. (3) Fill in or remove the empty 'Review' section and clarify the 'AI Disclosure' section if it applies. (4) Link a real issue in the 'Fixes #' form, or explain why none is used. (5) Shorten the What Changed and Testing sections into clear, scoped bullets. Move the long evidence log into a linked comment. (6) State the merge dependency (#30955 and #30982) in the Notes section as a prerequisite, so reviewers know the merge order.

Finishing Touches
Generate docstrings
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2


Review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 76af7cb4-75af-4148-a0a7-c8ce9a8a8f87
Commits

Reviewing files that changed from the base of the PR and between 002e975 and 323e395.

Files selected for processing: 80
  • src/main/claude-accounts/claude-launch-routing.test.ts
  • src/main/claude-accounts/claude-profile-router.ts
  • src/main/claude-accounts/claude-profile-selection-homes.ts
  • src/main/claude/claude-launch-destination-home.ts
  • src/main/claude/claude-structured-launch-account-routing.test.ts
  • src/main/claude/claude-structured-launch-home.ts
  • src/main/claude/claude-structured-launch-resolution.ts
  • src/main/claude/claude-structured-session-acquisition.ts
  • src/main/claude/claude-structured-session-publication.ts
  • src/main/native-chat/agent-model-catalog/agent-model-catalog-fingerprint.ts
  • src/main/native-chat/agent-model-catalog/agent-model-catalog-prewarm.test.ts
  • src/main/native-chat/agent-model-catalog/agent-model-catalog-running-account.ts
  • src/main/native-chat/agent-model-catalog/agent-model-catalog-service.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-acquisition.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-adapter.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-attach-flow.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-attach-orchestration.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-attach-publish.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-host-delivery.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-host-types.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-host.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-options-read.test.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-outgrown-child.test.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-outgrown-child.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-recovery-read.test.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-recovery-read.ts
  • src/main/native-chat/structured-agent-cli-conversations.ts
  • src/main/opencode/opencode-transcript-import.ts
  • src/main/runtime/rpc/methods/structured-agent-session-options-read.ts
  • src/main/runtime/session-tabs/structured-session-account-home.ts
  • src/main/runtime/structured-agent-model-catalog-wiring.ts
  • src/main/runtime/structured-agent-runtime-metadata.ts
  • src/main/runtime/structured-agent-runtime-registration-types.ts
  • src/main/runtime/structured-agent-session-runtime.ts
  • src/main/runtime/structured-session-recovery-options.test.ts
  • src/main/runtime/structured-session-recovery-options.ts
  • src/main/runtime/workspaces/workspace-process-listing-dependencies.ts
  • src/main/runtime/workspaces/workspace-process-listing.ts
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test.tsx
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.tsx
  • src/renderer/src/components/agent-session-continuation/agent-session-continuation-selection.ts
  • src/renderer/src/components/native-chat/NativeChatInterruptedContinue.tsx
  • src/renderer/src/components/native-chat/NativeChatMessageList.turn-status.test.tsx
  • src/renderer/src/components/native-chat/NativeChatNoticeRow.test.tsx
  • src/renderer/src/components/native-chat/NativeChatNoticeRow.tsx
  • src/renderer/src/components/native-chat/NativeChatStructuredSession.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.test.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.tsx
  • src/renderer/src/components/native-chat/use-structured-agent-session-option-state.ts
  • src/renderer/src/components/native-chat/use-structured-agent-session-options.ts
  • src/renderer/src/components/native-chat/use-structured-agent-session.ts
  • src/renderer/src/components/settings/AccountsPane.owner-scope.test.tsx
  • src/renderer/src/components/settings/AccountsPane.tsx
  • src/renderer/src/components/settings/accounts-pane-location-section.tsx
  • src/renderer/src/components/settings/accounts-pane-types.ts
  • src/renderer/src/components/settings/chat-settings-unsaved-guard.test.tsx
  • src/renderer/src/components/settings/settings-capability-section-renderers.tsx
  • src/renderer/src/components/settings/settings-view-model.ts
  • src/renderer/src/components/settings/use-settings-host-navigation.ts
  • src/renderer/src/components/settings/use-settings-page-effects.ts
  • src/renderer/src/components/settings/use-settings-store-model.ts
  • src/renderer/src/components/status-bar/ClaudeSwitcherMenu.tsx
  • src/renderer/src/components/status-bar/ProviderAccountChatButton.tsx
  • src/renderer/src/components/status-bar/ProviderDetailsMenu.tsx
  • src/renderer/src/components/status-bar/claude-status-sign-in.test.tsx
  • src/renderer/src/components/status-bar/status-bar-claude-accounts.ts
  • src/renderer/src/components/status-bar/use-provider-account-list.ts
  • src/renderer/src/i18n/en-runtime-required.json
  • src/renderer/src/i18n/locales/en.json
  • src/renderer/src/i18n/locales/es.json
  • src/renderer/src/i18n/locales/fr.json
  • src/renderer/src/i18n/locales/ja.json
  • src/renderer/src/i18n/locales/ko.json
  • src/renderer/src/i18n/locales/zh.json
  • src/renderer/src/lib/agent-session-continuation.ts
  • src/renderer/src/lib/settings-navigation-types.ts
  • src/shared/agent-session-account-home.ts
  • src/shared/agent-session-options-result.ts
  • src/shared/telemetry-property-schemas.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 5 remain after this review.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2


Review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: a118121c-b7ee-46d8-a8c2-029c7aab7440
Commits

Reviewing files that changed from the base of the PR and between 323e395 and 7e104e9.

Files selected for processing: 41
  • src/main/claude-accounts/claude-account-usage-preparation.ts
  • src/main/claude-accounts/claude-launch-routing.test.ts
  • src/main/claude-accounts/claude-profile-router.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts
  • src/main/native-chat/agent-session-wire/structured-agent-session-recovery-read.ts
  • src/main/native-chat/structured-agent-cli-conversations.ts
  • src/main/opencode/opencode-transcript-import.ts
  • src/main/runtime/rpc/methods/structured-agent-session-options-read.ts
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test.tsx
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.tsx
  • src/renderer/src/components/agent-session-continuation/agent-session-continuation-selection.ts
  • src/renderer/src/components/native-chat/NativeChatInterruptedContinue.tsx
  • src/renderer/src/components/native-chat/NativeChatMessageList.turn-status.test.tsx
  • src/renderer/src/components/native-chat/NativeChatNoticeRow.test.tsx
  • src/renderer/src/components/native-chat/NativeChatNoticeRow.tsx
  • src/renderer/src/components/native-chat/NativeChatStructuredSession.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.tsx
  • src/renderer/src/components/native-chat/use-structured-agent-session-option-state.ts
  • src/renderer/src/components/native-chat/use-structured-agent-session-options.ts
  • src/renderer/src/components/native-chat/use-structured-agent-session.ts
  • src/renderer/src/components/settings/AccountsPane.owner-scope.test.tsx
  • src/renderer/src/components/settings/AccountsPane.tsx
  • src/renderer/src/components/settings/settings-capability-section-renderers.tsx
  • src/renderer/src/components/settings/settings-view-model.ts
  • src/renderer/src/components/settings/use-settings-page-effects.ts
  • src/renderer/src/components/settings/use-settings-store-model.ts
  • src/renderer/src/components/status-bar/ClaudeSwitcherMenu.tsx
  • src/renderer/src/components/status-bar/ProviderDetailsMenu.tsx
  • src/renderer/src/i18n/en-runtime-required.json
  • src/renderer/src/i18n/locales/en.json
  • src/renderer/src/i18n/locales/es.json
  • src/renderer/src/i18n/locales/fr.json
  • src/renderer/src/i18n/locales/ja.json
  • src/renderer/src/i18n/locales/ko.json
  • src/renderer/src/i18n/locales/zh.json
  • src/renderer/src/lib/agent-session-continuation.ts
  • src/renderer/src/lib/settings-navigation-types.ts
  • src/renderer/src/lib/structured-agent-session-selection-lifetime.test.tsx
  • src/shared/agent-session-options-result.ts
  • src/shared/structured-agent-session-options-read-owner.test.ts
  • src/shared/structured-agent-session-options-read-owner.ts
Files skipped from review as they are similar to previous changes: 7
  • src/renderer/src/i18n/en-runtime-required.json
  • src/renderer/src/i18n/locales/en.json
  • src/renderer/src/i18n/locales/zh.json
  • src/renderer/src/i18n/locales/es.json
  • src/renderer/src/i18n/locales/ja.json
  • src/renderer/src/i18n/locales/fr.json
  • src/renderer/src/i18n/locales/ko.json

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 2 remain after this review.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


Review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 0090a89e-a5ac-4054-aad1-305bdcaca540
Commits

Reviewing files that changed from the base of the PR and between 7e104e9 and f0ab7be.

Files selected for processing: 18
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test-fixture.tsx
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.test.tsx
  • src/renderer/src/components/agent-session-continuation/AgentSessionContinuationDialog.tsx
  • src/renderer/src/components/native-chat/NativeChatNoticeRow.test.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.scaling.test.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.test.tsx
  • src/renderer/src/components/native-chat/NativeChatUsageLimitActions.tsx
  • src/renderer/src/components/status-bar/ClaudeSwitcherForOwner.tsx
  • src/renderer/src/components/status-bar/ClaudeSwitcherMenu.observation.test.tsx
  • src/renderer/src/components/status-bar/ClaudeSwitcherMenu.owner-lifetime.test.tsx
  • src/renderer/src/components/status-bar/ClaudeSwitcherMenu.tsx
  • src/renderer/src/components/status-bar/provider-account-sync-key.ts
  • src/renderer/src/components/status-bar/status-bar-claude-accounts.ts
  • src/renderer/src/components/status-bar/use-claude-switcher-state.ts
  • src/renderer/src/components/status-bar/use-provider-account-list.ts
  • src/renderer/src/runtime/observed-provider-accounts.test.tsx
  • src/renderer/src/runtime/observed-provider-accounts.ts
  • src/renderer/src/runtime/provider-account-observation.test-fixture.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 3 remain after this review.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


Review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ccd6ddc6-22e5-441b-aedc-800094fd7a7c
Commits

Reviewing files that changed from the base of the PR and between f0ab7be and 8d00ba9.

Files selected for processing: 3
  • src/renderer/src/components/status-bar/use-provider-account-list.ts
  • src/renderer/src/runtime/observed-provider-accounts.test.tsx
  • src/renderer/src/runtime/provider-account-observation.test-fixture.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 4 remain after this review.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant