T3 Code audit: pull requests, volume 5

pingdotgg/t3code. All authors. Drafts included. Default branch main. 570 issue assessments and 925 PR assessments. Initial inventory: 570 open issues and 924 open PRs. Current assessed open inventory: 570 issues and 924 PRs. Final reconciliation: 2026-09-01T11:57:41.491617+00:00.

Source baseline: e86604d3372acccd9f6a33a2c4ae46f4e2685541. A fix in this commit is not necessarily in a stable release.

Pull requests, volume 5

129 items. Each GitHub number links to its item. Recommendations and GitHub metadata are shown separately.

PR #5499. feat(orchestration-v2): import an existing Claude Code or Codex session by id, with two-way transcript sync Draft.

Request. Import external Claude and Codex sessions with later transcript synchronization.

Audit finding. The import RPCs and orchestration-v2 SessionImportService are absent from main. This implementation depends on the open V2 branch and makes imported-thread reads synchronize provider transcripts, which adds persistence and concurrency behavior beyond one-time import. Its 856-file stacked diff and untested live Codex resume prevent a merge recommendation. The required Check fails on JSON use in the new session-import tests.

Recommendation. Keep open: decision needed. Decide the V2 import and synchronization contract before reviewing the feature commits separately.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-09-01T05:36:37Z. Draft yes. Target t3code/codex-turn-mapping. Head d265cee48708e0f16a42c6f351fa6cfb72c4bdf6. Branch feat/import-session-v2. Size +177222 / -75883, 856 files, 215 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: FAILURE, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 18 passed, 2 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:27.196265+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #2829, #4617.

Limits. The full 12 MB stacked diff was not reviewed. Live Codex resume was not reproduced. GitHub reports merge conflicts against the target branch. Required Check fails on JSON use in SessionImportService.test.ts.

PR #5504. feat(web): sticky provider options and Grok composer affordances

Request. Restore sticky provider options without changing the selected model and adjust Grok composer controls.

Audit finding. Main still resolves draft options before thread or project options without the proposed sticky fallback, and Grok still has the Early Access badge. Plan commands are now gated by the global plan-mode setting, not the provider control flag in this diff. The sticky behavior overlaps the later option-preservation PR, but the badge and command changes are separate product choices.

Recommendation. Keep open: work remains. Split sticky option resolution from the badge and plan-menu choices.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author EnzoTironi. Updated 2026-08-06T12:28:55Z. Draft no. Target main. Head 907d0614f7edc043b9df8934d77186162677f469. Branch pr/web-sticky-options. Size +378 / -33, 4 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:27.196367+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5421, #5426, #8560, #8358.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #5521. fix(web): make sidebar project actions reachable by keyboard and screen reader

Request. Make project settings in the sidebar filter reachable by keyboard and screen reader.

Audit finding. The patch adds context-menu access and hides a nested mouse-only button in the old radio menu. Main now uses a searchable combobox but still nests the settings button in each option without the proposed context-menu handler. The accessibility request remains, while the patch must be adapted to the new combobox focus behavior instead of restoring the old menu.

Recommendation. Keep open: work remains. Implement and verify project-action keyboard access in the current searchable combobox.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author akj. Updated 2026-08-12T22:43:33Z. Draft no. Target main. Head 35109b5df4e3ea5430115432c9678f329579cbeb. Branch fix/sidebar-project-actions-keyboard. Size +31 / -6, 1 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:27.196421+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #1399, #5931.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5544. feat(orchestrator): move a running thread between devices Draft.

Request. Move a running provider conversation and its working tree between connected environments.

Audit finding. This is stacked on the open orchestration-v2 rewrite and introduces cross-environment transfer, single-writer locking and recovery migrations. Current Run on selection is not a live-thread handoff implementation. The collected 882-file, 12.8 MB comparison includes the rewrite, so claims about crash recovery and Git rollback have not received a complete independent diff review here.

Recommendation. Keep open: decision needed. Choose the handoff scope and review a rebased feature-only diff after the orchestration-v2 base is settled.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-09-01T05:36:37Z. Draft yes. Target t3code/codex-turn-mapping. Head 0250f02be4edc317d816445e504b3cc6673739eb. Branch feat/thread-handoff. Size +182000 / -83743, 882 files, 262 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:27.196599+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #2829, #5363, #5499, #5589, #5215.

Limits. The 882-file cumulative diff and all 80 review threads were not fully reviewed. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5562. feat(web): add built-in thread search

Request. Find and highlight visible text within the active orchestration-v2 thread.

Audit finding. Main has cross-thread search, but no active-thread find command with virtualized match navigation. This PR targets the open v2 branch and its collected 876-file comparison includes that rewrite. Its feature is therefore neither landed nor proved redundant; the older terminal-label highlight finding also needs confirmation on a clean current-base diff.

Recommendation. Keep open: work remains. Rebase the in-thread find feature onto the current v2 branch and verify its search corpus matches rendered text.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Noojuno. Updated 2026-09-01T05:36:36Z. Draft no. Target t3code/codex-turn-mapping. Head 25adc8e21704dda50c7a0ad05077456138c80a76. Branch t3code/thread-search-v2. Size +176093 / -83771, 876 files, 217 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 12 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:27.196681+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #2829.

Limits. The 876-file cumulative diff was not fully reviewed. The outdated unresolved terminal-label highlight finding was not confirmed on a clean feature-only diff. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5589. feat(worktrees): manage lifecycle on orchestrator v2

Request. Add safe worktree lifecycle management to the V2 orchestrator.

Audit finding. Current main already recreates missing worktrees through PR 7839, but lacks the proposed inventory, retention policy, and V2 startup integration. The body declares a dependency on the still-open orchestrator branch, and the actual diff includes 923 files and 285,412 changed lines. Only the worktree contracts and mutation-permit module were inspected, so neither closure nor merge readiness is established.

Recommendation. Keep open: partial fix. Rebase onto the chosen orchestrator base and provide a lifecycle-only diff for a complete safety review.

Confidence low. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author StiensWout. Updated 2026-09-01T05:36:38Z. Draft no. Target t3code/codex-turn-mapping. Head bdc613b9f3f9fecc9d611b94a2fa014b393a27ab. Branch t3code/worktree-management-v2. Size +188333 / -97079, 923 files, 272 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:49:27.196754+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #2829, #4742, #7839. Merged PRs that cover all or part: #7839.

Limits. The 13,651,241-byte diff spans 923 files and was not fully inspected. Selected worktree contracts and lifecycle serialization were read. V2 session restart, cleanup safety, UI, and the unrelated orchestrator changes still need a full review.

PR #5652. feat(server): sync thread read status across clients

Request. Adds event-sourced read and unread state shared by clients instead of keeping web-only visit markers.

Audit finding. Main still stores read markers locally, so this feature is not superseded. The current head retains the valid unbounded-view-timestamp finding and a queued unread-to-view race, despite the latter review being marked resolved. Mobile can also submit a null view token before the shell arrives and then skip retrying it. The migration now conflicts with main's migration 041, and the feature needs fresh multi-client verification.

Recommendation. Keep open: work remains. Rebase onto current main, fix boundary validation and view-command ordering, and verify shared read state with two clients.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-13T23:31:37Z. Draft no. Target main. Head 19b837ee9cc4810d627c00396ac47936246f7362. Branch t3code/server-side-thread-status. Size +1029 / -275, 41 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:27.197085+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6662, #4961, #8031, #3131, #5579.

Limits. Read-only review. No local tests, browsers, native clients, or runtime verification were run. Canonical current-head required checks pass, but the branch conflicts with current main and has no approving review decision. The alternative shared-read-state proposal was checked for stated scope, not reviewed in full here. No duplicate-closure recommendation is made. Mobile reports views on focus, but this diff does not add native unread indicators or a native mark-unread action.

PR #5696. feat: remove Ultrathink

Request. Remove the Ultrathink option, prompt rewriting, and related controls and styling across clients and the Claude adapter.

Audit finding. Main still advertises Ultrathink and injects its prompt prefix, so this deletion is not already landed. The full diff removes the feature across contracts, server, web, settings, and mobile, while ordinary effort values still use the existing default fallback. The body gives no upstream source for the claim that Ultrathink is obsolete, and later Ultracode help text is a different feature.

Recommendation. Keep open: decision needed. Confirm the removal decision and verify saved selections plus old-server client compatibility on a current rebase.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-13T23:27:51Z. Draft no. Target main. Head 866476eb2acca97f902b0d245eaf06ecf96fc357. Branch t3code/remove-ultrathink. Size +37 / -623, 19 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:27.197233+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #3625, #6092.

Limits. No upstream deprecation source or mixed-version client/server test is supplied.

PR #5700. fix(usage): keep the richest copy of a deduped usage record

Request. Keep complete usage counts when transcripts contain several snapshots of one message.

Audit finding. Main still keeps the first dedupe key both within a file and across aggregation. The patch replaces a poorer record and retracts its old cost, but a review comment correctly identifies crossing token fields as an uncovered case. Main now also parses appended transcript bytes with cache version 3, so replacing the old full-file helper would lose newer incremental-scan behavior.

Recommendation. Keep open: work remains. Rework deduplication for incremental scans and add a crossing-fields test before choosing whole-record versus per-field merging.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author xkelxmc. Updated 2026-08-09T08:20:23Z. Draft no. Target main. Head 052e18e9202b3110aa1b2469bdb24cf7af8a35f9. Branch fix/claude-dedupe-keeps-richest-copy. Size +96 / -11, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:27.197311+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #9024.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5711. fix(server): cap background-work deferral and report session-teardown losses

Request. Bound background-session deferral, refresh activity timestamps, and report lost Claude tasks.

Audit finding. Merged PR 5891 now emits stopped events for live Claude tasks during session teardown. Main still defers reaping for background liveness without the proposed cap and does not synchronize bindings on runtime activity. The reviewed patch also leaves activity events unguarded against an old provider instance, as its open review reports.

Recommendation. Keep open: partial fix. Guard activity touches by provider-instance ownership, then rebase the remaining cap and loss-reporting work.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author gfsaaser24. Updated 2026-08-08T15:27:41Z. Draft no. Target main. Head 5aeeb1b52986c4aa5737bda0a2cb2b3d43c8bfd4. Branch t3code/upstream-reaper-hardening. Size +954 / -10, 7 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 11 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:27.197367+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5677, #5891. Merged PRs that cover all or part: #5891.

Limits. Read all three production patches and the current teardown path, not the full 964-line diff including new tests.

PR #5723. fix(codex): early child completion no longer gets lost

Request. Preserve child completion received before Codex child registration.

Audit finding. Main records foreign live turn IDs for Stop but drops their completion before explicit child identity is known. Later registration still emits a started or activity event without replaying a prior settlement. The PR adds compact lifecycle state, which is distinct from the landed fix that ignores trailing child interactions.

Recommendation. Keep open: work remains. Review this settlement replay together with PR 7848's complementary early-start handling.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author caezium. Updated 2026-08-08T17:51:43Z. Draft no. Target main. Head c73f5a86c17c9f7ce21b355c1b65f3c7650db648. Branch agent/preserve-preregistration-subagent-lifecycle. Size +524 / -9, 2 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:27.197439+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5718, #7848, #7937.

Limits. Production changes were inspected, but the full integration-test diff was not reviewed. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #5748. feat(claude): support CLIProxyAPI providers

Request. Add dedicated Claude settings for a CLIProxyAPI endpoint and credential.

Audit finding. Main supports Claude environment configuration but has no CLIProxyAPI-specific fields. The diff adds a service-specific toggle and key, clears two ambient Anthropic credentials, and separates continuation groups by endpoint. A maintainer must decide whether this belongs in dedicated settings, and the credential isolation must also account for explicit Claude OAuth tokens and cloud-backend flags.

Recommendation. Keep open: decision needed. Decide whether to support CLIProxyAPI with dedicated settings or the existing provider environment controls.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author selenodot. Updated 2026-08-09T01:49:58Z. Draft no. Target main. Head 2e3369291a1b982d73572cb3fa53ea2ec1f7b9dc. Branch seleno/add-cliproxyapi-support. Size +178 / -9, 7 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:27.197508+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Limits. Latest-head required checks are not reported: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports merge conflicts against the target branch.

PR #5780. perf(server): trace logs keep hours of history instead of minutes

Request. Extend local trace history with shared process polling, sampling, compression, and incremental reads.

Audit finding. Main already captures one process table per terminal poll through the subprocess-polling fix. It still keeps ten plain trace backups, writes every sampled span, and retains all decoded trace files during diagnostics. The remaining tracing and PID-liveness work is useful, but changes diagnostic counts and adds synchronous gzip cost.

Recommendation. Keep open: partial fix. Keep the missing trace-retention and PID-liveness fixes while removing the landed process-snapshot refactor.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-09T21:56:27Z. Draft no. Target main. Head ffd43b41ec7386adc1190579e3ab59935e570f16. Branch t3code/trace-log-churn. Size +806 / -394, 17 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:27.197567+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6377, #5411. Merged PRs that cover all or part: #6377.

PR #5795. feat(server): steer Codex mid-turn instead of starting a phantom turn

Request. Use native turn/steer for Codex mid-turn sends and keep turn identity consistent.

Audit finding. Merged PR 5762 preserves the active turn ID when Codex accepts a follow-up, so the simplest wrong-Stop-target case is already addressed. Main still sends every message through turn/start and returns that response's turn ID. This PR changes steering, rejection handling, concurrent sends and projected turn identity, which remain material scope beyond the landed Stop fix.

Recommendation. Keep open: partial fix. Review a current-main version of the native steering path with send, Stop and stale-turn races.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author liusqu. Updated 2026-08-09T08:01:09Z. Draft no. Target main. Head d0080c707daffba779912f640e99440ef5628cc8. Branch feat/codex-turn-steer. Size +2243 / -108, 16 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 2 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:27.197641+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 4. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5762, #6543. Merged PRs that cover all or part: #5762.

Limits. The core runtime proposal was inspected, but the full 16-file lifecycle and test diff was not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #5806. fix(usage): usage no longer misses custom provider-instance homes

Request. Include custom Claude and Codex provider homes in usage scans without counting shared homes twice.

Audit finding. Main still resolves Claude and Codex transcript roots from legacy provider settings only. The recent Grok usage and incremental transcript-reading merges did not enumerate providerInstances. This PR handles instance environment precedence and real-path deduplication, but it must now preserve Grok scans and coordinate with the newer instance-home proposal.

Recommendation. Keep open: work remains. Combine the usage-home proposals while retaining instance environment and symlink coverage.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author zenDevNomad. Updated 2026-08-29T09:25:53Z. Draft no. Target main. Head 0ed33dde6edc90f2f90052a50238181340989a0f. Branch usage-scan-instance-homes. Size +366 / -8, 3 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:27.197700+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5805, #5738, #8470, #8358, #9024.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #5812. fix(server): report incomplete usage scans

Request. Report incomplete transcript scans and prefer the best available copy across environments.

Audit finding. The new incremental scanner on main still swallows listing failures, maps unreadable files to empty records, and reports successful roots as ok. Shared usageMerge still lets the first environment claim a source regardless of coverage. The PR remains needed, but it must preserve the new incremental and Grok scan paths and distinguish ordinary ENOENT rotation from unreadable data.

Recommendation. Keep open: work remains. Port the coverage statuses to the current scanner and fix the reviewed benign-rotation handling.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author caezium. Updated 2026-08-09T10:32:34Z. Draft no. Target main. Head 8dd5bc2eb17225d2c9c8d48ed44ef144c7db086a. Branch agent/usage-scan-errors. Size +497 / -41, 5 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 16 passed, 0 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:27.197832+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5798, #9024, #5814.

Limits. Read the three production patches, but not all test bodies in the 538-line diff.

PR #5814. fix(server): reconcile Codex cumulative usage

Request. Reconcile Codex transcript usage with cumulative counters and report malformed records.

Audit finding. Main still deduplicates last_token_usage by JSON signature rather than comparing cumulative increments, and UsageService still reports malformedRecords:0. The fork-copy fix addresses a different source of inflation. The new append-only reader and cache v3 from PR 9024 mean this older cache-v4 rewrite must preserve incremental parser state instead of replacing that work.

Recommendation. Keep open: work remains. Rebase cumulative validation onto the incremental reader and add its state to the durable scan cache.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author caezium. Updated 2026-08-09T10:33:15Z. Draft no. Target main. Head 3d06d91106fcb1ce7588f85c04a2f9de4f56e7e5. Branch agent/usage-codex-reconcile. Size +1012 / -48, 8 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:33.417530+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5800, #5887, #9024, #5812, #5811, #5700.

Limits. The parser and cache changes were inspected, but the full eight-file diff was not reviewed. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #5827. fix(usage): distinguish unpriced usage from zero cost

Request. Display unknown usage cost as unknown and mixed coverage as a lower-bound estimate.

Audit finding. Web and mobile still format costUsd directly even when costQuality records unpriced usage. The patch carries unpriced coverage into provider, model and daily totals and changes both clients, but it predates the web usage redesign and adds static-render tests that current guidance rejects. The pricing fix changes rates, not how unmatched rates appear.

Recommendation. Keep open: work remains. Port the shared cost-coverage formatting to the current usage UI and retain focused data tests.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author caezium. Updated 2026-08-09T13:29:36Z. Draft no. Target main. Head 9920f0ea42713f841eee5ae6d32fe082355525fb. Branch agent/usage-unpriced-visibility. Size +744 / -172, 11 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 12 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:33.417995+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5799, #7147, #8806.

Limits. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5867. feat(web): render AskUserQuestion exchanges as a stylized Q&A list

Request. Question-and-answer exchanges should show readable paired transcript entries instead of raw tool payloads.

Audit finding. Main still renders user-input activities as work-log rows rather than paired transcript entries. The PR adds exchange cards, but unconditionally removes raw question rows even when no structured replacement is loaded and treats resolved exchanges as blocking content for the thinking indicator. Review discussions identify both limits, and mobile remains outside this web-only change.

Recommendation. Keep open: work remains. Preserve unmatched question history and review resolved-exchange busy-state handling before rebasing on current activity logs.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author zacksmash. Updated 2026-08-20T23:04:57Z. Draft no. Target main. Head 6bbe726f9d2d80fd616edf7ae804ab708686b19f. Branch feat/user-input-qa-display. Size +1158 / -5, 7 files, 5 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:33.418267+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8734, #5127.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #5873. feat(web): show pull request ci status in the sidebar

Request. Show a GitHub CI status dot on thread pull-request badges.

Audit finding. Current ThreadStatusIndicators renders PR state without CI status, and VcsStatusChangeRequest has no checks field. The PR adds a bounded summary for GitHub while leaving the other source-control providers without a signal. Its resolved neutral and stale-check findings are reflected in the inspected summarizer, but the full multi-provider patch still needs review.

Recommendation. Keep open: work remains. Review the remaining provider wiring and verify CI state on ordinary and explicitly linked PR threads.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author AadiJo. Updated 2026-08-09T21:00:04Z. Draft no. Target main. Head 67a89227ad6f6837ee048f52880e2bd430e9d817. Branch show-pull-request-ci-status. Size +831 / -20, 19 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:33.418391+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5407, #8160.

Limits. Inspected the check summarizer, badge renderer, and contract changes, not all 19 files and 851 changed lines. The latest head has no results for the four currently required check names.

PR #5905. fix(web): reliably follow latest thread content

Request. Follow new and resized thread content without carrying stale scroll state between routes.

Audit finding. Merged #6519 restores live following when the reader returns to the end, but main still stores the follow flag without a route key and has no row-size callback. The patch adds those paths, yet its reveal callback drops measurements while anchor positioning is unfinished and its thread-key state still fails the rapid A-to-B-to-A case. Those two unresolved findings match the source, so this is not ready to merge or close.

Recommendation. Keep open: partial fix. Retain pending measurements until anchor completion and key follow state to each route entry, then rebase onto the merged follow fix.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author LordMerc. Updated 2026-08-09T22:39:32Z. Draft no. Target main. Head 87be81ef6417ff9d477de772d361e6230bb20a04. Branch t3code/fix-thread-scroll-positioning. Size +334 / -38, 5 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 11 passed, 0 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:33.418754+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5903, #6519, #4884. Merged PRs that cover all or part: #6519.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #5907. fix(mobile): align non-git new thread behavior

Request. Hide mobile Git workspace controls and force local mode for non-Git projects.

Audit finding. The current mobile flow still loads branches and accepts draft worktree metadata for non-Git projects. The proposed normalization helps only after its VCS query resolves because isGitRepo defaults to true, which the current open review correctly flags for Start and Queue. The later local-branch metadata fix does not cover this pending or offline submission case.

Recommendation. Keep open: work remains. Normalize queued and immediate submissions using authoritative repository state without blocking the offline queue.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author sevnx. Updated 2026-08-14T22:53:52Z. Draft no. Target main. Head b42e30c422ce5bb2d1be29b9130055a40cdcfa07. Branch t3code/fix-mobile-non-git-new-thread. Size +115 / -21, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:33.418828+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6208, #4986.

Limits. The latest head has no results for the four currently required check names.

PR #5910. perf(release): cut build and publish time

Request. Reduce release time with shared build artifacts and add guarded dry runs.

Audit finding. Main already runs quality checks beside release builds and has newer packaging and preflight optimizations. Shared desktop/resource-monitor artifacts and dry-run publish guards remain absent. The proposed prebuild matrix also makes one resource-monitor failure skip every platform, so preserve failure isolation when adapting the remaining work to the new release graph.

Recommendation. Keep open: partial fix. Rebase the missing shared-artifact and dry-run work while preserving per-platform failure isolation.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-09T23:14:06Z. Draft no. Target main. Head 06b3b3e9b8901a9195a9ca797496cffc2a880777. Branch t3code/speed-up-release-builds. Size +573 / -81, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 11 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:33.418889+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7975, #8250. Merged PRs that cover all or part: #7975, #8250.

PR #5962. feat(mobile): Bring Thread Menus to Desktop Parity

Request. Add desktop-style actions and read markers to both mobile thread menus.

Audit finding. Current mobile rows still lack the proposed rename, Mark unread, Copy submenu, and same-branch new-task actions. The patch handles both list variants and Android menu sections, but adds the same preference key as PR #4961 with different update and completion rules. The inspected unread predicate treats interrupted completions differently from PR #4961, so the two changes should share one rule.

Recommendation. Keep open: work remains. Unify read-state handling with PR #4961 before reviewing the full menu change.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author anirudhsama. Updated 2026-08-26T09:53:41Z. Draft no. Target main. Head d69680d5cb2c432edf26ba44a857106a3d0318c7. Branch t3code/add-mobile-thread-menu-options. Size +970 / -215, 27 files, 12 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 18 passed, 0 failed, 0 pending, 7 skipped. Checks captured 2026-09-01T11:49:33.419230+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #4961.

Limits. Menu construction, draft seeding, dialog, and read-state changes were inspected, but all 83 KB of wiring and tests were not reviewed completely. Mobile Native Static Analysis was skipped on the current head; no passing native static result is claimed.

PR #5998. fix(desktop): verified update teardown on Windows+WSL, install integrity check, and resilient WSL readiness handshake

Request. Prevent broken Windows updates and recover WSL startup when the advertised address or readiness probe is wrong.

Audit finding. Main now repeats readiness probes and stages the WSL runtime on Linux storage, covering part of the slow-start and install-tree pressure. It still chooses the first distro IPv4 and proceeds after unverified backend stops. The remaining diff combines endpoint races, retry limits, install stamps, and root process killing, and required Check still fails on formatting.

Recommendation. Keep open: partial fix. Split and rebase the remaining endpoint-recovery and verified-update changes against the current WSL runtime staging.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Jgratton24. Updated 2026-08-12T07:48:11Z. Draft no. Target main. Head 249a6d93da1c094c9fe2f94af989a6377dcbe6cb. Branch fix/update-apply-wsl-handshake. Size +2238 / -112, 16 files, 9 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: FAILURE, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 12 passed, 2 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:33.419464+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5211, #5522, #5967, #4535, #5520, #5526, #5769, #8429. Merged PRs that cover all or part: #5526, #5769.

Limits. No packaged Windows update or root holder-scan run was performed. Required Check fails on formatting in the reviewed head; no packaged update run was performed.

PR #6004. fix(server): coalesce Codex child progress before ingestion

Request. Reduce high-frequency Codex child progress before durable runtime ingestion.

Audit finding. The adapter still maps each child item and usage notification into an event and offers every event to runtimeEventQueue. Later projection and snapshot optimizations do not remove that durable event volume. The PR adds two latest-value lanes and terminal flushes, but must retain the session-scope event consumer fixed after its base.

Recommendation. Keep open: work remains. Rebase the coalescer while preserving session-scope lifetime and verify terminal flush ordering.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author cheruvian. Updated 2026-08-10T14:35:20Z. Draft no. Target main. Head 8d276114c3ebd0440a1555bf421e003a73da0587. Branch release/coalesce-codex-progress-ingestion. Size +1000 / -3, 5 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:33.419671+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5681, #6538, #9000.

Limits. The coalescer and adapter changes were inspected, but the full race-test and ingestion-test diff was not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #6018. fix(server): settle aborted provider turns

Request. Persist an interrupted lifecycle for a matching canonical turn.aborted event.

Audit finding. Main still excludes turn.aborted from its durable session transition. This PR adds exact-turn guards and extensive ordering tests, but it does not finalize buffered assistant output or proposed plans as the newer abort PR does. The proposals also differ on whether the live session becomes interrupted or ready, so neither is an exact replacement for the other yet.

Recommendation. Keep open: work remains. Choose one abort lifecycle rule and retain both ordering and buffered-output coverage.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author cheruvian. Updated 2026-08-10T16:34:17Z. Draft no. Target main. Head 7c52a7c4a7cf3aeff659b1b1748729868e6d46fc. Branch release/fix-aborted-session-lifecycle. Size +1036 / -15, 5 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:33.419721+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8859, #8802, #8480, #9005.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6052. feat(github): use the right account for each repository

Request. Select GitHub credentials by host and repository owner without storing tokens in T3.

Audit finding. Main still delegates every GitHub command to the active CLI account and has no githubAccountRouting setting. The inspected route selector and CLI patch add per-owner defaults, token selection, and mixed-account batching, which are separate from basic Enterprise detection. Account-aware PR snapshots must also be reviewed with the separate snapshot-verification proposal.

Recommendation. Keep open: work remains. Complete an account-routing review covering owner overrides, host defaults, PR batching, and snapshot identity.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author DominicVonk. Updated 2026-08-12T13:09:03Z. Draft no. Target main. Head 7620cb283980516887aff5c301f65ec0b8d81f96. Branch t3code/support-multiple-github-tokens. Size +1646 / -181, 26 files, 20 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:42.010158+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5089, #6470, #7959.

Limits. Read the credential selector, CLI execution, auth parser, and settings contracts. The complete 26-file, 1,827-line diff was not fully read. The latest head has no results for the four currently required check names.

PR #6088. fix(web): scope source control settings by environment

Request. Choose which connected environment owns source-control settings and writer configuration.

Audit finding. Main now can scan a fallback relay environment through PR 6230, but Git fetch policy and writing settings still use primary-only settings hooks. The inspected PR routes those controls and provider models through a selected environment and adds read-only permission handling. The earlier discovery fix therefore covers only part of the request.

Recommendation. Keep open: partial fix. Rebase the selected-environment controls onto the current fallback-environment discovery logic.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Popidge. Updated 2026-08-11T04:05:40Z. Draft no. Target main. Head dd9b8d1e116f141a83b15d95f04b0476b103fb34. Branch codex/source-control-settings-by-environment. Size +596 / -118, 8 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:42.010588+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #6230, #6052. Merged PRs that cover all or part: #6230.

Limits. Read the environment selector and production routing changes, not the complete component-test changes in the 714-line diff. The latest head has no results for the four currently required check names.

PR #6100. feat(web): default panel layout for new project chats

Request. Open a configurable files panel or terminal when a project chat starts.

Audit finding. Main has no new-chat panel-default preferences. The patch covers ordinary creation, reused drafts, pull-request preparation and plan implementation, and now waits for settings hydration. Its in-memory scoped-key record still loses a deliberate closed layout after reload or environment remapping, matching the remaining review findings.

Recommendation. Keep open: work remains. Persist the default-layout decision with the draft and preserve it when the draft changes environment.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author pranav100000. Updated 2026-08-12T07:20:33Z. Draft no. Target main. Head 1b0dbfaeffdb83f2b673ea53acf1ba56ca805678. Branch feat/project-chat-panel-defaults-5676. Size +429 / -0, 12 files, 7 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:42.010656+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 7. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5676.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #6102. feat(web): add per-commit diff views

Request. Add individual commit diffs to the Diff pane scope menu.

Audit finding. Main review contracts still accept only working-tree and branch-range sources. The selected diff adds first-parent commit patches, but its git-log failure fallback becomes an empty complete list that can clear the selected commit. It also loads commit metadata during every normal preview, matching the open review concern about remote payload cost.

Recommendation. Keep open: work remains. Make commit metadata lazy and preserve selection when listing fails, then finish the UI and test review.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author pranav100000. Updated 2026-08-12T07:19:18Z. Draft no. Target main. Head 89e48e6bf38c5442a9a263a6b08adb2300eff5fa. Branch feat/diff-pane-commit-views-5881. Size +669 / -79, 11 files, 6 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 6 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:42.010720+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 12. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5881.

Limits. Read the VCS commit path, selection store, and contract changes, not the full 11-file, 748-line diff. The latest head has no results for the four currently required check names.

PR #6148. fix(server): prevent silent session forks when switching provider accounts

Request. Preserve provider context across compatible account-instance switches and reject incompatible resumes.

Audit finding. Main has a reactor-level continuation check, but ProviderService.startSession still drops persisted cursor and cwd whenever instance IDs differ. Codex also still replaces a missing-thread resume with thread/start. The PR changes both paths and directly conflicts with the fresh-session policy in the broader recovery PR.

Recommendation. Keep open: work remains. Agree on failed-resume behavior and test switching a stopped thread between compatible accounts.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author DavidIlie. Updated 2026-08-12T13:14:45Z. Draft no. Target main. Head 9d16f9ba301d5050eb66d379311be5e85740d37f. Branch fix/codex-preserve-resume-cursor. Size +536 / -101, 5 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:42.010826+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4766, #5433.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6162. feat(clients): reload provider sessions per thread without restarting T3 Code

Request. Reload one thread provider process to pick up current MCP and provider settings.

Audit finding. Main has stop and resume operations but no Reload agent session action or onlyIfIdle guard. The full diff covers web, desktop menus, the command palette, and mobile controls. The action is not gated on server support for onlyIfIdle, so an older remote server can accept the existing stop command without the new race protection.

Recommendation. Keep open: work remains. Gate reload on server support for the idle-only stop before offering it to remote clients.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author DavidIlie. Updated 2026-08-12T13:14:50Z. Draft no. Target main. Head 4331b4514b4a12621bd73caf43eafd7e07f9ecc3. Branch feat/reload-thread-provider-session. Size +418 / -14, 17 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:42.011056+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5437.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6196. feat(pull-requests): resolve ssh config host aliases on git remotes

Request. Resolve SSH host aliases before repository detection and suppress interrupt-only query errors.

Audit finding. RepositoryIdentityResolver still builds identity from the literal remote URL, and no SSH alias normalizer is wired into current Git remote reads. The web query helper also still converts every Failure into an error message, including interruption. Both proposed changes remain, but they should be reviewed as separate concerns. The query-interruption fix also leaves the mobile hook unchanged.

Recommendation. Keep open: work remains. Separate alias resolution from query interruption and cover user-less SSH aliases and the mobile query hook.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author nyedle. Updated 2026-08-12T11:38:18Z. Draft no. Target main. Head 0fed43997d41be53a9c7db1595093daf2ea39918. Branch main. Size +218 / -10, 7 files, 10 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:42.011276+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 4. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6188.

Limits. The latest head has no results for the four currently required check names.

PR #6203. feat(desktop): add local file mentions

Request. Insert desktop-local non-image files as absolute-path mention chips without uploading them.

Audit finding. Stable v0.0.37 already supports generic file uploads through merged PRs 8235 and 8236, including remote environments. This PR proposes a different local-only path that rejects remote non-image drops and uses the old image-only composer flow. The exact path-mention feature is not landed, but the original no-upload constraint now needs a product decision. Its primary-environment gate also accepts untranslated Windows paths when the primary server runs in WSL.

Recommendation. Keep open: decision needed. Decide whether a separate local-path feature with WSL path translation should coexist with generic attachments.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author coah80. Updated 2026-08-15T08:27:00Z. Draft no. Target main. Head 6df5f1c9375e4899be80c2c1b8c24aaa29bd7662. Branch agent/desktop-file-path-mentions. Size +177 / -9, 8 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 11 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:42.011329+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8235, #8236. Merged PRs that cover all or part: #8235, #8236.

Limits. The latest head has no results for the four currently required check names.

PR #6214. fix(web): fold worktree cleanup into the delete-thread confirmation

Request. Offer thread-only deletion and thread-plus-worktree deletion in one confirmation.

Audit finding. Main still uses a boolean confirmation and a separate worktree prompt in useThreadActions. The inspected diff adds explicit primary and secondary outcomes, but intentionally leaves the legacy sidebar and bulk deletion unchanged. This remains an unlanded UI change and needs an explicit entry-point decision before claiming a single-step delete everywhere.

Recommendation. Keep open: work remains. Cover legacy single-thread deletion in the combined dialog and keep bulk-delete scope explicit.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author tm0h. Updated 2026-08-21T11:39:07Z. Draft no. Target main. Head f054b6acc73c73b9fe1904bdb51bb78c5ea1798a. Branch fix/web-single-delete-confirmation. Size +357 / -133, 9 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:42.011587+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5624, #4615, #4742, #5589.

Limits. Read the deletion helper, confirmation contract, and host changes, not the complete 490-line diff and its tests. The latest head has no results for the four currently required check names.

PR #6228. fix(server): stop sending the local directory to a remote OpenCode server

Request. Do not send a local project directory to an OpenCode server on another host.

Audit finding. Main still sends directory when creating every SDK client and forks resumed sessions after a local directory comparison. The PR omits directory for external non-loopback servers and skips remote forking, but misses the SDK client used by connectToOpenCodeServer for its version probe. That remaining remote request still carries the local path, and host-based classification also needs a decision for local servers reached through a LAN name.

Recommendation. Keep open: work remains. Apply the remote-directory rule to the health probe and verify remote resume plus local-external behavior.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author CDVolvik. Updated 2026-08-30T09:58:34Z. Draft no. Target main. Head 28715a977a006eb2b52e4ec9e1df31004d4825df. Branch fix/opencode-remote-directory. Size +208 / -27, 6 files, 1 commits. Mergeability MERGEABLE. Merge state UNSTABLE. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 15 passed, 1 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:49:42.011787+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 3. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #3094.

PR #6254. perf(server): stop Windows port discovery thrashing WMI

Request. Reduce Windows preview WMI work with one process-name map and a timeout cooldown.

Audit finding. Main still runs Get-Process once per listener and has no Windows listener cooldown, separate from the terminal process-snapshot fix. The added concurrent-scan test does not start its first fork before awaiting the gated second scan. The cooldown also substitutes common ports for the last good listener list, temporarily hiding servers on other ports.

Recommendation. Keep open: work remains. Fix the test fiber and retain known listeners during cooldown before rebasing the scanner change.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author RioPlay. Updated 2026-08-14T08:47:44Z. Draft no. Target main. Head 920f8251d9c63d0b7e78995ae4bcb3b65f5e6fbf. Branch perf/windows-port-scanner. Size +304 / -22, 2 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.285076+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5900, #6377.

Limits. Required CI has no result on the reviewed head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6260. fix(shared): prefer Windows PowerShell 5.1 over optional pwsh

Request. Prefer built-in Windows PowerShell 5.1 over optional PowerShell 7 for terminal startup and environment probes.

Audit finding. Main already falls back from pwsh to built-in PowerShell, so this PR changes the default edition rather than removing a hard dependency. Both capture scripts read PowerShell output as UTF-8 without setting its console encoding, which the human review identifies as a non-ASCII-path regression when 5.1 becomes first. Probe preference and interactive-shell preference also need separate decisions.

Recommendation. Keep open: decision needed. Separate probe and interactive-shell preferences and set UTF-8 output before preferring PowerShell 5.1 captures.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author RioPlay. Updated 2026-08-14T08:45:06Z. Draft no. Target main. Head 99da444ba9cd4955f4fbd1fb3c815710d81e1f6d. Branch fix/windows-powershell-51-first. Size +43 / -31, 7 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.285352+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #6261. fix(web): open automation previews in thread browser panel

Request. Keep agent-created preview tabs reachable in the thread browser panel.

Audit finding. Current ChatView reconciles browser surfaces for the active thread, but PreviewAutomationHosts still opens the mini-player and does not reconcile right-panel surfaces itself. The PR adds host-side reconciliation and changes explicit presentation to the right panel. The remaining work includes a presentation choice, not just a missing store update.

Recommendation. Keep open: partial fix. Decide whether agent-requested presentation should open the right panel, then retain only the missing reconciliation work.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Specter242. Updated 2026-08-12T23:59:10Z. Draft no. Target main. Head 4c1e5296bd4c0cecd3f30f4dbb6f336d54a513f5. Branch agent/keep-automation-previews-in-browser-panel. Size +116 / -1, 3 files, 4 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:48.285451+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Limits. The collected latest head has no results for these required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6268. fix(scripts): run worktree setup without POSIX shell

Request. Replace the POSIX worktree setup command with a portable Node script.

Audit finding. Merged PR 8814 added a separate PowerShell setup command, but main still registers the original ln-based command for automatic worktree setup. It also still relies on creating symlinks without the proposed copy fallback and preservation rules. The portable bootstrap remains useful, but it must account for both current script entries.

Recommendation. Keep open: partial fix. Replace both platform-specific setup entries with one verified portable script.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author RioPlay. Updated 2026-08-15T08:12:33Z. Draft no. Target main. Head 60918659d093c34beff103bfa0fe1fea2764aaf2. Branch fix/windows-worktree-setup. Size +350 / -1, 3 files, 4 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:48.285526+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8814. Merged PRs that cover all or part: #8814.

Limits. No Windows bootstrap was run in this audit. The latest head has no results for the four currently required check names.

PR #6301. fix(desktop): skip slow powershell profile load if node is available

Request. Skip Windows PowerShell environment probes when static paths provide Node.

Audit finding. Main already runs the two PowerShell probes concurrently but still waits for their environment data. This PR adds a static Node check and skips both probes unless profile text mentions fnm. That test does not cover other profile-supplied PATH entries or indirect fnm setup, so startup can lose a valid provider environment.

Recommendation. Keep open: work remains. Replace the Node-only skip condition with a scheme that preserves profile-provided PATH and environment data.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author mohamedmastouri-hue. Updated 2026-08-15T15:52:21Z. Draft no. Target main. Head 23081bac7379dbab10027e70a4104f0049f968e3. Branch fix-windows-startup-delay. Size +248 / -11, 2 files, 21 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.285966+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 1. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4403, #5878, #7492.

Limits. Required CI has no result on the reviewed head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6305. fix(server): prevent duplicate desktop clients after restart

Request. Prevent repeated desktop bootstrap exchanges from accumulating authorized client sessions.

Audit finding. Main still inserts a fresh bearer session for each reusable desktop bootstrap exchange. This PR rotates same-subject, same-method sessions in one transaction, unlike the separate desktop-token persistence proposal, which reuses a saved credential. Rotation fixes accumulation even without secure storage but invalidates a prior desktop token when another exchange occurs, so maintainers need to choose the intended concurrent-client behavior.

Recommendation. Keep open: decision needed. Choose server-side rotation or desktop token reuse and verify concurrent primary and WSL credential consumers.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author seeb1337. Updated 2026-08-12T10:22:23Z. Draft no. Target main. Head b0f4893f0a07ea5c1643013ceee3ea2d3b94680b. Branch codex/fix-wsl-authorized-client-duplication. Size +195 / -18, 5 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.286117+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4687, #6283.

Limits. Required checks absent from the canonical latest-commit rollup: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #6315. feat: add pluggable issue adapters and workspace

Request. Add an Issues workspace with host adapters, mutations, linked pull requests, and agent handoffs.

Audit finding. Pinned main has a Pull Requests workspace but no Issues workspace. The final diff includes Linear integration, issueTracking settings, credential changes, and AI work-item selection, contradicting the body claim that Linear and new settings are excluded. A maintainer-attributed comment already requests smaller product and implementation changes, although a fresh GitHub read confirms the PR is still open. The 193-file change needs that scope decision and a full review, not closure as fixed.

Recommendation. Keep open: decision needed. Split the provider-neutral issue model and one read-only host workflow from credential, mutation, and AI-task features.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-08-28T18:41:53Z. Draft no. Target main. Head e153385ee07127b81397e43f70149bc3b83bc394. Branch feat/issues-page. Size +41350 / -2127, 193 files, 216 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 16 passed, 0 failed, 0 pending, 8 skipped. Checks captured 2026-09-01T11:49:48.286183+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #6466.

Limits. Only selected contracts, registry, settings, and UI changes were reviewed from the 47326-line diff. The 110 resolved review threads were not all verified against the final source. Host mutation behavior was not exercised with real credentials. Latest-head Mobile Native Static Analysis was skipped, not executed.

PR #6318. fix(server): [Windows] bound child process shutdown

Request. Windows server shutdown must stop waiting when a scoped child process or its finalizer does not exit.

Audit finding. Main still installs the standard platform child-process spawner with no global Windows shutdown wrapper. The PR bounds scope-owned termination and tests a process tree, but its current diff deliberately preserves unbounded explicit kill calls despite the body claiming they are bounded. This is separate from node-pty terminal teardown and needs Windows lifecycle review.

Recommendation. Keep open: work remains. Correct the stated explicit-kill behavior and validate the wrapper against current Windows scope shutdown.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Defmon3. Updated 2026-08-14T17:32:38Z. Draft no. Target main. Head 97dd9fa05c15fe04f45596d8a297ccc558461191. Branch fix/windows-child-process-shutdown. Size +496 / -6, 3 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.286354+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #3573, #3063.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #6350. fix(server): use prebuilt node-pty binaries

Request. Use prebuilt native PTY packages so supported remote hosts do not need a compiler.

Audit finding. Main still depends on node-pty and keeps separate WSL build and staging paths. The final patch switches the adapter, WSL probe and desktop native staging, addressing its reported helper-path and asar issues. Current main now has a shared CLI external-package list that names only node-pty, and this patch does not update it, leaving the new wrapper and its platform packages outside the bundle and sidecar contract.

Recommendation. Keep open: work remains. Port the dependency switch through the current CLI external-package list and verify real packaged PTYs on macOS, Windows, WSL and Linux.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author skebby11. Updated 2026-08-13T06:05:52Z. Draft no. Target main. Head 3c05b5e3bc31c2631d7d6f1e0c83fcf5d7f5ef6b. Branch codex/fix-linux-node-pty-prebuilds. Size +239 / -589, 12 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.286806+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5129, #5132, #5769, #6169.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #6351. fix(web): <mod>-w closes focused right panel tabs instead of entire window

Request. Close a focused right-panel tab with Mod+W without closing the application window.

Audit finding. Main has no equivalent panel-close interception, so the request remains. The proposed hard-coded handler runs before configured shortcuts and also matches panel terminals because all panel content is inside PreviewPanelShell. The unresolved review finding is valid: it can close an entire terminal tab instead of its focused split and bypass remapped keybindings.

Recommendation. Keep open: work remains. Exclude terminal-owned focus and use a typed configurable panel-close command before merging.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author davidhu2000. Updated 2026-08-15T22:45:32Z. Draft no. Target main. Head ece0328ed76a04c14ae338620b77365a7c98247b. Branch fix/right-panel-close-shortcut. Size +86 / -5, 4 files, 6 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 11 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:48.286919+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6404.

Limits. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #6356. fix(server): pick up newly installed provider CLIs on Windows refresh

Request. Find provider CLIs installed after the Windows server starts without requiring a restart.

Audit finding. Main refresh still does not reload Windows registry PATH. This PR reads Machine and User PATH even for a profile-loaded shell, discarding profile-added toolchain paths, and it does not refresh the environment copies held by custom provider instances. A Windows reviewer requested changes on that same head, and the broader refresh PR addresses these missing lifetime rules. The original defect remains real, but this implementation needs work.

Recommendation. Keep open: work remains. Preserve profile PATH and refresh captured provider environments using the broader Windows refresh approach.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author fraineralex. Updated 2026-08-15T15:53:11Z. Draft no. Target main. Head d00be9516fe7e77b2201fa8c7f11712cfd45fef5. Branch fix/windows-provider-cli-refresh-path. Size +50 / -5, 5 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 5 passed, 2 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:48.287023+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 1. Unresolved review threads 6. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6352, #7362, #8465, #8746, #8748.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6373. feat(web): add pull request file sidebar

Request. Add a pull-request file tree and make PR diffs expanded by default.

Audit finding. Main has no changed-file tree in the PR Code tab and still starts diffs folded. The inspected tree handles paged file lists, but the PR also changes that explicit performance default for every loaded file. The tree feature and the default-expansion choice need separate review, not closure as already handled.

Recommendation. Keep open: decision needed. Separate the file-tree addition from the default-expansion change and measure a large paged PR.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ShpetimA. Updated 2026-08-29T11:29:58Z. Draft no. Target main. Head 7b7bca451b0eb8299d786150ea39876d42c8d521. Branch pr-files-sidebar. Size +573 / -131, 8 files, 10 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.287152+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Limits. Read the complete new file-tree component and fold/pagination logic patch, not the full 704-line diff and view integration. The latest head has no results for the four currently required check names.

PR #6434. fix(web): restore stashed prompts with composer undo

Request. Undo a prompt stash together with its image attachments and stash entry.

Audit finding. Main uses ordinary Lexical HistoryPlugin and has no undo hook for stash side effects. The patch adds history-entry matching and fresh image previews, but current stashes now include non-image files that its image-only transaction does not restore. A current patch must keep text, images, files and stash membership consistent across undo and async encoding.

Recommendation. Keep open: work remains. Extend the undo transaction to current mixed attachments and test stacked stashes plus composer-target changes.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author p4cs-974. Updated 2026-08-16T21:04:29Z. Draft no. Target main. Head 0234aa6540ccf739bb40b3cec446c89750a21810. Branch t3code/fix-stashed-image-undo. Size +533 / -6, 7 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.287515+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8236, #8437.

Limits. Canonical current-head results are missing for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #6436. fix(server): use the correct installer for provider updates

Request. Choose and verify the installer that owns the active provider executable before updating it.

Audit finding. Main still infers update methods from executable paths and falls back to npm for bare commands without verified ownership. The new catalog, installer identity checks, and prefix-specific update execution remain absent, so the npm install-script fix is not a replacement. This broad updater change overlaps the lazy-maintenance work and the narrower Homebrew version-source fix.

Recommendation. Keep open: work remains. Review the full installation catalog and choose one lazy-maintenance API with the Windows refresh PR.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ettoc00. Updated 2026-08-31T09:57:09Z. Draft no. Target main. Head 208aa5600f941708e57500974e6918d143d06b9a. Branch agent/provider-maintenance-installations. Size +4074 / -627, 31 files, 25 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 14 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:48.287633+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #5629, #6245, #7730, #5630, #6247, #7731, #8832, #8465, #8363.

Limits. The 31-file installer diff was not fully reviewed. The ownership types, catalog resolver, and update-execution checks were inspected. Top-level comments and current unresolved findings were reviewed, but the full history of 53 review threads was not read. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6441. fix(chat): show Codex generated images in the thread

Request. Show Codex-generated images, including files outside the workspace, in web and mobile threads.

Audit finding. Merged PR 8936 adds viewed-image UI, but generated savedPath extraction and signed serving outside the workspace remain missing. The proposed root resolver collects generated_images directories from every Codex instance while asset issuance authorizes only the requested thread, crossing the intended instance boundary. Its path fallback can also misread prompt text or short base64 as a file path.

Recommendation. Keep open: partial fix. Scope generated-image access to the thread's provider instance and carry a verified path separately from descriptive text.

Confidence high. Release: In nightly source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author sambhavthakkar. Updated 2026-08-13T07:33:53Z. Draft no. Target main. Head a1816fc23639c4e9086c7c2e1d2d45730b2a0e29. Branch fix/codex-generated-images-in-chat. Size +821 / -34, 20 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:48.287776+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 8. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #8936, #8807. Merged PRs that cover all or part: #8936.

Limits. Image-path and asset-root changes were inspected, but the full 20-file asset and client diff was not reviewed. Only selected current review findings were read. The complete discussion and resolved review history were not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #6447. refactor(web): collapse the sidebar header into one row

Request. Use one sidebar header row with project scope and a toggleable thread search.

Audit finding. Main still has the two-row header and now uses a searchable project combobox. The patch preserves search clearing and IME handling, but its extracted header restores the older non-searchable radio menu and drops the newer Shift-click help text. Theo supported the layout but explicitly left the final choice to the team.

Recommendation. Keep open: decision needed. Get the team layout decision and port it without losing searchable project selection or shortcut help.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author gsimone. Updated 2026-08-13T18:26:43Z. Draft no. Target main. Head 9b0d0c793306318e03ab87bb92029b2a9739e5c0. Branch feat/sidebar-thread-header. Size +362 / -190, 2 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 11 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:48.287896+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5931, #5521.

Limits. GitHub reports conflicts with the target branch, so recorded checks do not validate a rebased integration.

PR #6461. feat(providers): standardize ACP providers

Request. Support installable ACP Registry agents through a generic provider and orchestration-v2 runtime.

Audit finding. Main still registers only the five named providers and has no ACP Registry driver. The inspected new driver depends on orchestration-v2 and adds provider installation, authentication, and native session management beyond the existing ACP adapters. The 977-file diff also contains the wider v2 work, and the author lists missing mobile management, so neither closure nor merge safety follows from passing checks.

Recommendation. Keep open: decision needed. Choose the generic ACP scope and present its dependency stack for a dedicated full review.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author StiensWout. Updated 2026-09-01T05:36:38Z. Draft no. Target t3code/codex-turn-mapping. Head 7a346408dbaad9870ea37fcda434205e9099a62f. Branch t3code/acp-registry-search-install. Size +222236 / -95813, 977 files, 537 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 12 passed, 1 failed, 0 pending, 7 skipped. Checks captured 2026-09-01T11:49:54.105570+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #7865, #8583, #7993.

Limits. The 15.4 MB, 977-file diff was not fully reviewed. The Registry driver and its orchestration-v2 dependency were inspected. The author reports incomplete mobile install and authentication controls. Top-level comments and current unresolved findings were reviewed, but the full history of 127 review threads was not read.

PR #6470. fix(web): verify pull request snapshots before hydration

Request. Verify current host accounts and snapshot age before restoring persisted pull-request rows.

Audit finding. Main readPullRequestListSnapshot still accepts a decoded snapshot using only the environment-set storage key, without a timestamp or fresh viewer identity. Current API-budget caching does not verify that the signed-in account still owns those rows. The inspected patch adds that gate, but server cache invalidation and mixed-version behavior need the remaining full review.

Recommendation. Keep open: work remains. Complete the fresh-viewer and cache-invalidation review with an account switch and a legacy connected server.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Adamulek123. Updated 2026-08-28T09:31:43Z. Draft no. Target main. Head aa30e5a33736a52dfcb1beb92f21e08f7ec169a2. Branch t3code/pr-snapshot-safety. Size +1088 / -56, 15 files, 33 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:49:54.105784+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #6052, #6466.

Limits. Read snapshot gating, matching, and the capability contracts. The complete 15-file, 1,144-line diff, including server invalidation and route integration, was not reviewed.

PR #6514. fix(preview): discover named dev server URLs

Request. Discover stable Portless, ngrok, and Tailscale Serve URLs for local dev servers.

Audit finding. Main probes listeners for HTTP readiness but has no named-route discovery or urlKind field. The reviewed patch distinguishes local proxy URLs from public tunnel URLs and carries their target ports through preview opening. This remains separate from the landed browser-ready listener filter and overlaps the active URL-routing changes.

Recommendation. Keep open: work remains. Review named-route discovery against the chosen SSH and gateway routing model.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author jakeleventhal. Updated 2026-08-27T22:48:45Z. Draft no. Target main. Head 8039169f71254003c70ce7d0f99e8d7c0c379fd4. Branch t3code/detect-portless-dev-servers. Size +1252 / -35, 19 files, 13 commits. Mergeability MERGEABLE. Merge state CLEAN. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 8 skipped. Checks captured 2026-09-01T11:49:54.105963+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #6021, #4039, #8841.

Limits. The 72,469-byte diff was not fully read. Review covered the named feature paths and current main, not every file or test.

PR #6516. feat: add stacked pull request workflows

Request. Add GitHub pull-request stacks across review, branch, commit, push, and merge flows.

Audit finding. Main has no PR-stack adapter or contracts. The existing git.runStackedAction sequences ordinary Git actions, not dependent pull requests. A maintainer comment says this 48-file workflow will not be taken forward as one branch, but GitHub still reports the PR open, so the remaining decision is how to split or retire it.

Recommendation. Keep open: decision needed. Confirm whether the open PR should be split into smaller proposals or retired under the recorded maintainer decision.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-08-28T15:34:28Z. Draft no. Target main. Head 499bb5115883c78c9270bd3811cf5b38f64a46b1. Branch feat/stacked-pull-requests. Size +3443 / -86, 48 files, 32 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 17 passed, 1 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:54.106056+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Limits. Read the stack service and contracts, not the full 48-file, 3,529-line cross-client diff. The installed Stack CLI and live Stacks API behavior were not verified.

PR #6530. fix(provider): deliver OpenCode steers at the next tool boundary

Request. Deliver an OpenCode follow-up at the next tool boundary through the v2 steer API.

Audit finding. Main still sends fresh turns and steers through session.promptAsync. The PR switches busy turns to the v2 steer endpoint, but eagerly starts its SDK promise outside runOpenCodeSdk, so synchronous errors bypass typed recovery. That unresolved review finding is present in the diff, and compatibility with the current minimum OpenCode version plus steering attachments still needs verification.

Recommendation. Keep open: work remains. Make prompt creation lazy, verify the v2 attachment schema, and add version-compatible steering tests.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author NeilTheFisher. Updated 2026-08-15T08:36:04Z. Draft no. Target main. Head b49bea422ab23efc84c2ce7b6c9399322a26aa1e. Branch fix/opencode-steer-delivery. Size +63 / -15, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 15 passed, 1 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:49:54.106301+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 3. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #2573, #8207.

Limits. Canonical latest-commit checks do not include Check, Test, Mobile Native Static Analysis, Release Smoke. GitHub reports a merge conflict with current main.

PR #6551. feat(opencode): show actual model per turn

Request. Show the actual OpenCode backend model for a completed turn instead of only its requested alias.

Audit finding. Main has no actual-model message field, and the upstream OpenCode metadata PR is still open. The diff carries the value through persistence and both clients, but migration 041 already belongs to authentication on main. Its late metadata enrichment emits a second turn.completed, while current ingestion still accepts a named completion with no active turn during a pending start, so that lifecycle race needs correction during rebase.

Recommendation. Keep open: work remains. Resolve the upstream metadata dependency, then rebase with a new migration and metadata-only late enrichment.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author KarmCraft. Updated 2026-08-22T09:12:20Z. Draft no. Target main. Head f1ee06297d185384d5f9201b13d6eaa05d2c8e9a. Branch opencode-routed-model-provenance. Size +566 / -11, 20 files, 9 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:54.106500+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6536.

Limits. Canonical latest-commit checks do not include Check, Test, Mobile Native Static Analysis, Release Smoke. GitHub reports a merge conflict with current main.

PR #6554. feat(desktop): update the desktop app on remote Macs from the Update button

Request. A remote client should be able to update and relaunch a desktop-managed host.

Audit finding. Main still rejects desktop-managed self-update RPCs and instructs the user to update the app on that machine. The PR adds a telemetry control protocol, desktop update driver, capability, and confirmation UI, but its capability is not Mac-only when a control fd exists. The preliminary installing report is published before shutdown without an end-to-end delivery receipt, and the author has not verified a packaged remote relaunch.

Recommendation. Keep open: work remains. Prove report delivery, install failure recovery, and reconnect on a packaged host before approving the remote update protocol.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-14T00:33:41Z. Draft no. Target main. Head 159021e95e598f25d7d8e187cdabead074c2afbb. Branch t3code/remote-mac-app-updates. Size +1757 / -214, 31 files, 5 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:49:54.106567+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4777, #7493, #7503.

Limits. No packaged remote desktop update was run.

PR #6577. fix(server): bound OpenCode CLI health probes with timeouts

Request. Bound OpenCode CLI health probes so a hung command cannot block discovery.

Audit finding. Main still waits without a deadline for opencode --version. The inventory half targets the old CLI path, which the merged shared-server change replaced with HTTP inventory. The version deadline remains needed, while any inventory deadline now needs to cover the shared-server and HTTP calls without breaking their cleanup.

Recommendation. Keep open: partial fix. Combine the remaining version deadline with the current probe implementation and define the HTTP inventory deadline.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Adolanium. Updated 2026-08-27T16:18:04Z. Draft no. Target main. Head e6fcc788179b56645698fef465f1c4fb2f21bc87. Branch fix/opencode-probe-timeouts. Size +71 / -7, 2 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:54.106807+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8750, #2248. Merged PRs that cover all or part: #8480.

Limits. Canonical latest-commit checks do not include Check, Test, Mobile Native Static Analysis, Release Smoke. GitHub reports a merge conflict with current main.

PR #6580. fix(web): make preview notes readable and cancellable

Request. Add visible annotation cancellation, richer region targets, and readable preview notes.

Audit finding. Main still uses the older cancellation, region-selection, and cursor behavior. The reviewed patch adds bounded region harvesting, but an ordinary non-additive selection still clears the harvested controls while keeping their region box. The cursor trail also uses fixed opacity after activity ends, matching an unresolved review finding.

Recommendation. Keep open: work remains. Preserve region-owned selections on plain clicks and make inactive cursor trails recede before UI verification.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author mbrow190. Updated 2026-08-18T01:23:04Z. Draft no. Target main. Head 6e7b6a69c19f523ef99184afe1f03946eb51931f. Branch feat/web-preview-annotation-clarity. Size +496 / -217, 11 files, 6 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:54.106869+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 6. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #6242, #6243.

Limits. The animation and annotation UI were not inspected in a running client. The 87,722-byte diff was not fully read. Review covered the named feature paths and current main, not every file or test. The collected latest head has no results for these required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports merge conflicts with the current base.

PR #6584. fix(server): subagent runs no longer delay replies

Request. Prevent subagent telemetry queues from delaying assistant replies and unrelated threads.

Audit finding. Main still sends assistant events and background telemetry through one FIFO worker, so the new ingestion optimization does not supply this priority behavior. The latest patch still treats a phase-only progress tick as a full activity snapshot, which can remove the prior summary and tool name. Resolve that verified review finding before rebasing the worker.

Recommendation. Keep open: work remains. Preserve progress text on phase-only updates, then rebase the priority worker.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Deepusleepy. Updated 2026-08-14T08:45:13Z. Draft no. Target main. Head 053539b2c023b94052c09728699ed5fb16777639. Branch fix/assistant-replies-responsive. Size +693 / -12, 6 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:54.106934+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5681, #8187.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #6601. fix(web): load pull request images from private repositories

Request. Load private GitHub pull-request images through an authenticated environment proxy.

Audit finding. Current PR Markdown still sends ordinary remote image URLs to the renderer, and the asset contracts have no GitHub user-attachment resource. The inspected proxy streams authenticated user-attachment images and sets SVG response policy, but the discussion identifies repository-backed screenshot URLs that it still does not cover. No landed image-rendering change supplies this authentication.

Recommendation. Keep open: work remains. Rebase the authenticated attachment proxy onto current Markdown routing and track repository-backed images as an explicit follow-up.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author artieeg. Updated 2026-08-28T18:10:57Z. Draft no. Target main. Head e01468213f820a327bcfde17ae2cae99e4307def. Branch t3code/fix-pr-viewer-images. Size +392 / -36, 12 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 12 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:54.107062+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #6600, #6052.

Limits. Read URL validation, the HTTP proxy, Markdown integration, and contracts, not every changed call site or test in the 428-line diff. The latest head has no results for the four currently required check names.

PR #6608. perf: make streaming projection and activity appends incremental

Request. Avoid repeated server history reads and client activity sorting during streaming.

Audit finding. Stable PR 8150 already skips the costly shell-summary refresh for ordinary activities and assistant deltas. Main-only PR 9032 cuts another streaming message read, but main still filters and sorts every client activity append and recomputes user-message summaries. Those parts remain useful, although the proposed immutable array append is O(n), not the O(1) claimed in the body.

Recommendation. Keep open: partial fix. Extract the remaining client append and user-message summary changes and measure them against current main.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author x1xhlol. Updated 2026-08-17T12:29:55Z. Draft no. Target main. Head 5e23afae421eac3247da67e645fb358d31239116. Branch perf/streaming-thread-projection. Size +479 / -2, 4 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:49:54.107138+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6675, #8150, #8988, #9032. Merged PRs that cover all or part: #8150.

Limits. No benchmark of the remaining client change against current main was run. Required checks absent from the canonical latest-commit rollup: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #6642. fix(mobile): Catch up the thread feed after a long background

Request. Catch up cached mobile threads and recover stalled account loading after a long background.

Audit finding. Main reconnects on resume, but does not opt into refreshCachedThreadOnSubscribe and still disables the account route while Clerk is loading. The PR adds bounded catch-up, row reuse, and manual Clerk retry on the unmerged orchestration branch. Its collected diff spans 897 files and includes the orchestration rewrite, so this audit cannot approve that full change or call it obsolete.

Recommendation. Keep open: work remains. Separate or restack the mobile catch-up changes onto the intended orchestration parent.

Confidence medium. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author mwolson. Updated 2026-09-01T05:36:37Z. Draft no. Target t3code/codex-turn-mapping. Head 5755e9ea4b36951be2f49a9e4c1301d502d08bdb. Branch fix/mobile-thread-feed-performance-v2.1. Size +184683 / -85834, 897 files, 246 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 2 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:49:54.107750+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 4. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #4878, #8220. Merged PRs that cover all or part: #4878.

Limits. The full 12.98 MB, 897-file diff was too large to review completely. Only the mobile wakeup, account-retry, and task-specific source paths were inspected. Required CI checks are not present on the current head in canonical check metadata. Release status refers to repository tag ancestry; mobile app-store and OTA rollout was not verified.

PR #6653. fix(mobile): connect saved addresses independently Draft.

Request. Keep multiple saved mobile addresses for one environment and connect or remove them independently.

Audit finding. Main still keys both catalog targets and runtime service scopes by environment ID, so registering a second bearer address replaces the first. The merged mobile relay-visibility fix changes which rows appear, not this connection identity model. The selected diff introduces per-address connection IDs and preserves sibling credentials on removal, while web retains its single-address policy.

Recommendation. Keep open: work remains. Review per-address ownership and sibling removal across the shared registry and mobile catalog.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ipanasenko. Updated 2026-08-15T12:19:12Z. Draft yes. Target main. Head f388bb34cbca569d5427e9a2d9cf8ab7bb99f3ff. Branch fix/mobile-multiple-environment-routes. Size +1972 / -352, 30 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:49:54.108066+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #7086, #5463.

Limits. Large 30-file diff. Reviewed connection IDs, pairing registration, and durable sibling-route cleanup, but not every changed file. GitHub reports merge conflicts with main on the collected head.

PR #6662. feat: sync thread unread state across clients

Request. Store read and unread state on the server and synchronize it across web, desktop, and mobile.

Audit finding. Main still stores visits in web UI state and has no viewedAt field or thread-view commands. The patch adds server commands, a migration, local fallback, guarded cross-client writes, and focused mobile acknowledgements. The clock-reversal finding was reviewed and accepted as out of scope, so it is not evidence of a normal device-clock bug. This remains a broad unread-state and migration change requiring maintainer review.

Recommendation. Keep open: work remains. Review the server-authoritative unread model and migration defaults with mixed-version web and mobile clients.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-09-01T09:49:57Z. Draft no. Target main. Head c55dd68b8fae019705df20318edda58d44173106. Branch t3code/sync-thread-viewed-state. Size +2753 / -51, 49 files, 18 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:49:54.108160+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6652.

PR #7071. fix(server): isolate provider command lanes by thread

Request. Keep a blocked provider command on one thread from stopping other threads.

Audit finding. Main still uses one FIFO worker for provider intent commands, so one blocked thread can block others. The proposed keyed worker fixes idle-scope retention, but it reads the key map before creating a lane without a reservation or lock, leaving the concurrent first-enqueue review finding unresolved. This is still needed, with atomic lane creation and focused concurrency coverage.

Recommendation. Keep open: work remains. Make first lane creation atomic and test simultaneous first enqueues for one thread.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author clintebbesen. Updated 2026-08-15T11:52:48Z. Draft no. Target main. Head 4822cc340af75f7970d7aed582507cd5a68049ee. Branch fix/provider-command-cross-thread-lockout. Size +105 / -6, 3 files, 2 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:02.073010+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6517, #6531, #6560, #4944, #4584.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7105. fix(orchestrator): Stop finished Codex turns from sitting on Waiting

Request. Cancel unfinished nonpersistent tools when a Codex turn finishes while preserving real background monitors.

Audit finding. The submitted diff includes 886 files and a separate orchestration-v2 Codex adapter and recovery system. Current main uses the existing CodexAdapter and ProviderRuntimeIngestion paths, so this change depends on unmerged orchestration work. The landed trailing-interaction fix does not prove that orphan dynamic-tool finalization and persistent-monitor recovery are handled.

Recommendation. Keep open: work remains. Extract the intended tool-finalization change onto the supported orchestration base before review.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author mwolson. Updated 2026-09-01T05:36:36Z. Draft no. Target t3code/codex-turn-mapping. Head 515f24e4a3aedfaf252dd52caf6480d907a021fc. Branch fix/codex-orphaned-dynamic-tools. Size +182196 / -85511, 886 files, 241 commits. Mergeability CONFLICTING. Merge state DIRTY. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 8 skipped. Checks captured 2026-09-01T11:50:02.073941+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #7937.

Limits. The 12.9 MB, 886-file diff was not fully reviewed. Only the claimed change area and dependency structure were inspected. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #7124. feat(models): support capabilities for custom models

Request. Let custom models declare their supported option controls and carry those selections to each provider.

Audit finding. Main still assigns one fallback capability set to custom catalog entries and has no per-model capability map in settings. The branch covers the settings editor and adapter paths, but current Grok now accepts reasoningEffort and current OpenCode capability resolution filters plan options when legacy plan mode is off. Those later changes must survive the rebase, and the provider-behavior documentation needs to match them.

Recommendation. Keep open: work remains. Rebase the capability editor and update its provider mappings without bypassing current feature-flag filtering.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-08-16T17:28:29Z. Draft no. Target main. Head fd65aee011a735549d9d25313f28f8a76de6b7ba. Branch t3code/custom-model-capabilities. Size +2653 / -131, 38 files, 18 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:02.074362+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4168, #6420, #8358.

PR #7126. fix(web): read Arabic and Hebrew messages in the right direction

Request. Render Arabic and Hebrew prose and user-written titles in their own text direction without mirroring the app.

Audit finding. The current Markdown plugins and title elements still lack the proposed direction handling. This patch uses per-block direction and fixed LTR code, while the other open proposal uses message-level direction and adds Android support. Mixed-language lists still use the first item's direction, and the latest diff pins only the table element, not its scroll container and toolbar. The list policy needs a maintainer choice and the table wrapper still needs an LTR boundary.

Recommendation. Keep open: decision needed. Agree on one text-direction policy, then pin the table wrapper to LTR before merge.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author AsimNet. Updated 2026-08-21T08:46:38Z. Draft no. Target main. Head 9481d7ceb6396f6e2e3ed61fbd9fc818dc10be7c. Branch pr/bidi-message-direction. Size +228 / -29, 10 files, 9 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:02.074451+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 3. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7466.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7143. fix(server): key assistant text blocks by message id instead of stream position

Request. Match Claude assistant stream and snapshot text by message ID and content-block index.

Audit finding. Main still backfills each snapshot against the start of a turn-wide block list and lets subagent stop frames address parent block indexes. The smaller alternative was closed without merging, so it did not fix these cases. This message-scoped patch remains the active proposal for stalled and multi-message streams.

Recommendation. Keep open: work remains. Review the message-scoped block identity and snapshot repair cases against the current Claude adapter.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Kiri110K. Updated 2026-08-19T00:21:04Z. Draft no. Target main. Head d14de2dbf3bd24d51e47c0d7651400ae2d41c774. Branch fix/claude-adapter-message-scoped-blocks. Size +524 / -40, 3 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:02.074572+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7137, #7142, #6429.

PR #7146. fix(client): hide source providers that need setup

Request. Hide Add Project source hosts that are unavailable or unauthenticated.

Audit finding. Main still lists all source hosts with disabled rows and setup guidance. This patch shares the readiness rule across web and mobile but hides every unauthenticated host, including hosts the user may want to configure. The linked discussion explicitly asks to keep Setup Required for enabled-but-unconfigured hosts, so the proposed behavior is broader than that request.

Recommendation. Keep open: decision needed. Decide whether enabled-but-unconfigured hosts should remain visible before accepting the filter.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author dbalders. Updated 2026-08-19T20:37:42Z. Draft no. Target main. Head 1f89d8cdb477325def2f467a1c619bcc87a19f07. Branch fix/hide-unready-source-providers. Size +128 / -299, 7 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:02.074745+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

PR #7164. feat(web): add configurable picker navigation keybindings

Request. Allow configured previous and next shortcuts in command-palette and composer suggestion pickers.

Audit finding. Main has no picker-navigation commands or pickerFocus contract, so this behavior remains missing. The latest diff sets pickerFocus only in local handlers, while global capture handlers still resolve it as false and can claim an overlapping shortcut first. That unresolved review finding follows directly from the current routing code.

Recommendation. Keep open: work remains. Share picker focus with the global capture handlers before rebasing and retesting navigation.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author GisTypical. Updated 2026-08-27T16:18:40Z. Draft no. Target main. Head 6381b31f93dfdfafd934707e684abe7c55230e21. Branch feat/picker-navigation-keybindings. Size +261 / -9, 11 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:02.074980+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. An older related reference could not be retrieved from GitHub. It is excluded from verified dependencies and fix evidence.

PR #7173. fix(opencode): settle pending approvals on session teardown

Request. Cancel pending OpenCode permission and question requests when a session is torn down.

Audit finding. Main still stops the provider context without resolving pending permission and question requests. The PR adds teardown settlement, but reply handlers remain outside its semaphore and can emit a conflicting resolution during stop. It also chains stop after settlement without ensuring teardown on a settlement failure, matching two still-valid review findings.

Recommendation. Keep open: work remains. Consolidate the teardown fix with the broader cleanup PR, serializing replies and ensuring teardown after settlement failure.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-18T08:33:02Z. Draft no. Target main. Head debfa7617dbaab3000bb98800671c53883d82a44. Branch fix/opencode-pending-teardown. Size +330 / -42, 2 files, 5 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:02.075142+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 3. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7113, #8441.

Limits. Canonical latest-commit checks do not include Check, Test, Mobile Native Static Analysis, Release Smoke. GitHub reports a merge conflict with current main.

PR #7179. fix(threads): keep snoozed threads hidden when work finishes

Request. Finishing work should not wake a snoozed thread before its scheduled wake time.

Audit finding. The shared client snooze classifier still treats post-snooze completion as an early wake. The new server settlement policy in merged PR #8600 now contains the same completion-wake rule, so this branch's client-only behavior change is no longer sufficient. Pending approvals, user input, and fresh errors must keep their existing wake behavior.

Recommendation. Keep open: work remains. Update both the shared snooze classifier and server settlement policy, then test completion versus blocking wake reasons.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T09:02:46Z. Draft no. Target main. Head 90f8477fffe2c0998fa1d4db646caae517d0f1a3. Branch fix/snooze-ignore-completion. Size +56 / -42, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:02.075362+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6368, #8600.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #7181. fix(usage): say when cost is unavailable instead of $0.00

Request. Show that usage cost is unavailable when the pricing table cannot load, while retaining token totals.

Audit finding. Merged usage still drops the environment pricing status, and the current Usage page formats its numeric cost directly. The usage redesign and pricing fixes therefore do not distinguish an unavailable estimate from a genuine zero. The patch covers both web and mobile, including charts and breakdowns, and must be reapplied to the redesigned page.

Recommendation. Keep open: work remains. Propagate pricing availability through the current usage merger and both client views.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T09:29:17Z. Draft no. Target main. Head 2f92e4d16992b1d0c5663249178ecddffe9b0337. Branch fix/usage-pricing-unavailable. Size +240 / -51, 7 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:02.075425+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5948, #7753.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7184. fix(web): render persisted bash tool output in expanded turns

Request. Show persisted Bash stdout in expanded work-log rows on web and mobile.

Audit finding. The tool-identity merge already preserves data.input.command, but ordinary projection still drops data.result.content. Both clients still lack the proposed persisted-result output field, so the command text can survive while its stdout remains unavailable. Recent payload-memory work limits hydration rather than adding output display.

Recommendation. Keep open: partial fix. Port persisted-result display onto the current bounded activity projection and verify both clients.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T10:55:57Z. Draft no. Target main. Head ddb2bce454aee00d4cf7873deed03c3e305ef066. Branch fix/bash-tool-output-render. Size +786 / -23, 11 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:02.075560+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6388, #7151, #9000. Merged PRs that cover all or part: #7151.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7186. fix(vcs): resolve SSH aliases before classifying GitHub hosts

Request. Resolve SSH host aliases to the real source-control host while retaining the alias for Git authentication.

Audit finding. Main classifies and stores the original remote host without asking SSH for HostName. The diff resolves undotted aliases in repository identity, provider selection, and PR listing, but excludes dotted aliases and adds a new SSH dependency to several layers. No merged alias-resolution replacement was found.

Recommendation. Keep open: work remains. Review alias migration and filtered PR listing against existing stored repository identities.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T09:44:55Z. Draft no. Target main. Head 9c2eaa931129284a798f3fdb170b9eb88604531a. Branch fix/ssh-alias-github-host. Size +598 / -61, 14 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:16.296604+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #3649, #6198, #7959.

Limits. Latest-commit metadata has no required runs for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch.

PR #7187. fix(terminal): answer Primary Device Attribute queries for fish

Request. Fish startup should not wait for missing terminal device-attribute replies.

Audit finding. Pinned main's vendored Ghostty WASM already answers DA1 with CSI ?62;22c and DA2 with CSI >1;0;0c through the existing write-PTY callback, confirmed by a direct WASM probe. This PR changes the advertised DA1 features and adds callbacks on web and Android, but that does not establish that a missing callback causes the reported fish delay. A real fish startup trace is still needed before choosing this patch.

Recommendation. Keep open: retest. Capture fish startup queries and replies on current web or Android to identify the actual unanswered request.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T09:23:23Z. Draft no. Target main. Head 27d689924b4f463bda18eaea2e7221ad2fe4555b. Branch fix/terminal-da1-response. Size +208 / -17, 6 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: FAILURE, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 12 passed, 2 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:16.296686+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6058.

Limits. The fish startup delay was not reproduced. The changed binary trampoline was not rebuilt or independently validated. Failing required CI logs were not investigated: Check.

PR #7195. fix(web): allow new threads when unsettled env is offline

Request. Allow a fresh draft when an unsettled thread belongs to an offline environment.

Audit finding. The new-thread handler still awaits t3.json defaults without checking connection state, and both project-open paths still navigate to any latest thread. Main has no reachable-sibling retargeting. The offline-status proposal changes row status, not this navigation and draft-creation path.

Recommendation. Keep open: work remains. Review offline new-thread behavior and the explicit choice to retarget to a connected sibling environment.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T10:53:55Z. Draft no. Target main. Head 38dcec389f8905716184dbe043054c7386e16525. Branch fix/offline-env-new-thread. Size +342 / -23, 6 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:16.296907+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6358, #8924, #8935.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7198. fix(server): point Claude resume cursor at reverted transcript

Request. Resume Claude from the retained conversation point after a rollback.

Audit finding. Main rollback only trims the in-memory turn list and writes the unchanged assistant cursor. The diff adds pinned resume and query replacement, but chooses the retained UUID only from context.turns, which starts empty after a restored session. A rollback after reconnect can therefore start a fresh session instead of preserving older retained context.

Recommendation. Keep open: work remains. Resolve retained assistant checkpoints from durable transcript history and test rollback after server restart.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T11:08:25Z. Draft no. Target main. Head d0c6b93a800eb73b0a4c2010d6a19d5b6632d732. Branch fix/revert-resume-cursor. Size +615 / -42, 3 files, 4 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:16.297058+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5710, #6127.

Limits. Latest-head required checks are not reported: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7203. fix(web): let Escape reach nvim in the terminal drawer

Request. Escape should reach terminal applications instead of being consumed by chat shortcuts.

Audit finding. The selected-thread Escape handler on main still prevents default without checking terminal focus. The PR fixes that path, but it also makes bare Escape bypass a user-configured terminal.close binding unconditionally. The reported default nvim failure needs an integrated event trace because normal terminal beforeKey already passes keys that match no application shortcut.

Recommendation. Keep open: work remains. Keep the terminal-focus guard for thread selection and preserve explicit Escape keybindings while tracing the reported nvim failure.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author maslinedwin. Updated 2026-08-16T10:50:18Z. Draft no. Target main. Head 6248904cdd58ca67b142ed10ab42daf7d6614759. Branch fix/terminal-escape-nvim. Size +338 / -43, 8 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:16.297265+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6362.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #7211. feat(providers): add Pi coding agent

Request. Add Pi as an Early Access provider with native RPC sessions, tools, skills, permissions, and rollback.

Audit finding. Pinned main has no Pi driver or V2 runtime, and this branch depends on the open new-orchestrator PR. Its full diff still includes cross-provider option memory and OpenCode changes despite the body saying option memory was split out. The latest code also retains unbounded RPC buffers, whitespace-destroying skill expansion, and approval/input cleanup defects. The reported one-shot prompt correlation failure is a false positive against Pi 0.84.2 source, but the other confirmed defects and open dependency prevent approval.

Recommendation. Keep open: work remains. Separate the unrelated option-memory work and fix the confirmed buffering, input, and session-lifecycle defects after settling the V2 dependency.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author StiensWout. Updated 2026-09-01T07:49:48Z. Draft no. Target t3code/codex-turn-mapping. Head 727d4f6a0c986f8d4cdb99e56fa9dbde0a5a91e9. Branch t3code/pi-provider. Size +8838 / -102, 60 files, 76 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:50:16.297395+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 8. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #397, #402, #2829.

PR #7220. fix(web): render Codex visualizations inline

Request. Render Codex visualization references as sandboxed inline HTML on web and desktop.

Audit finding. Main has no visualization asset resource or inline HTML visualization renderer. The PR adds temporary-file authorization, content-bound signed URLs and a nested sandboxed iframe, which are separate from the landed citation and artifact-template rendering. Native mobile support is absent, and the file-lifetime and iframe rules need complete review.

Recommendation. Keep open: work remains. Review the asset authorization and iframe implementation and decide the native mobile behavior.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author marijnbent. Updated 2026-08-17T15:32:13Z. Draft no. Target main. Head 6a0738b20548c2163df227106781a02aa9b392fc. Branch t3code/render-visualize-output. Size +878 / -51, 22 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 3 passed, 3 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:16.297564+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 5. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #7191, #8584.

Limits. Marker parsing and asset-contract changes were inspected, but the full 22-file security and client diff was not reviewed. Only selected current review findings were read. The complete discussion and resolved review history were not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #7221. feat: add OpenCode usage statistics

Request. Include OpenCode SQLite session history in the Usage page.

Audit finding. Main still supports only Claude, Codex, and Grok usage sources. This PR supplies a worker-based database reader and both client presentations, but combines OpenCode support with broader source-health and merge changes. Its cache-version and readSummary edits predate the merged incremental transcript scanner, and its assumption that OpenCode reasoning is already included in output differs from the other complete collector.

Recommendation. Keep open: work remains. Choose the historical collector, verify OpenCode token semantics, and port it without undoing incremental transcript scans.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author tris203. Updated 2026-08-28T12:52:08Z. Draft no. Target main. Head 8e7316be1540e2cfdf431cb97f8e43cd1b514cc5. Branch t3code/show-opencode-usage-stats. Size +884 / -34, 14 files, 15 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 18 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:19.836979+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7622, #7623, #8456, #8918.

Limits. GitHub reports a merge conflict with current main.

PR #7227. fix(web): merged PR threads settle without polling delay

Request. Refresh the active checkout immediately after merging a pull request in its thread panel.

Audit finding. Main now settles threads in a server reactor that sweeps once per minute. The proposed web VCS refresh does not notify that reactor, so it no longer delivers immediate settlement under the current architecture. The merge-action RPC also lacks a settlement trigger, leaving the delay unfixed.

Recommendation. Keep open: work remains. Trigger server settlement after a successful PR merge instead of relying on a web VCS refresh.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author artieeg. Updated 2026-08-16T15:03:30Z. Draft no. Target main. Head bd4c4675c9feb8581da050a7c74a124dcb701051. Branch t3code/fix-pr-merge-sidebar-delay. Size +32 / -3, 5 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 10 passed, 1 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:19.837446+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4704, #7148, #7224, #8600.

Limits. Latest-commit metadata has no required runs for Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7236. fix(preview): failed tabs no longer sit as a blank floating panel

Request. Show failed preview loads as unavailable and give the floating preview Retry and Close actions.

Audit finding. Main still reports a live failed-load guest as available and has no failed-load mini-player overlay. The complete PR adds recovery UI, but its readiness check uses a pre-await attachment snapshot and its status helper can replace a new loading state with an old LoadFailed value. Both unresolved race findings match the patch, so the feature is still needed but the PR needs correction.

Recommendation. Keep open: work remains. Fix stale attachment and load-status races before testing failed-load recovery.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author gbarros-dev. Updated 2026-08-30T08:01:35Z. Draft no. Target main. Head d4d87f646ee3e8ddf2587f4b9b03bd5b922654dc. Branch fix/preview-failed-mini-player. Size +420 / -36, 10 files, 11 commits. Mergeability MERGEABLE. Merge state CLEAN. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 10 skipped. Checks captured 2026-09-01T11:50:19.837741+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7212, #8567, #8981.

PR #7238. fix(server): exclude inherited Codex child usage

Request. Subtract inherited parent usage from live Codex child task totals.

Audit finding. CodexAdapter still forwards each child's raw cumulative total into task.progress. The merged fork-copy parser fix affects transcript analytics, not these live Agents-panel snapshots. This PR calibrates a per-child baseline from total minus last, but a first observation after missed child work needs an explicit accounting decision.

Recommendation. Keep open: work remains. Validate the first-observed-frame assumption before merging the child baseline calculation.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author matsvarn. Updated 2026-08-16T16:59:54Z. Draft no. Target main. Head f9b6ed453427146e876d994d8fda139759ec7cfd. Branch codex/t3code-5793-child-usage. Size +340 / -15, 2 files, 2 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 13 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:19.837845+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5793, #5887, #5814.

Limits. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7240. feat(orchestration): persist run-next messages server-side across providers

Request. Persist run-next follow-ups on the server and let either client cancel them before provider handoff.

Audit finding. Main still emits immediate turn-start intent and has no durable after-current delivery state. This patch adds a provider-neutral queue, but its migration number 41 is already occupied on main and its mobile delivery preference has no older-server capability gate. Native Codex queuing and mobile immediate steering do not replace this durable cross-provider feature.

Recommendation. Keep open: work remains. Rebase the queue migration and add version-gated delivery before reviewing handoff recovery.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author DavidIlie. Updated 2026-08-16T17:23:22Z. Draft no. Target main. Head 6632d44996c35c658a73ac33efe967a24d886039. Branch feat/server-thread-message-queue. Size +1923 / -48, 38 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:19.837921+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7582, #6543, #5762.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7246. fix(server): start Claude full access without forbidden permission modes (#4927)

Request. Respect Claude policy when full access or Auto is disabled.

Audit finding. Main maps full access directly to bypassPermissions without resolving the Claude policy. The diff adds fallback modes but leaves the client label unchanged and temporarily changes process.env.CLAUDE_CONFIG_DIR while an async resolver runs. Its lock covers these resolver calls, not other provider code that reads process.env, and resolver failure still chooses Auto without knowing whether Auto is allowed.

Recommendation. Keep open: decision needed. Choose an instance-isolated policy lookup and an explicit client-visible fallback rule.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author matsvarn. Updated 2026-08-16T19:55:09Z. Draft no. Target main. Head 7278ed4ccb0fea00b3d49a57b5b76560e96e74ab. Branch cursor/claude-bypass-policy-88f3. Size +784 / -9, 3 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:19.838042+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #4927.

Limits. Latest-head required checks are not reported: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports merge conflicts against the target branch.

PR #7249. fix(server): refresh Claude context meter after compact

Request. Refresh context usage after compaction when the SDK omits usable post-token metadata.

Audit finding. Main only emits compacted usage when compact_boundary includes valid post_tokens, so the missing-metadata case remains. The branch now also changes model transitions, resume refresh, send serialization, and stop cleanup, which is substantially wider than the original meter fix. It relies on getContextUsage after main deliberately removed the post-turn query, so the performance and lifecycle costs need separate review.

Recommendation. Keep open: work remains. Extract the compact-boundary fix and validate a bounded fallback against the current no-post-turn-query design.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author matsvarn. Updated 2026-08-27T05:34:10Z. Draft no. Target main. Head 952478cecba233ecb6324201c68b2dd1530f5ac4. Branch cursor/claude-compact-meter-fallback-4df3. Size +2790 / -253, 2 files, 11 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:19.838185+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #4650, #6586, #8453, #8610.

Limits. The full 135 KB lifecycle and test diff was not reviewed. Latest-head required checks are not reported: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports merge conflicts against the target branch.

PR #7254. feat(desktop): browser profiles for the preview browser

Request. Add separate persistent and incognito browser profiles to desktop preview tabs.

Audit finding. Main derives only the existing persistent preview partition and has no profile choice. The reviewed partition code preserves that default while adding separate profile namespaces, scoped clearing, and an in-memory incognito partition. Browser-access controls are already merged, but profile creation, removal, and storage lifetime still belong to this open feature.

Recommendation. Keep open: decision needed. Review the profile partition and deletion model before advancing the dependent import stack.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author juliusmarminge. Updated 2026-08-29T07:56:44Z. Draft no. Target main. Head fe5480b817dafcf4c5936db69731f0890832f0c9. Branch browser-profiles. Size +1478 / -118, 40 files, 31 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 19 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:26.202688+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #7083, #7272, #7255.

Limits. The 112,011-byte diff was not fully read. Review covered the named feature paths and current main, not every file or test. Current review findings and general discussion were sampled, but historical resolved review threads were not read in full. GitHub reports merge conflicts with the current base.

PR #7255. feat(desktop): import browser cookies into a profile

Request. Import Helium cookies on macOS into a chosen desktop browser profile.

Audit finding. Main has no cookie-import service or browser profiles. The reviewed import service validates listed source profiles and writes cookies into the selected partition, but the full keychain and decryption implementation was not reviewed. The PR is stacked on the still-open shared-SQLite branch, which in turn depends on browser profiles.

Recommendation. Keep open: work remains. Finish review of the profile and shared-SQLite dependencies before a full cookie-import security and native-build pass.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author juliusmarminge. Updated 2026-08-29T08:22:17Z. Draft no. Target shared-sqlite-client. Head 683ca1ba1f8bcae16b99ac4d714088dce7e14668. Branch browser-profile-import. Size +3677 / -169, 26 files, 58 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 19 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:26.202976+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #7254, #7272.

Limits. No Keychain access, cookie import, or packaged macOS build was performed. The 171,563-byte diff was not fully read. Review covered the named feature paths and current main, not every file or test. Current review findings and general discussion were sampled, but historical resolved review threads were not read in full.

PR #7260. feat(desktop): import from Chrome, Edge, Brave, Vivaldi, Opera, Arc and Firefox

Request. Extend desktop cookie import to Chromium browsers on macOS and default-container Firefox cookies across platforms.

Audit finding. Pinned main has no browser-profile import subsystem, so the open parent stack is still required. The full diff preserves host-only cookie scope and uses consistent read-only SQLite snapshots, but this layer still treats persistent Firefox lock-file existence as a running browser and only probes the legacy Chromium Cookies path. The later detection fix was merged into browser-import-safari, not main, and cannot be counted as released coverage.

Recommendation. Keep open: work remains. Integrate the browser-import stack in order, including real Firefox lock checks and modern cookie-path detection.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author juliusmarminge. Updated 2026-08-29T08:23:53Z. Draft no. Target browser-profile-import. Head 5444eb4935edc09cabadc85de8c38cd4da1a4112. Branch browser-import-more-sources. Size +1275 / -342, 11 files, 17 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:26.203273+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7254, #7255, #7261, #7272, #7323.

Limits. No actual macOS, Windows, or Linux browser import was run. Windows Chromium and Linux Chromium key retrieval are not supported by this layer. Latest-head Mobile Native Static Analysis was skipped, not executed.

PR #7261. feat(desktop): resolve Chromium cookie keys on Linux

Request. Add Linux Chromium cookie import through basic-storage and Secret Service keys.

Audit finding. The import implementation is not on main and this PR targets the still-open browser-import-more-sources branch from PR #7260. Its diff keeps Windows unsupported, preserves macOS consent, and distinguishes missing Linux keys from denied access while reporting skipped records. The Linux Secret Service path has only mocked evidence, so the stack and a real consenting Linux import must be validated first.

Recommendation. Keep open: work remains. Finish the parent browser-import stack, then verify Linux v10 and v11 import with denial and missing-key cases.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author juliusmarminge. Updated 2026-08-29T08:24:13Z. Draft no. Target browser-import-more-sources. Head bace0bef8fe04b36073c963878c532179a5f4751. Branch browser-import-linux-windows. Size +616 / -170, 7 files, 11 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 28 passed, 0 failed, 0 pending, 16 skipped. Checks captured 2026-09-01T11:50:26.203365+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7260.

Limits. The parent browser-import stack is unmerged. No live Linux Secret Service import was verified.

PR #7262. feat(desktop): import cookies from Safari

Request. Add Safari cookie import with an explicit macOS Full Disk Access step.

Audit finding. Main has no browser-import service or Safari parser, and its shell API does not expose the fixed System Settings action this layer needs. The selected parser and wizard changes add Safari handling on top of the separate browser-import platform branch and retain that branch's detection changes. This feature is not superseded by preview cookie isolation or editor URL work.

Recommendation. Keep open: decision needed. Review the browser-import stack in dependency order, including a real Safari permission-denial and retry flow.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author juliusmarminge. Updated 2026-08-29T08:24:03Z. Draft no. Target browser-import-linux-windows. Head a2d58d04bcb0a72d94e1a3c3a69938976236e4e2. Branch browser-import-safari. Size +1164 / -70, 22 files, 20 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 31 passed, 0 failed, 0 pending, 16 skipped. Checks captured 2026-09-01T11:50:26.203497+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #7261, #7323.

Limits. Large 22-file diff. Reviewed Safari binary parser, permission handling, and wizard state changes, but not every changed file. No new Safari or Windows GUI verification was reported for this branch. Current unresolved review threads were checked, but the long prior discussion and resolved review history were not fully read. Current-head check skipped: Mobile Native Static Analysis.

PR #7265. fix(server): bound usage transcript lines

Request. Bound each usage transcript record and continue reading after an oversized tool result.

Audit finding. The merged incremental reader removes readline, but main still accumulates pendingChunks without a byte limit and decodes the complete record. Its catch can now return null for the whole file, so it does not provide the proposed bounded skip and continued usage extraction. The old reader patch must be ported to the new resume-offset and tail-record API.

Recommendation. Keep open: partial fix. Add bounded record skipping to the current incremental reader while preserving resume offsets.

Confidence high. Release: Main only. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ifBars. Updated 2026-08-16T21:50:44Z. Draft no. Target main. Head 42f1b50435ff27d87bcc967a9546d3a2d6827298. Branch agent/bound-usage-transcript-lines. Size +179 / -7, 2 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:26.203698+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7258, #9024. Merged PRs that cover all or part: #9024.

PR #7267. feat: let users rename environments

Request. Store an environment name on its server and propagate it to web, desktop, mobile, and T3 Connect.

Audit finding. Main derives the environment label from the host and has no server environmentLabel setting or label-update event. This proposal makes the server authoritative and adds relay synchronization, unlike a client-local override. The related server-owned naming proposal was closed without merge, so it is not a landed fix or an active replacement. Environment renaming is not supplied by this merge. The PR adds environmentLabelUpdated to the old projection function.

Recommendation. Keep open: decision needed. Review server-owned names and relay synchronization on the current config stream. Port the new event case to serverConfigProjection.ts and verify live, replayed, and reconnect labels.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author inayayousfi. Updated 2026-08-17T16:46:58Z. Draft no. Target main. Head e7eb70ec31619cce0585e9e58f111cf05fb40b39. Branch feat/rename-environments. Size +1137 / -56, 41 files, 6 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:26.203770+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5623, #4538, #4850, #6053, #8367.

Latest main change. Environment renaming is not supplied by this merge. The PR adds environmentLabelUpdated to the old projection function. Port the new event case to serverConfigProjection.ts and verify live, replayed, and reconnect labels.

Limits. Large 41-file diff. Reviewed server labels, relay synchronization, contracts, and client projection, but not every changed file. The later config-stream merge requires moving label projection into the shared serverConfigProjection module. GitHub reports merge conflicts with main on the collected head.

PR #7302. fix(preview): keep snapshots slim unless the agent asks

Request. Return smaller snapshots by default and make readiness waits search visible main-content targets.

Audit finding. Main still requests the full accessibility tree and all diagnostics for every snapshot, and waitFor searches the whole document without a visibility check. The full diff changes snapshot defaults, wait scope, element harvesting, and capture fallback together. These are separate behavior changes that overlap the metadata-budget and capture-recovery work.

Recommendation. Keep open: decision needed. Separate the snapshot-default decision from wait semantics and reconcile the capture fallback with the background-automation branch.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author gbarros-dev. Updated 2026-08-17T10:26:18Z. Draft no. Target main. Head 149b56c5bab40e0c716c579ff987f9ff69accf3c. Branch fix/preview-slim-snapshot. Size +317 / -39, 9 files, 5 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:26.204629+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7127, #7408, #8486, #8981.

Limits. GitHub reports merge conflicts with the current base.

PR #7308. fix(codex): recover turns after usage limits

Request. Restart Codex and retry one safe failed turn after an account usage limit.

Audit finding. Main has no automatic usage-limit restart or retry. In the submitted code, recovery starts a session before checking whether its token is still current, so stale recovery can replace a newer manual session. The unsafe post-resume retry abort also returns without closing its replacement process. These verified review findings must be fixed before the automatic-recovery policy is approved.

Recommendation. Keep open: decision needed. Make recovery replacement conditional on the current token and close every aborted recovery process.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author estensen. Updated 2026-08-17T09:22:17Z. Draft no. Target main. Head 92a148c73cb6b39ca1411ea24824a55f7fc8e425. Branch fix/codex-usage-limit-failover. Size +744 / -54, 5 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 6 passed, 1 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:26.204768+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #8580, #7414, #8897.

Limits. Recovery production changes were inspected, but the full cancellation and ordering test diff was not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7322. fix(source-control): prompt for SSH key passphrases

Request. Prompt the active client for SSH credentials during Git clone, publish, pull, and push operations.

Audit finding. Main disables SSH askpass on refresh commands and does not expose the proposed source-control password-prompt capability. The reviewed backend retry and prompt services keep answers in one attempt and scope pending requests to the connection, with unary fallbacks for older servers. This differs from desktop SSH environment login, and the full cross-client credential flow still needs complete review.

Recommendation. Keep open: work remains. Review prompt isolation, cancellation, and secret handling across the streaming Git operations.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author PetrSeifert. Updated 2026-08-18T06:48:18Z. Draft no. Target main. Head 5f472fec82a1b5d2e8ce99ad34d49896b8007d85. Branch feat/ssh-password-prompts. Size +3089 / -421, 47 files, 10 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:26.204831+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #4042, #6610, #7619.

Limits. Large 47-file diff. Reviewed Git SSH retries, prompt service, and streamed client prompt handling, but not every changed file. Current-head required checks were not reported: Check, Mobile Native Static Analysis, Release Smoke, Test. GitHub reports merge conflicts with main on the collected head.

PR #7330. fix(swift-ios): show cached source control status

Request. Show cached local source-control status before remote status in the experimental SwiftUI client.

Audit finding. This targets the unmerged SwiftUI parent, not main. Pinned main has no apps/swift-ios directory, and the target commit is not its ancestor. The diff adds a bounded status stream and late recovery, but current-head visual proof is explicitly pending.

Recommendation. Keep open: decision needed. Complete current-head slow-remote proof and review this with the SwiftUI parent PR 5178.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author saphid. Updated 2026-08-29T13:21:47Z. Draft no. Target t3code/rebuild-mobile-app-swift. Head ede5862ee5c811ebc802338c2d82d0c7fa63aa3d. Branch contrib/issue107-cached-vcs-upstream. Size +629 / -47, 6 files, 10 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 16 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:26.204896+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5178, #7371.

Limits. Experimental SwiftUI parent is not on main. Current-head visual and remote-connection evidence is missing.

PR #7345. feat(swift-ios): add pull-down command drawer

Request. Add a searchable pull-down command drawer to the experimental SwiftUI client.

Audit finding. The current experimental parent has no drawer entry in Home or thread detail. The inspected changes add those entries, a shared action catalog, gesture geometry, and close or cancellation state while preserving ordinary list scrolling. This is a large new interaction on an unmerged client, so the parent direction and responder-restoration behavior need explicit review.

Recommendation. Keep open: decision needed. Review the drawer as an experimental-parent feature, including cancelled-pull focus restoration.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author saphid. Updated 2026-08-30T09:56:36Z. Draft no. Target t3code/rebuild-mobile-app-swift. Head c1eef5a073bf25dfb277882444f187c1f64647b9. Branch feat/issue86-command-palette-drawer. Size +2911 / -1, 8 files, 12 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 16 passed, 0 failed, 0 pending, 9 skipped. Checks captured 2026-09-01T11:50:26.205074+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff no, current source yes, history yes.

Related work: #5178.

Limits. Core drawer geometry and workspace/thread integration were read, but the full 118 KB gesture, catalog, view, and test diff was not reviewed completely. Mobile Native Static Analysis was skipped on the current head; no passing native static result is claimed.

PR #7348. feat(web): notification (and sound) when a thread finish

Request. Send optional system notifications and a configurable chime when turns finish while the web or desktop client is open.

Audit finding. Main has no web completion watcher, browser-notification permission control, or chime settings. The latest patch adds them but leaves the new settings out of Restore defaults and leaves the permission switch usable when permission is denied or unavailable. Both review findings remain in the diff, so this needs changes before approval.

Recommendation. Keep open: work remains. Add the notification preferences to Restore defaults and disable the permission switch when it cannot change browser permission.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author jaakkoob. Updated 2026-08-25T07:42:05Z. Draft no. Target main. Head d19d67156e9f47996af1ea0b5a26afecfa9e3537. Branch feat/thread-completion-notifications. Size +859 / -0, 14 files, 1 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 6 passed, 2 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:26.205163+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 4. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5518, #7655.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7353. feat(desktop): add persistent design canvas

Request. Add a persistent desktop HTML design editor with artboards, annotations, undo, and agent handoff.

Audit finding. Main can open workspace HTML in Preview but has no design command, editor preload, or design-specific save path. The inspected changes add all of those and save complete edited HTML through the workspace file API, while web and mobile remain view-only. Maintainer feedback rejects the size of the product commitment, and the PR was later reopened, so the scope decision remains unresolved. The large editor and all integration paths were not fully reviewed.

Recommendation. Keep open: decision needed. Confirm a smaller accepted design-editor scope before further implementation review.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Bil0000. Updated 2026-08-28T17:01:33Z. Draft no. Target main. Head d99188de4524c2957ce2c0343c49879dde26d983. Branch feat/design-canvas. Size +2780 / -88, 49 files, 28 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 17 passed, 1 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:50:26.205227+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Limits. Only selected command, asset, editor-state, routing, and persistence changes were reviewed from the 4185-line diff. The 29 review threads and generated review discussions were not fully reviewed. No Electron editor pass or concurrent agent-write/save test was run.

PR #7361. fix(terminal): honor Linux clipboard shortcuts

Request. Linux terminal clipboard shortcuts should preserve plain Ctrl+C for interruption and expose conventional copy shortcuts.

Audit finding. Main still copies a selection for plain Ctrl+C on Linux and lacks Ctrl+Insert copy. The PR adds the intended Linux chords, but native menu items pass accelerators without disabling registration, and the unresolved review warns that stale menu items can consume later terminal keys. The author reports Linux testing, yet menu-close behavior and integration with the newer clipboard fix still need work.

Recommendation. Keep open: work remains. Ensure native context-menu accelerators cannot consume terminal keys after the menu closes.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ralphsmith80. Updated 2026-08-20T17:30:22Z. Draft no. Target main. Head fce7c4fb569c19d08ada6226057d708767f2c501. Branch fix/linux-terminal-clipboard-shortcuts. Size +310 / -65, 9 files, 4 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:26.205376+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 1. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7678, #5982, #7698.

Limits. Required CI is absent on the current head: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #7362. fix(windows): find provider CLIs from User PATH

Request. Refresh Windows provider command discovery, with an unrelated Hornet provider added to the same branch.

Audit finding. Main still lacks persistent User and Machine PATH reads, so the Windows defect is not fixed by quote cleanup or PATH ordering alone. The actual diff also registers Hornet enabled by default and adds an HTTP adapter whose interrupt only emits a local abort without canceling the remote request. This is not a narrow substitute for the other Windows PATH fixes.

Recommendation. Keep open: decision needed. Split the Hornet provider out of the Windows PATH change.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author AMDphreak. Updated 2026-08-30T13:47:19Z. Draft no. Target main. Head 8e7b59d62fcead29a7ab72128b9a188284334b4b. Branch fix/windows-cursor-agent-path. Size +1062 / -42, 19 files, 4 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 5 passed, 3 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:33.014292+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 10. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7360, #6356, #8465, #8746, #8748.

Limits. Required checks have no results on this head: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7371. feat(swift-ios): keep failed source control output visible with accessible Retry

Request. Keep failed SwiftUI source-control output visible and retry only the operation that failed.

Audit finding. This targets the unmerged SwiftUI parent and cannot fix the released React Native client. Its diff separates mutation success from refresh failure, retains errors across retry, and tests cancellation and duplicate-action prevention. It overlaps the same view and action boundary as PR 7330, with current-head visual evidence still pending.

Recommendation. Keep open: decision needed. Reconcile the source-control action boundary with PR 7330 before parent-branch review.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author saphid. Updated 2026-08-26T23:57:13Z. Draft no. Target t3code/rebuild-mobile-app-swift. Head 87ce6873a729a3c8e2d330f0cd056f3225c665e5. Branch feat/issue87-tool-error-recovery. Size +641 / -61, 6 files, 5 commits. Mergeability MERGEABLE. Merge state CLEAN. Target is not main. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 16 passed, 0 failed, 0 pending, 7 skipped. Checks captured 2026-09-01T11:50:33.014801+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5178, #7330.

Limits. Experimental SwiftUI parent is not on main. Current-head visual and remote-connection evidence is missing.

PR #7375. fix(mobile): support Android image attachments Draft.

Request. Support Android picker assets without base64 and convert HEIF before upload.

Audit finding. Merged attachment work now exposes the collapsed picker and handles iOS picker JPEG conversion. Main still rejects an Android image with absent base64 before reading its URI, and still has no Android HEIF conversion. The added Expo56 dependency and old composer button need to be removed or updated for SDK57 and the current attachment menu.

Recommendation. Keep open: partial fix. Keep the missing-base64 and Android HEIF changes in a refreshed SDK57 patch.

Confidence high. Release: In nightly source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author mitchellmoss. Updated 2026-08-18T08:03:48Z. Draft yes. Target main. Head ca961fc73e1d604a9a24b13ae9a3bdee18132716. Branch agent/android-heif-attachments. Size +193 / -10, 5 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:33.014981+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8843, #8237, #8609. Merged PRs that cover all or part: #8843.

Limits. Required CI checks are not present on the current head in canonical check metadata. Release status refers to repository tag ancestry; mobile app-store and OTA rollout was not verified.

PR #7380. fix(mobile): select and copy parts of agent responses on Android, including list items

Request. Select parts of Android messages, including tight list items.

Audit finding. Main still routes Android through the nonselectable Markdown fallback. This PR adds paragraph, heading, list, and task-item renderers but leaves table cells and some image or math paragraphs on the old path. PR #8779 instead enables the shared selectable renderer and adds native copy sanitization, so maintainers need one Android selection implementation. The current diff also omits Android body font-padding and final-paragraph spacing behavior identified in review.

Recommendation. Keep open: decision needed. Choose the shared-renderer approach or this fallback-renderer approach before merging either PR.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author camerontaylor. Updated 2026-08-18T10:29:18Z. Draft no. Target main. Head 8b982d231398cf092b74f0a432a802840a77bbac. Branch android-selectable-text. Size +483 / -1, 3 files, 3 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:33.015107+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 4. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #6460, #8779.

Limits. Required CI checks are not present on the current head in canonical check metadata.

PR #7393. feat(opencode): show native Task subagents in the Agents panel

Request. Show native OpenCode Task subagents in the Agents panel.

Audit finding. Main still maps Task tools to generic item events and does not emit their task lifecycle. Child approval routing and recursive stopping do not populate Agents rows. The PR adds foreground, resumed, failed, and background task events, but its startup and subscription rewrite predates the current shared event-stream and prompt-admission changes.

Recommendation. Keep open: work remains. Port the Task lifecycle mapping onto the current event stream and verify resumed and background tasks on both clients.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author inayayousfi. Updated 2026-08-28T09:48:15Z. Draft no. Target main. Head 748474775ec3e8ad753b223fa3b8f85d3258f330. Branch fix/opencode-task-subagents. Size +1172 / -51, 2 files, 10 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:33.015330+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5952, #8480, #9005.

Limits. GitHub reports a merge conflict with current main.

PR #7414. fix(server): fork Codex threads with active writers

Request. Fork a Codex conversation when another process already owns its writer.

Audit finding. Main only falls back to a fresh thread for known missing-thread errors and has no active-writer recovery. This PR would silently change the provider thread identity by forking persisted history. PR 8580 instead prevents overlapping writers during compatible instance switches, so the recovery policy should be settled before these paths are combined.

Recommendation. Keep open: decision needed. Decide whether active-writer conflicts should fork automatically or require an explicit user action.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author f-trycua. Updated 2026-08-30T14:04:22Z. Draft no. Target main. Head e884bb350ab16147c5adc294e4544c745f3dcd6e. Branch t3code/fix-active-thread-writer. Size +115 / -5, 2 files, 1 commits. Mergeability MERGEABLE. Merge state UNSTABLE. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 14 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:33.015728+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8580.

PR #7415. fix(web): restore a submitted message to the composer when its turn fails

Request. Restore the submitted composer content after an accepted turn fails asynchronously.

Audit finding. Main restores the composer only when the send command itself fails, so accepted-then-failed turns remain uncovered. The latest patch releases draft uploads before arming a recovery snapshot that retains their old IDs, leaving restored hydrated files without local bytes for retry. Its session-status test can also attribute an error received during pre-send work to a later accepted turn. These unresolved findings prevent approval of the asynchronous recovery path.

Recommendation. Keep open: work remains. Preserve recoverable attachment uploads and tie recovery to the accepted turn before merge.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author sideeffffect. Updated 2026-08-31T21:05:42Z. Draft no. Target main. Head 8f9128b9d2847336daa357f447d3127dbce49d41. Branch fix/restore-composer-on-turn-failure. Size +357 / -16, 3 files, 7 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:33.015820+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 3. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7636.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7424. [codex] run grouped projects on another machine

Request. Restore per-machine draft settings when switching among grouped project environments.

Audit finding. Main already has repository grouping and a Run on environment selector. It does not keep the proposed per-physical-project draft profiles or restore branch, worktree and model settings after A-to-B-to-A switching. This PR also adds a grouping prompt and committed implementation plans, so it should be reduced to the remaining product behavior.

Recommendation. Keep open: partial fix. Narrow the PR to per-machine draft restoration and remove repository plan artifacts.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author aGamingGod1234. Updated 2026-08-19T00:08:46Z. Draft no. Target main. Head 6bf59f91568dd7e7e33c7c23fa26074e623b35be. Branch codex/grouped-machine-profiles. Size +2283 / -68, 21 files, 8 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:33.015980+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #4312, #4407, #4385. Merged PRs that cover all or part: #4312.

Limits. Profile types and grouping logic were inspected, but the full 21-file draft-state diff was not reviewed. Only selected current review findings were read. The complete discussion and resolved review history were not reviewed. Latest-head required check results are absent for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports a conflict with main. Any passing checks apply to the existing head, not a rebased result.

PR #7428. Show inline file-change diffs in chat timeline tool rows Draft.

Request. Show provider file-edit patches inside expanded chat work rows.

Audit finding. Main has no per-edit inline diff view. The full patch still imports missing TTS and message-fork modules, and its hash is captured when the ingestion worker runs rather than when the edit completes. Review comments also identify nested Codex hashes being dropped by projection, which the current diff still does. These are real remaining defects, not only unapproved scope.

Recommendation. Keep open: decision needed. Remove the unrelated fork wiring and fix per-edit hash capture and projection before review.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author NeilTheFisher. Updated 2026-08-18T21:54:13Z. Draft yes. Target main. Head faa163e59c6dce3c226ad2d314ac1cf736ac3d34. Branch feat/inline-file-change-diffs. Size +1239 / -182, 21 files, 18 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 7 passed, 2 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:33.016386+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 7. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8368, #9000.

Limits. Latest-commit metadata has no required runs for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch.

PR #7434. feat(web): add in-thread find Draft.

Request. Find and highlight text in the open virtualized thread through a dedicated find bar.

Audit finding. Main still has no in-thread find handler, and cross-thread search is a different entry point. The patch indexes only loaded timeline entries and parses every message whenever that list changes, even while find is closed. It needs a lazy index and an explicit earlier-turn policy before its claim to search every response is met.

Recommendation. Keep open: work remains. Make the find index lazy and handle earlier unloaded turns before merge.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author bj97301. Updated 2026-08-18T22:41:41Z. Draft yes. Target main. Head 1e856b41bd1e387aede255e685313d27a300226b. Branch codex/find-in-thread. Size +461 / -3, 8 files, 19 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:33.016686+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #1486, #4599, #4959.

Limits. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7443. feat: show git status marks in the Files tree

Request. Show Git change letters on Files tree rows and their parent folders across web and mobile.

Audit finding. Main has no working-tree status field or Files tree decoration mapping. The draft adds that path end to end, but it also includes a separate Azure PR-routing change now proposed alone in PR 8203. Its display-text numstat parser retains the directory-rename defect addressed by PR 8310.

Recommendation. Keep open: decision needed. Separate the Azure routing change and build the status marks on the corrected NUL-separated Git parser.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author yaminyassin. Updated 2026-08-31T11:47:44Z. Draft no. Target main. Head c29f696fd8be2742646757d6373ad9d86eb708a4. Branch feat/files-git-status. Size +857 / -93, 20 files, 16 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:33.016773+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7289, #8203, #8310.

Limits. Latest-commit metadata has no required runs for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch.

PR #7463. fix(server): reconcile active sessions after restart

Request. Repair provider sessions after restart and clear stale approval or input cards when users submit them.

Audit finding. Merged PR 7719, included in v0.0.37, already repairs orphaned sessions before commands are accepted, preserves resume cursors, and protects live sessions. Main still returns the generic no-active-session detail for stopped approval and input responses, so this PR retains a meaningful callback-cleanup delta. Its old startup implementation should not replace main because it lacks live-session protection and can fail the entire startup.

Recommendation. Keep open: partial fix. Reduce this PR to stale approval and input response handling, adapted to main error-state reconciliation.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ayubun. Updated 2026-08-20T17:55:02Z. Draft no. Target main. Head 16271a3a6d74b82719f411b7871bdb5be42ffcb1. Branch fix/interrupted-session-state. Size +300 / -3, 4 files, 1 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 13 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:33.017059+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #2829, #4584, #4713, #7719. Merged PRs that cover all or part: #7719.

Limits. Required checks absent from the canonical latest-commit rollup: Check, Test, Mobile Native Static Analysis, Release Smoke.

PR #7466. fix(chat): align messages with their text direction

Request. Align chat prose to its own reading direction while preserving left-to-right code on web and Android.

Audit finding. Main still has neither web message auto-direction nor Android direction-specific Markdown rendering. This patch uses message-level direction and Android AST parsing, while the other open proposal uses per-block direction and covers titles. The latest discussion also questions first-letter direction for Hebrew prose that starts with a Latin technical token. These are distinct direction-policy choices, and native iOS remains outside this patch.

Recommendation. Keep open: decision needed. Choose the shared direction policy with the other RTL proposal and verify the Android renderer.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author ShlomiPorush. Updated 2026-08-31T11:18:55Z. Draft no. Target main. Head f124b9fee00720288855b0535eb8199a46e91bc4. Branch fix/chat-message-direction. Size +332 / -48, 7 files, 13 commits. Mergeability MERGEABLE. Merge state BLOCKED. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 11 passed, 0 failed, 0 pending, 2 skipped. Checks captured 2026-09-01T11:50:33.017159+00:00.

Reviews. GitHub review decision APPROVED. Current-head approvals 1. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #7126.

Limits. The patch author did not run the Android path on a device or emulator. No current-head result for required checks: Test, Check, Mobile Native Static Analysis, Release Smoke.

PR #7471. fix(server): fix opencode sessions getting stuck running after subagents

Request. Stop OpenCode threads from remaining running after extra subagent busy and idle events.

Audit finding. Main now ignores busy events when no active turn exists, which removes the stated late-busy path to a stuck running session. It still has no dedicated session.idle handler. The PR retains and reopens an already-completed turn across later busy cycles, so its old state-machine change should not be merged unchanged over the current admission and cancellation guards.

Recommendation. Keep open: partial fix. Reproduce an idle-only completion on current main and keep only the missing event handling if it is still needed.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Fluffy-Bunny-23. Updated 2026-08-20T00:44:51Z. Draft no. Target main. Head 57852129f8eefe66110e485139482eb3d91ce888. Branch fix/opencode-stuck-running. Size +317 / -25, 2 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 8 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:33.017240+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8939, #6018, #8859. Merged PRs that cover all or part: #8480.

Limits. Canonical latest-commit checks do not include Check, Test, Mobile Native Static Analysis, Release Smoke. GitHub reports a merge conflict with current main.

PR #7483. feat(desktop): sign in through the browser, sharing the t3 connect credential

Request. Replace desktop Clerk UI with system-browser sign-in using the shared T3 Connect credential.

Audit finding. Main still uses the Clerk Electron bridge and a separate CLI token manager. The reviewed migration adds local auth endpoints, but its auth-state path falls back to a stored token when refresh fails while token issuance still fails the refresh. That unresolved state mismatch and the relay-first deployment requirement remain in addition to the product decision.

Recommendation. Keep open: decision needed. Resolve refreshed-token and legacy-account state handling before approving the desktop auth migration.

Confidence medium. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3dotgg. Updated 2026-08-19T09:37:33Z. Draft no. Target main. Head 627b8cbd19ea87510cf29f229f0687a265ff7d29. Branch t3code/move-electron-auth-to-browser. Size +2024 / -1937, 70 files, 9 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:33.017336+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion no, full diff no, current source yes, history yes.

Related work: #8136, #6285, #5015, #3749.

Limits. No auth flow or live relay deployment was exercised. The 231,971-byte diff was not fully read. Review covered the named feature paths and current main, not every file or test. Current review findings and general discussion were sampled, but historical resolved review threads were not read in full. The collected latest head has no results for these required checks: Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports merge conflicts with the current base.

PR #7492. perf(desktop): cache Windows shell environment

Request. Cache successful Windows PowerShell environment probes between desktop launches.

Audit finding. Main still performs both shell probes on every Windows launch despite the earlier concurrency improvement. This PR reuses complete results for up to 24 hours when inherited PATH matches and avoids caching incomplete probes. The remaining review needs to cover profile edits and FNM paths that can change without changing inherited PATH.

Recommendation. Keep open: work remains. Verify cache invalidation for profile changes and expired FNM paths before accepting the 24-hour cache.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Ivorisnoob. Updated 2026-08-19T07:18:32Z. Draft no. Target main. Head 75c39fdbee6240fd1cd51d13802b349247a50269. Branch perf/windows-desktop-startup. Size +194 / -13, 2 files, 1 commits. Mergeability MERGEABLE. Merge state CLEAN. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:33.017412+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5878, #6301.

PR #7493. feat(desktop): keep Windows host in system tray

Request. Keep the Windows desktop backend running in a system tray after the last window closes.

Audit finding. Main still quits on window-all-closed outside macOS and has no tray-backed close-to-background mode. The PR adds Open and Quit actions, enables hiding only after tray setup succeeds, and expands failed-update recovery and window-creation synchronization. This changes the default meaning of Close on Windows, so it needs a product decision and lifecycle verification, not closure as fixed.

Recommendation. Keep open: decision needed. Decide the default Windows close behavior, then verify tray reopen, explicit quit, and failed update recovery.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Ivorisnoob. Updated 2026-08-31T15:00:00Z. Draft no. Target main. Head c585d1743bec6a2b6fcbab7cc62891ab343715e1. Branch feat/windows-desktop-tray. Size +909 / -41, 13 files, 20 commits. Mergeability MERGEABLE. Merge state CLEAN. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 15 passed, 0 failed, 0 pending, 8 skipped. Checks captured 2026-09-01T11:50:33.017501+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5527, #7492, #6562.

PR #7495. fix(web): preserve dialog state through close transitions

Request. Retain dialog data and form state until the close transition completes.

Audit finding. The command-palette close fix has merged, but add-provider still unmounts immediately and commit-dialog fields still reset as closing starts. The broader dialog changes therefore remain useful. Rebase must retain newer image-viewer video support and stacking fixes rather than replacing that component with the older image-only version.

Recommendation. Keep open: partial fix. Keep the remaining dialog-lifecycle changes and rebase them around current video preview behavior.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author tarik02. Updated 2026-08-24T07:24:02Z. Draft no. Target main. Head 18085c3006e0d28eb06aa5561c1a93d19f755535. Branch fix/dialog-close-transitions. Size +258 / -183, 11 files, 11 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SKIPPED, Release Smoke: SUCCESS. Observed: 17 passed, 0 failed, 0 pending, 5 skipped. Checks captured 2026-09-01T11:50:33.017740+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5169, #8016, #8688, #8811. Merged PRs that cover all or part: #5169.

PR #7503. feat(web): automatically update idle servers

Request. Opted-in background-service environments should update to a newer client version after all work is idle.

Audit finding. Main has manual launcher-backed updates but no automatic-update coordinator or idle gate. In this PR, a server deferral resets update state to idle while attemptedTargetRef can remain latched, so a still-ready client never retries. Its idle predicate also misses queued user messages before provider turn adoption, and the coordinator is not mounted on mobile.

Recommendation. Keep open: work remains. Clear the attempt latch on deferral and cover queued turn starts before an automatic handoff.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author t3-code. Updated 2026-08-19T10:03:15Z. Draft no. Target main. Head a0f0b727ddc3ed00ffdb78995b7f0e08e9753f87. Branch feat/automatic-server-updates. Size +1133 / -98, 22 files, 9 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 13 passed, 0 failed, 0 pending, 6 skipped. Checks captured 2026-09-01T11:50:38.674266+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 2. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5513, #6554, #8600.

PR #7506. feat(web): hide noisy projects from the pull request list

Request. Persist a set of repositories excluded from the pull-request list.

Audit finding. Main still offers a single Project radio selection, including after the new list-filter UI in PR 8809. The proposal removes hidden repository identities before per-environment requests and preserves an Only action. It remains a product addition, and its filter controls now need adaptation to the submenu-based main implementation.

Recommendation. Keep open: decision needed. Decide whether repository exclusion should ship and adapt it to the current filter submenus.

Confidence high. Release: Not applicable. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author bil0ak. Updated 2026-08-19T10:46:41Z. Draft no. Target main. Head fd9ad2ace2089d8aea4f3510394172ae5e01ac93. Branch feat/pr-list-hide-projects. Size +565 / -112, 8 files, 7 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: not captured, Check: not captured, Mobile Native Static Analysis: not captured, Release Smoke: not captured. Observed: 9 passed, 1 failed, 0 pending, 3 skipped. Checks captured 2026-09-01T11:50:38.674362+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #8809.

Limits. Latest-commit metadata has no required runs for Test, Check, Mobile Native Static Analysis, Release Smoke. GitHub reports conflicts with the target branch.

PR #7520. fix(server): bound Claude subagent usage

Request. Limit Claude child-agent depth and concurrency and reconcile background-task cleanup.

Audit finding. Main now closes the Claude query on Stop and settles tracked tasks through the merged stop fix. It still has no default five-agent or one-level limit and ignores background_tasks_changed snapshots. This branch combines those product limits with an SDK upgrade and older stop logic, so the remaining work must be reconciled with the newer lifecycle code.

Recommendation. Keep open: partial fix. Separate the default-agent-limit decision from background-task reconciliation on current main.

Confidence high. Release: In stable source. PR readiness: Needs work or a decision.

Observed GitHub metadata. GitHub state OPEN. Author Ivorisnoob. Updated 2026-08-20T05:10:52Z. Draft no. Target main. Head de22df21a2a0a2d402e97df4f2ee5d68f7546fb2. Branch fix/claude-agent-usage-guardrails. Size +275 / -97, 6 files, 2 commits. Mergeability CONFLICTING. Merge state DIRTY. Metadata snapshot 2026-09-01T11:57:41.491617+00:00.

Checks. Required: Test: SUCCESS, Check: SUCCESS, Mobile Native Static Analysis: SUCCESS, Release Smoke: SUCCESS. Observed: 11 passed, 2 failed, 0 pending, 4 skipped. Checks captured 2026-09-01T11:50:38.674440+00:00.

Reviews. GitHub review decision UNKNOWN. Current-head approvals 0. Current-head change requests 0. Unresolved review threads 0. Counts do not replace review of the findings.

Evidence read. body yes, discussion yes, full diff yes, current source yes, history yes.

Related work: #5568, #5891, #8853. Merged PRs that cover all or part: #5891.

Limits. GitHub reports merge conflicts against the target branch.