merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

merge: sync upstream through 0681d8549 (66 commits) - #438

Merged
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549
Sep 2, 2026
Merged

merge: sync upstream through 0681d8549 (66 commits)#438
patroza merged 72 commits into
fork/devfrom
sync/upstream-0681d8549

Conversation

@patroza

Copy link
Copy Markdown
Owner

Why

Bring fork/dev up to pingdotgg/t3code main at 0681d8549.

Classic-merge (not squash). origin/main could not be fast-forwarded: Protect requires a PR + required checks on refs/heads/main. Same as #437 — merge upstream/main into fork/dev via this PR.

Range

Weld

53 content conflicts, 3-way, no whole-file ours/theirs.

Keep fork:/new, Grok ACP + GROK_DEFAULT_MODEL grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup confirm, omegent, DPoP, ForkMigrations, VOUCHED.td stays deleted.

Take upstream: assistant citations, remote Mac desktop updates, Claude Fable/model catalog, incremental projection, Oniguruma highlighter, file/video/PDF viewer, quit-shortcut confirmation, and related client work.

Land

gh pr merge --merge only after the ship gate and required checks are green. Do not squash.

StiensWoutand others added 30 commits September 1, 2026 12:44
Co-authored-by: Simone <185146821+Lucenx9@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…pingdotgg#9001)
Co-authored-by: Guillermo Casanova <guillermo.casanova.b@gmail.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Six repeat contributors remained unvouched. Add their approved accounts to the trust list:
- `github:ipanasenko`
- `github:nateEc`
- `github:maxwellyoung`
- `github:tsouth89`
- `github:0x4bs3nt`
- `github:Adamulek123`
This change does not modify runtime or workflow logic.
Made by GPT-5.6 Sol in the Codex harness.
…g#9129)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: Rodrigo Brechard <rodrigo@clubtidy.fr>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ruma WASM engine (pingdotgg#8360)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#9152)
Takes over pingdotgg#6608 by @x1xhlol.
Server: thread.message-sent updates the projection row directly and folds latestUserMessageAt in as a running maximum instead of running refreshThreadShellSummary. Client: thread.activity-appended takes an O(1) append path for in-order, unseen activities on reducer-produced arrays, with a WeakMap id index, and falls back to filter and sort for out-of-order, re-delivered, context-window, and snapshot-loaded cases.
Reducer benchmark: 10,000 in-order appends went from 1,180 ms to 70 ms.
Change authored by Claude Fable 5.1 running in Claude Code, based on work by @x1xhlol.
Co-authored-by: Lucas Valbuena <lucknitelol@proton.me>
WebSocket reconnect catch-up only checked the number of missing events, then loaded and decoded the whole replay range before sending it. A handful of events with large tool payloads could allocate gigabytes and OOM the server.
Before replaying, run a SQL preflight that counts the events in the range and sums their serialized payload bytes with octet_length(). If the range is over the existing row limit or an 8 MiB byte budget, fall back to the fresh snapshot path. Applies to both thread and shell subscriptions.
Authored by @rcawston. Review, octet_length fix, and merge by Claude Fable 5.1 in Claude Code on behalf of @t3dotgg.
…aming (pingdotgg#9145)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
juliusmarmingeand others added 23 commits September 1, 2026 19:31
Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: macroscopeapp[bot] <170038800+macroscopeapp[bot]@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…9146)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…dotgg#9075)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…9166)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
Classic-merge pingdotgg/t3code main into fork/dev. 3-way weld of 53
conflicts (never whole-file ours/theirs). Keep fork /new, Grok ACP
grok-4.6, Direnv, dual confirms, hide-settled/recency, worktree-cleanup
confirm, omegent, DPoP, and ForkMigrations. Take upstream citations,
remote Mac updates, Claude Fable/catalog, incremental projection,
Oniguruma highlighter, file/video/PDF viewer, and related client work.
The merge dropped newCommandId / findThreadRef that omegent and ChatView
still call. ProviderRegistry tests need DirenvEnvironment.layerNoop;
orchestration mocks need subscribeDomainEvents and getEventReplayStats;
desktop update tests need an ElectronApp stub.
@github-actionsgithub-actionsBot added the 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. label Sep 2, 2026
Keep fork budgeted listStatus in Sidebar v2. Align steer live-activity
row ids, pass maintainVisibleContentPosition through the LegendList
test mock, and inline the downloaded-update release-notes button so
the toast tests can click it.
`t3 app` tests mock os.homedir so the CLI talks to a fixture socket.
Under the fork's isolate:false server project that mock never applies,
so the CLI connects to the live Linux desktop socket. Run those tests
isolated. Fork kimi is enabled by default, so registry fixtures that
disable every other built-in must disable kimi too, and the default
provider list includes it.
Incoming SettingsRow reads primary-environment availability, which
dereferences catalog.isReady. Under the fork's isolate:false web unit
project useAtomValue can be null before the registry hydrates, so the
search-target markup test crashed. Treat a missing catalog as not ready.
Incoming citation Range fixtures and the sidebar release-notes toast mock
never attach when an earlier web unit file already bound those modules.
Run them in the isolated project like the other vi.mock tests.
@patroza
patroza marked this pull request as ready for review September 2, 2026 06:32
@patroza
patroza merged commit 9e193fc into fork/devSep 2, 2026
9 of 13 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@patroza@StiensWout@Lucenx9@maria-rcks@juliusmarminge@willsheldon@q1@SunkenInTime@extoci@flamboh@t3dotgg@nateEc@LetZico@rcawston@404khai@Bil0000@RakshithBhat03@jakeleventhal@saphid@eimexdev