Skip to content

chore: re-sync upstream main - #166

Merged
tarik02 merged 15 commits into
mainfrom
sync-upstream-main-20260829
Aug 29, 2026
Merged

chore: re-sync upstream main#166
tarik02 merged 15 commits into
mainfrom
sync-upstream-main-20260829

Conversation

@tarik02

@tarik02 tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator

What Changed

Synchronize the fork after PR #164 through upstream commit 053affbed2659f90cd1b1efaaa7a75865c4131c7.

This keeps the fork-owned thread delta subscription and Codex protocol behavior, restores LF-only JSONL framing, aligns the fork's Claude adapter with the current SDK types, renders generic file attachments with signed downloads in the mobile thread feed, and updates the Nix pnpm dependency hash for the fork's patched lockfile.

Why

The sync merge exposed three code regressions: mobile users could not see or open generic file attachments, carriage returns inside Codex JSON frames were misread as record separators, and stale fork-only Claude SDK assumptions broke typecheck. The lockfile changes also required the generated Nix dependency hash to be refreshed.

Validation

  • Codex app-server protocol tests: 14 passed.
  • Claude adapter tests: 79 passed.
  • Mobile and server TypeScript checks: passed.
  • Focused formatter and lint checks: passed.
  • Previous full CI test shards and aggregate check: passed.

Authored by GPT-5.6 Sol with the Codex harness.

juliusmarminge and others added 14 commits August 28, 2026 17:53
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
PRs #8437 and #8236 crossed: one made stashShortcutLabel a required
ComposerStashMenu prop, the other added a test case without it, so
main fails web typecheck.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Theo Browne <me@t3.gg>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Aug 29, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-08-29T12:10:17.392592Z b2a333f Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions github-actions Bot added size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Aug 29, 2026
@github-actions

github-actions Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 12.1 KiB 12.1 KiB −10 B (−0.1%) 15.1 KiB
Codex Thread snapshot wire 5.8 KiB 5.8 KiB +1 B (+0.0%) 7.3 KiB
Codex Live turn WebSocket wire 6.4 KiB 6.4 KiB −11 B (−0.2%) 7.8 KiB
Codex Live turn WebSocket decoded 55.5 KiB 55.5 KiB 0 B (0.0%) 66.4 KiB
Codex Live turn messages 9 9 0 (0.0%) 21
Claude Total thread wire 12.2 KiB 12.2 KiB −8 B (−0.1%) 15.1 KiB
Claude Thread snapshot wire 5.8 KiB 5.8 KiB +4 B (+0.1%) 7.3 KiB
Claude Live turn WebSocket wire 6.4 KiB 6.4 KiB −12 B (−0.2%) 7.8 KiB
Claude Live turn WebSocket decoded 56.4 KiB 56.4 KiB 0 B (0.0%) 66.4 KiB
Claude Live turn messages 9 9 0 (0.0%) 21

Baseline: e7aedf4 · PR result: b2a333f · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 84.1 KiB
  • Claude decoded thread snapshot: 84.5 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bf44a47611

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +6102 to +6103
const composerFilesSnapshot = [...composerFiles];
const composerAttachmentsSnapshot = [...composerImagesSnapshot, ...composerFilesSnapshot];

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Render file attachments in the mobile thread feed

When a web or desktop user sends one of the newly included generic files and later opens that thread on mobile, apps/mobile/src/features/threads/ThreadFeed.tsx:1037-1039 filters every non-image attachment out, so the mobile client provides neither the filename nor a download action; a file-only turn instead exposes only the synthetic attachment bootstrap text. Add a mobile file row/download path before making these attachments part of dispatched messages.

AGENTS.md reference: AGENTS.md:L67-L76

Useful? React with 👍 / 👎.

@github-actions github-actions Bot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Aug 29, 2026
@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bdb2518ffd

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

const standaloneSlashCommand =
settings.planModeEnabled &&
composerImages.length === 0 &&
composerFiles.length === 0 &&

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Exclude file-bearing drafts from /goal parsing

When a Codex draft contains a generic file and text such as /goal set ..., the following goal-command parser remains eligible because it checks only composerImages. The goal branch then clears the composer before issuing the goal request, so the file is neither sent nor restored—and its pending upload is left behind. Apply the same composerFiles.length === 0 guard used here to the /goal path.

Useful? React with 👍 / 👎.

@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 80e4a5b1d0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

}
className="flex shrink-0 flex-nowrap items-center justify-end gap-2"
>
{fileStagingLimit !== null && pendingUserInputs.length === 0 ? (

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep the image picker available for older servers

When the connected server predates attachmentUploads or advertises image uploads without fileAttachments, fileStagingLimit becomes null, so this condition removes the only click/touch attachment picker. Images remain supported in this configuration—addComposerAttachments accepts them and onSend deliberately falls back to inline data URLs—so version-skewed and remote users can attach images only through drag or paste. Keep the picker visible for images and reject unsupported generic files in the existing validation path.

Useful? React with 👍 / 👎.

@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep it up!

Reviewed commit: c3294677f5

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@tarik02
tarik02 force-pushed the sync-upstream-main-20260829 branch from c329467 to 9c4f978 Compare August 29, 2026 11:41
@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9c4f978184

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/server/package.json Outdated
{
"name": "t3",
"version": "2026.8.2900",
"version": "2026.8.2700",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Restore the current fork release version

When this commit is built or installed, the server now advertises 2026.8.2700 even though its immediate parent is the stable-release commit for 2026.8.2900; the same downgrade occurs in the web, desktop, and contracts manifests. Because ServerEnvironment and the service launcher use this manifest value for version-skew and update comparisons, newer code can be treated as an older release and rejected or offered incorrect update behavior. Preserve 2026.8.2900 during the upstream sync rather than reverting the release bump.

Useful? React with 👍 / 👎.

@tarik02
tarik02 force-pushed the sync-upstream-main-20260829 branch from 9c4f978 to 9f5c949 Compare August 29, 2026 11:47
@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9f5c949dab

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread pnpm-lock.yaml Outdated
@@ -462,7 +462,7 @@ importers:
dependencies:
'@anthropic-ai/claude-agent-sdk':
specifier: ^0.3.170
version: 0.3.220(@anthropic-ai/sdk@0.93.0(zod@4.4.3))(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(zod@4.4.3)
version: 0.3.170(@anthropic-ai/sdk@0.93.0(zod@4.4.3))(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(zod@4.4.3)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep the resolved Claude SDK at 0.3.220

Fresh installs now resolve @anthropic-ai/claude-agent-sdk to 0.3.170 instead of the parent commit's 0.3.220 even though apps/server/package.json still allows the newer release. This silently rolls the Claude provider back by 50 patch releases—and discards their runtime fixes and protocol behavior—while the accompanying adapter changes are intended to align the fork with the current SDK. Preserve the existing 0.3.220 lock resolution when regenerating the merged lockfile.

Useful? React with 👍 / 👎.

@tarik02
tarik02 force-pushed the sync-upstream-main-20260829 branch from 9f5c949 to 65c54fd Compare August 29, 2026 11:59
@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@tarik02
tarik02 force-pushed the sync-upstream-main-20260829 branch from 65c54fd to b2a333f Compare August 29, 2026 12:04
@tarik02

tarik02 commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: b2a333f494

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@tarik02
tarik02 merged commit 45645b9 into main Aug 29, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. size:XXL 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.

6 participants