Skip to content

fix(mobile): center Android sheets and fit book-mode sheets in the left pane - #18492

Merged
juliusmarminge merged 9 commits into
pingdotgg:mainfrom
PixPMusic:pixpmusic/fix-android-workspace-sheet-presentation
Oct 27, 2026
Merged

juliusmarminge merged 9 commits into
pingdotgg:mainfrom
PixPMusic:pixpmusic/fix-android-workspace-sheet-presentation

Conversation

@PixPMusic

@PixPMusic PixPMusic commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

On unfolded Android, routed sheets are confined to the detail pane, leaving the rail and list outside their backdrop. Present them over the whole workspace and use Material’s 640dp maximum width, centered and bottom-anchored. Compact and cover screens fill their available width.

With an active vertical hinge in portrait book mode, both routed sheets and standalone FormSheets now fit inside the physical left pane, matching the Duo’s native presentation. Folding updates the sheet frame and React content together; unfolding restores centered sizing without losing form state. The backdrop continues to cover the whole workspace. Grips and rounded inner headers are preserved.

Merged main dc84b0962e, resolving conflicts with #18547 and the Samsung/One UI navigation changes while retaining Maria’s workspace presentation host. Current head: f8e85a257e. Android native changes are published as Screens 5.0.0-t3.48: source, tag. Its iOS/C++/JS payloads are unchanged from the previous archive.

Validation

Native Android 17 foldable: both sheet implementations fit within the left 1038px of the 2076px portrait display. Flat/book transitions, opening already bent, restored centered width, cover sizing, selection/draft preservation, full-workspace backdrop dismissal, header dismissal and the One UI preference passed. One Duo Commit capture confirms the left-side reference. Synthetic demo fixtures only.

vp run check:changed passed, including 27 focused tests; four native placement tests passed. Rebuilt and exercised the native Android client. Landscape placement is unit-tested; no new runtime landscape or full iPhone/iPad matrix is claimed. Keyboard lift/keyboard-first Back remain unverified because the emulator did not show an on-screen IME.

Flat Android Portrait book mode
Commit centered across the flat Android workspace Commit fits inside the left half in portrait book mode
Standalone FormSheet in book mode Duo native reference
Example sheet frame and content end at the hinge Duo Commit sheet in the left half with its hinge active

Fold/unfold video · Cover · One UI · Native Android photo-library reference · Verification details

Original main/PR comparison and validation.

Model: GPT-6.1 Sol (high reasoning) | Harness: Codex

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L 100-499 changed lines (additions + deletions). labels Oct 12, 2026
@juliusmarminge juliusmarminge added the macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews label Oct 12, 2026 — with ChatGPT Codex Connector
@PixPMusic
PixPMusic marked this pull request as ready for review October 12, 2026 04:13
@macroscopeapp

macroscopeapp Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Needs Human Approval

Macroscope's review found this PR requires human approval — This change introduces a custom Android navigation/presentation layer and restructures workspace rendering so bottom sheets can cover the entire workspace, alongside a native screen dependency update. Because it affects existing navigation, mounting, layout, and dismissal behavior across Android, the runtime impact warrants human review.

Notes:

  • No code objects were reviewed. Approvability was decided on eligibility alone.

You can add or adjust custom eligibility rules. Learn more.

@coderabbitai

coderabbitai Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

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

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between fb30929 and 7005da5.

Files ignored due to path filters: 1
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
Files selected for processing: 3
  • apps/mobile/deps/react-native-screens-5.0.0-t3.45.tgz
  • apps/mobile/deps/react-native-screens-5.0.0-t3.46.tgz
  • apps/mobile/package.json

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

Walkthrough

The Android workspace navigator separates workspace routes from presentation overlays. The adaptive layout provides its column renderer through context when a presentation host is active.

Changes: Android presentation

Layer / File(s) Summary
Route projection and tests
apps/mobile/src/native/workspace-stack-projection.ts, apps/mobile/src/native/workspace-stack-projection.test.ts
projectStackPresentation splits routes at the first overlay. Tests cover review-sheet routes, Back navigation, grouped sheet pages, and cold-linked detail history.
Presentation context and column renderer
apps/mobile/src/features/layout/workspace-presentation-context.tsx, apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx
The adaptive layout reads the presentation-host context. It provides its column renderer through context when hosted and renders the columns directly otherwise.
Android navigator integration
apps/mobile/src/features/layout/createWorkspaceStackNavigator.android.tsx, apps/mobile/package.json
The Android navigator renders workspace routes in the columns and overlays above the base descriptor. The react-native-screens tarball changes from t3.45 to t3.46.

Priority: Normal

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Bug fix

Sequence Diagram(s)

sequenceDiagram
  participant AdaptiveWorkspaceLayoutContent
  participant WorkspaceStackNavigator
  participant WorkspaceStackView
  participant projectStackPresentation
  participant renderColumns
  AdaptiveWorkspaceLayoutContent->>WorkspaceStackNavigator: provide renderColumns through context when hosted
  WorkspaceStackNavigator->>WorkspaceStackView: render navigation state
  WorkspaceStackView->>projectStackPresentation: split routes at first overlay
  projectStackPresentation-->>WorkspaceStackView: return workspace routes and overlays
  WorkspaceStackView->>renderColumns: render workspace routes
  WorkspaceStackView->>WorkspaceStackView: place overlays above the base descriptor
Loading

Suggested reviewers: juliusmarminge

Merge Risk: Minimal · up to 7005d

No actionable merge-blocking risk is established; native runtime checks remain useful follow-up validation.

Security architecture risk: Low · up to e2066

The change is confined to Android navigation and sheet presentation. The inspected code preserves existing route identities and dismissal controls, with no demonstrated expansion of access or privileges. Some rapid-transition and nested-dismissal behavior remains unverified on Android.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The supported exposure is shared Android presentation behavior: workspace-wide routed overlays and Android form sheets using either patched native implementation. A regression could therefore affect multiple screens, but the inspected changes do not grant new service, tenant, credential, or data-store authority.

Trust Boundaries and Controls

  • observed — The synthetic workspace route is a rendering container, not a replacement identity for overlay actions. Production dismissal uses the real descriptor route key and current owning router key; Android legacy dismissal emits a count of one.

Resilience and Maintainability Implications

  • observed — Tests cover helper-level identity and ordering, ordinary back navigation, grouped dismissal, and cold-linked history. These tests do not render the new Android presentation envelope, so they do not prove native grouped-dismissal, interruption, or rapid-repeat behavior.
Pre-merge checks: Passed 4
Check name Status Explanation
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Title check Passed The title "fix(mobile): center Android sheets and fit book-mode sheets in the left pane" follows conventional commit form and names the two main changes: centering Android routed sheets and fitting sh…
Description check Passed The description covers the problem (routed sheets confined to the detail pane on unfolded Android), the change (presenting sheets over the whole workspace, centered sizing, book-mode fitting to the le…
Full details: Title check

Explanation

The title "fix(mobile): center Android sheets and fit book-mode sheets in the left pane" follows conventional commit form and names the two main changes: centering Android routed sheets and fitting sheets in the left pane in book mode. The objectives describe centering sheets across the workspace, and the description adds book-mode fitting, so the title matches the changeset. It is slightly long at 76 characters, but it is specific and not vague.

Full details: Description check

Explanation

The description covers the problem (routed sheets confined to the detail pane on unfolded Android), the change (presenting sheets over the whole workspace, centered sizing, book-mode fitting to the left pane), and extensive verification (device captures, native test counts, emulator checks, and explicit unverified items). It also links the scope context to PR #18492 and related comments. The template's 'Scope and approval' section is not explicitly filled in: it does not state a linked triaged bug issue or maintainer approval, and it only references a prior comparison comment. The description also mixes in a lot of branch, commit, and dependency detail (merge hashes, a tag, a fork source link) that the template does not ask for. Overall the description is mostly complete, but the scope and approval section needs a clear link to the triaged issue or maintainer approval.

Resolution

Consider adding an explicit link to the triaged bug issue or the maintainer approval comment in the 'Scope and approval' section. Trim the merge and fork-tag details if they are not needed for review.

Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@PixPMusic
PixPMusic force-pushed the pixpmusic/fix-android-workspace-sheet-presentation branch from 5020e62 to e206621 Compare October 17, 2026 05:33

Copy link
Copy Markdown
Collaborator

Note

Written by gpt-6.1-sol on behalf of Maria

@PixPMusic, thank you for putting the sheet host around the whole workspace and preserving the original route descriptors. I kept that implementation and your commit, then merged current main without rebasing.

The change is now five mobile source/test files. I removed the native width patch, its Kotlin tests and dependency/lockfile changes: the backdrop defect needs a workspace-sized presentation host, while a new 640dp width policy is a separate design decision. Native sheet sizing now stays at its existing defaults. Main's rail overlay, compact Settings navigation, safe areas, settled content widths and inspector behavior are retained. I also simplified the renderer and tightened its return type.

Passed on 79849feef21f2f8865639ea869a4a098e3aad007: Blacksmith vp run check:changed (format, lint, knip, mobile/scripts typecheck and 27 projection tests), plus a focused run of projection and Android workspace navigation tests (35 passed). Lint reports one existing effect-dependency warning. GitHub CI is green, with unaffected jobs skipped. Macroscope correctness passed; its approvability result still requests maintainer review. CodeRabbit was rate limited and did not review this head.

Unverified: actual Android presentation, full-workspace tap interception, compact/wide sizing, keyboard, Back/dismiss and resizing. This VM has no attached Android device, and the device tool reports "Agent device access is turned off for this environment." Chrome cannot exercise native ScreenStacks, so I have no current-main/current-head screenshots or interaction video. The older evidence in the description predates this reduced implementation and does not verify this head. Please run those native checks before merging.

Two independent GPT-6.1-Sol reviews of this exact head found no actionable code findings. Both leave native interaction verification as the remaining blocker.

@PixPMusic

Copy link
Copy Markdown
Contributor Author

Picking up the Android validation pass from Maria’s latest head. I’m going to merge current main into this branch, preserve the reduced workspace presentation-host implementation, and run native Android checks on the unfolded inner display and folded cover screen.

I’ll check full-workspace backdrop/tap interception, compact and wide sizing, keyboard behavior, Back/dismissal, and fold/resizing transitions, then upload fresh screenshots and interaction evidence here with a follow-up validation comment. The existing native sheet width defaults will stay intact; this pass is intended to get the remaining native validation done for the merge window.

@PixPMusic

Copy link
Copy Markdown
Contributor Author

First current-main validation pass, before the requested sizing follow-up: merged 278fdce1af into Maria’s 79849feef2 without rebasing; pushed head fb30929787.

Native Android 17 foldable, inner 2076×2152 and cover 1080×2424, using synthetic demo data:

  • Reproduced the remaining defect on current main: Commit is hosted in the right pane, and tapping Settings behind it navigates the workspace.
  • The merged PR head presents Commit across the entire workspace. Taps over the dimmed rail expander, another thread row, and the list header dismiss the sheet without activating those targets. Header cancel, Android Back, reopening and folded/unfolded layout were exercised.
  • vp run check:changed passed (format, lint, both Knip passes, mobile/scripts types and projection tests). The focused projection/Android navigation run passed 35 tests.
  • This is not the final requested presentation: the routed sheet currently spans the full width on wide screens. Alex wants the narrower centered presentation already used by the standalone FormSheet. I’m adding that sizing follow-up next and will post a separate validation pass, including Duo and the unfolded Android photo picker reference. IME behavior and the additional surfaces will be checked in that pass. No commit, comment, review, or agent turn was submitted in the test app.
Current main First-pass head (full width; sizing follow-up pending)
Current main Commit sheet confined to right pane First-pass Commit sheet covers whole workspace but still full width

Backdrop interaction recording · Same thread after backdrop dismissal

@PixPMusic

Copy link
Copy Markdown
Contributor Author

Second native validation pass on 7005da57c9 (after the centered-width commit), following the first-pass report.

Routed Android sheets now match the standalone FormSheet/photo-library presentation Alex requested: bottom-anchored, centered across the whole workspace, and limited by Material’s existing 640dp maximum width. Compact windows use the available width. The native change is published at c49845fd in the Screens source fork, packaged as 5.0.0-t3.46. This uses the existing Material dimension rather than the old 600dp breakpoint/gutter policy.

Passed on the rebuilt Android 17 client (b43611bc003007d0887be19f847dda60d13120a9):

  • Unfolded 2076×2152: Commit and Branches centered; full-workspace dimming. Taps over the rail expander, another thread row, and header search dismiss the sheet without activating those controls. Header cancellation, Android Back and reopening work.
  • Folded cover 1080×2424: Commit fills the available width. An unsent draft survives unfolding → folding → unfolding, with the centered width restored.
  • Current-main Review and Add environment retain their page presentation; no conversion of those pages to sheets is claimed.
  • vp run check:changed passed after the dependency update: unused patches, format, lint, both Knip passes, affected package types and projection tests. The focused projection/Android navigation run passed 35 tests. Native Android source compiled and the rebuilt client was installed.

The flat Duo image below is a visual comparison, not a full Apple regression matrix. The packaged iOS, C++ and library JS payloads are byte-identical to t3.45; only the Android layout source, package version and provenance metadata changed. The Duo capture uses the existing compatible iOS binary. All captures use demo fixtures/media. No source-control operation, comment/review submission, or agent turn was triggered through the app.

Remaining validation gap: the emulator did not display an on-screen IME when fields were focused, so keyboard lift/keyboard-first Back remain unverified. Text editing, draft retention, ordinary Back and dismissal were checked. Physical devices and landscape were not tested.

Current main Centered Commit on this head
Current main routes Commit into the right pane Updated native Android Commit sheet centered across the full workspace
Android system photo library reference Flat Duo comparison
Unfolded Android system photo picker centered over the workspace Flat iPhone Duo with centered native Commit sheet

Backdrop interaction video · Branches · Cover screen with draft · Same draft after unfolding · Verification details

@PixPMusic

Copy link
Copy Markdown
Contributor Author

Follow-up on 63978927c4: routed Android sheets now have the grip and rounded inner content boundary Alex called out.

The navigator marks actual form-sheet routes so their shared Android header draws the grip in its existing top padding, using embedded header spacing without a camera inset or a second handle row. Standalone FormSheets retain their own native grabber and reset that route context to avoid duplicates. Commit now uses the existing ScreenContent wrapper for its rounded header/content join; Branches already used it.

Native Android 17 checks on this head: Commit and Branches captured on unfolded inner (2076×2152) and folded cover (1080×2424) displays. Centered/wide and compact sizing remain correct; dragging down from the grip dismisses the native sheet. Header cancel, Android Back/reopen, file-selection toggle/restore and draft preservation across unfolding passed. vp run check:changed passed (format, lint, both Knip passes, affected types, projection tests and unused patches).

No Apple regression matrix repeated. The shared Commit wrapper returns its children unchanged on iOS; the new header and route-context behavior is Android-only. Earlier IME/physical-device/landscape validation gaps remain as documented.

Before header follow-up Current Commit
Previous centered Commit without grip or rounded inner content boundary Centered Commit with grip and rounded inner content boundary

Commit cover screen · Branches inner · Branches cover · Drag from grip to dismiss

…rent-main-validation

# Conflicts:
#	apps/mobile/src/components/ui/Sheet.android.tsx
#	apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx
@PixPMusic PixPMusic changed the title fix(mobile): center Android bottom sheets across the workspace fix(mobile): center Android sheets and fit book-mode sheets in the left pane Oct 27, 2026
@PixPMusic

Copy link
Copy Markdown
Contributor Author

Merged current main (dc84b0962e) and resolved the conflicts from #18547 and the Samsung/One UI changes. Pushed f8e85a257e; GitHub now reports the PR is mergeable.

Confirmed on the Duo: with the book hinge active, native Commit presents in the left half. Android now follows that rule for both routed sheets and standalone FormSheets. The entire frame, grip and React content fit within the left pane; the sheet no longer just moves left while remaining too wide. Unfolding restores the centered Material width. The backdrop still intercepts touches across the full workspace.

Fresh native Android validation passed: flat → book → flat, opening already bent, selection preservation, Commit draft/file-selection preservation across cover and unfolding, right-side backdrop dismissal, header dismissal, and the merged One UI preference. vp run check:changed passed (27 focused tests), plus 4 native geometry tests. Screens 5.0.0-t3.48 source/tag are published; iOS/C++/JS payloads are unchanged.

Routed sheet in book mode Standalone FormSheet in book mode
Commit fits in the physical left pane Example sheet fits in the physical left pane

Fold/unfold video with selection preserved · One Duo comparison · Cover · One UI · Verification details.

Synthetic fixtures only. No new full iPhone/iPad regression matrix; Duo is the placement reference. Runtime landscape and keyboard/IME behavior are not newly verified. PR description updated with the current implementation and evidence.

Model: GPT-6.1 Sol (high reasoning) | Harness: Codex

@PixPMusic

Copy link
Copy Markdown
Contributor Author

Follow-up from Alex’s physical Pixel foldable test on f8e85a257e: the live on-device behavior looks noticeably better than the emulator captures.

The recording shows Branches & worktrees centered when flat, resizing fully into the left pane with the portrait book hinge active, and returning to the centered layout when unfolded. This is the T3 Code Dev APK with embedded JS, running without Metro and with OTA updates disabled.

Physical Pixel recording — flat/book transitions (MP4)

Device name obscured for the public recording; the sheet behavior is unchanged.

@juliusmarminge
juliusmarminge merged commit 5b15cfc into pingdotgg:main Oct 27, 2026
32 checks passed
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Oct 28, 2026
## What's Changed
* fix(mobile): center Android sheets and fit book-mode sheets in the left pane by @PixPMusic in pingdotgg/t3code#18492
* fix(mobile): keep the collapsed Android rail square by @PixPMusic in pingdotgg/t3code#26039
* fix(web): closing the last Browser tab hides the right panel again by @juliusmarminge in pingdotgg/t3code#26058
* refactor(web): pull requests Cmd+F focuses the topbar search directly by @juliusmarminge in pingdotgg/t3code#26045
* refactor(web): install draft model reconciliation at app start by @juliusmarminge in pingdotgg/t3code#26046
* perf(mobile): project favicons mount their image in one commit by @juliusmarminge in pingdotgg/t3code#26047
* refactor(web): the upload queue alone records finished file uploads on drafts by @juliusmarminge in pingdotgg/t3code#26050
* feat(mobile): Usage uses the width on iPad and unfolded phones by @juliusmarminge in pingdotgg/t3code#26061
* fix(gitcafe): PR panel follows renumbered pull requests by @juliusmarminge in pingdotgg/t3code#26079
* chore(infra): bump Alchemy to 2.0.0-beta.84 by @juliusmarminge in pingdotgg/t3code#26057
* refactor(mobile): stop writing the resolved project filter back from an effect by @juliusmarminge in pingdotgg/t3code#26049
* fix(mobile): a pairing link fills the open Add environment form instead of stacking another by @juliusmarminge in pingdotgg/t3code#26052
* fix(mobile): snooze menu times advance with the clock by @juliusmarminge in pingdotgg/t3code#26043
* fix(clients): prompt links find projects cloned from git.cafe by @juliusmarminge in pingdotgg/t3code#26042
* fix(server): retry Codex capacity failures with empty input by @Yash-Singh1 in pingdotgg/t3code#25611
* fix(server): recover handoffs when target context is exhausted by @Yash-Singh1 in pingdotgg/t3code#25610
* fix(web): chips drop their pill and stay readable on every theme by @flamboh in pingdotgg/t3code#25066
* fix(mobile): switching pull request tabs no longer jumps the page by @flamboh in pingdotgg/t3code#26064
* feat(mobile): report crashes to Axiom with symbolicated stacks by @gabrielelpidio in pingdotgg/t3code#19093
* fix(web): chip palette test follows the single design by @juliusmarminge in pingdotgg/t3code#26131
* feat(server): /mcp narrows a client's modes from T3-Mode-Limit by @juliusmarminge in pingdotgg/t3code#16653
* feat(server): t3_thread_launch takes clientRequestId by @juliusmarminge in pingdotgg/t3code#16654
* feat(server): link to another environment by @juliusmarminge in pingdotgg/t3code#16655
* feat(server): agents use linked environments through any T3 tool by @juliusmarminge in pingdotgg/t3code#16684
* feat(server): work a linked environment starts stays within its link by @juliusmarminge in pingdotgg/t3code#16695
* feat(web,mobile): linked environments in Connections by @juliusmarminge in pingdotgg/t3code#16698
* feat(server): delegate_task to a linked environment by @juliusmarminge in pingdotgg/t3code#16719
* feat(server,web,mobile): an agent sets up a link to another environment by @juliusmarminge in pingdotgg/t3code#17129
* feat(server,web,mobile): @-mention a machine, and linked environments become a Labs beta by @juliusmarminge in pingdotgg/t3code#17130
* fix(mobile): dragging a microphone or environment route now saves its new place by @juliusmarminge in pingdotgg/t3code#26096
* feat(web): channel artwork choice on Latest, plus nightly or dev art on any channel by @maria-rcks in pingdotgg/t3code#26138
* feat(mobile): browse ZIP attachments with the shared archive reader by @Bil0000 in pingdotgg/t3code#19463
* fix(server): Claude --settings launch args merge with T3's settings instead of being dropped by @t3dotgg in pingdotgg/t3code#22864
* feat(server,web): see and stop the dev servers a thread started by @t3dotgg in pingdotgg/t3code#22542
* fix(web): composer no longer jumps when a second line is added by @maria-rcks in pingdotgg/t3code#26155
* feat(web,mobile): queued messages show who sent them by @juliusmarminge in pingdotgg/t3code#26159
* fix(preview): agent and browser panel show the same page after a late desktop attach by @t3dotgg in pingdotgg/t3code#22877
* fix(web): pairing, connect, error, and Clerk sign-in surfaces match the app's dialog style by @maria-rcks in pingdotgg/t3code#25281
* fix(server): parallel worktree launches no longer fail on .git/config lock by @juliusmarminge in pingdotgg/t3code#25700
* fix(task-cache): the hook test waits for every flusher it starts by @juliusmarminge in pingdotgg/t3code#26148
* chore(lint): every React effect states its reason at the call site by @juliusmarminge in pingdotgg/t3code#26161
* test(server): the link-card retry test names a new MCP credential by @juliusmarminge in pingdotgg/t3code#26143
* perf(web): stop measuring table cells while replies stream by @t3dotgg in pingdotgg/t3code#26152
* feat(desktop): add a remote server by clicking its t3code://pair link by @t3dotgg in pingdotgg/t3code#24111
* fix(server): agent questions stay answerable after a server restart by @SunkenInTime in pingdotgg/t3code#19229
* chore(lint): the effect lint error walks the alternatives before the suppression by @juliusmarminge in pingdotgg/t3code#26181
* fix(web): settings avatar no longer hugs the modal corner by @t3dotgg in pingdotgg/t3code#26180
* fix(mobile): shared file names can no longer write outside the Android cache by @juliusmarminge in pingdotgg/t3code#26175
* fix(server): repository lookups no longer send GitHub tokens to arbitrary hosts by @juliusmarminge in pingdotgg/t3code#26176
* fix(github): long period runs no longer freeze reference autolinking by @juliusmarminge in pingdotgg/t3code#26177
* fix(mobile): Android diff ellipsis no longer measures text quadratically by @juliusmarminge in pingdotgg/t3code#26174
* fix(server): Codex works again after its app-server is killed by @t3dotgg in pingdotgg/t3code#26188


**Full Changelog**: pingdotgg/t3code@v0.1.4-nightly.20261027.3783...v0.1.4-nightly.20261027.3796

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.1.4-nightly.20261027.3796
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews size:L 100-499 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants