Repository navigation
chore(chase): port 27 upstream server and provider fixes through fa2f4ff2a2 - #2836
Conversation
…3260) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 1a43f4870d4d27e6514b7485a8742027e2f48b34)
…t failed (#33291) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 2b65ffb641f152fadf443096bad7f4a0677caae4)
Co-authored-by: Julius Marminge <[email protected]> Co-authored-by: Claude Fable 5.1 <[email protected]> Co-authored-by: maria-rcks <[email protected]> (cherry picked from commit 9a3f8db9b39704cd1adb522babda23c21de8e1e4)
…rashpad pipe (#26374) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 12085f0b0c1229198bbcbf47c63135f4931936f6)
…ab (#23589) Co-authored-by: PR Batch Tester <[email protected]> Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 5ae957848a3bac1324213f68dc3e091b23f8a69b)
…707) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 4c361199f47f6ea32a2c14835df392640d0f7c63)
…al (#33535) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 577c524089368176e00b331a8217b642fd6d06a5)
…n (#33628) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 5636b5666d3fb9b2b280dbe8a0c5cb42874f1bcd)
…3721) (cherry picked from commit 0ca73a19f06bc82d729f6d1c1c8903aa22d78868)
…768) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 7171fdd7716b05dc1b4be40c26ac78e8bb35f80c)
OpenCode usage scans materialized complete message bodies and queried empty rowid ranges. Select in-window rowids first and project usage fields in SQLite, keeping message bodies off the JS heap. Read each database in one snapshot and record scan row and page counts. On a read-only snapshot of a 3.32 GB real database, five fresh-process runs measured 2.33x faster 30-day reads and 2.82x faster 90-day reads with identical records. These are cold application-cache measurements; OS caches were not cleared. Local check:changed and CI passed. Adapted SQL projection from pingdotgg/t3code#27679 and window selection/snapshot handling from pingdotgg/t3code#26613. Model and harness: GPT 6.1 Sol through Codex in T3 Code. Co-authored-by: Julius Marminge <[email protected]> Co-authored-by: Tymoteusz Bielski <[email protected]> Co-authored-by: maria-rcks <[email protected]> Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit bbdc7dca320ee4fbc7131498aaffef2fa1eb3d41)
…uest times out (#27677) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit eff45664fae739f0efadaee13acc145ddf0d0b66)
Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit d47591f613a28818d583bd3003f950ccd5060951)
Upstream: d47591f613 (#33677) matched T3's server key; GOAT injects its server as goat. The device parsing moves beside the shared fallback-input parser to keep runtimeModel.ts within its code budget.
…pacity check Upstream: 5ae957848a (#23589) relied on an isVisible helper from upstream's idle-tab capacity change; GOAT's equivalent lives in ServerBrowserCapacity, which now exposes the visibility it already used for idle tabs. The upstream test moves to the capacity test file that owns the shown-tab fixture.
A local-only refresh cached `pr: null` for the current branch, so readers treated the branch as read with no pull request. Leave the remote cache untouched and read the parts instead. Upstream: a22068f3711 (#33263)
A turn end commits several checkpoint and run events at once, and each queued its own branch lookup. Coalesce requests per thread so the batch shares one lookup, while a request that arrives after the lookup starts still queues a later refresh. Upstream: f8fbc199ae1 (#33752)
…o their own modules Upstream: none
…to itself (#33695) GOAT checks the push destination before a commit, push & PR when origin/HEAD is stale, and publishes a branch that tracks the default branch under its own name. Upstream: ad91636f0b48fe41119c888ebe937acb5167f0ee (#33695)
… (#33675) A deleted head branch arrives as refs/pull/<N>/head with the name in label; read it when the repository is known and the pull request is not an AGit topic. Upstream: b37c7f6fa41e36f259ce3b8ae7821e0a3a22793c (#33675)
…24599) A check awaiting approval is no longer a failure. The watch records each approval hold until its workflow run finishes, announces it once, and an unreadable approval list neither passes nor reports missing checks. Upstream: f6a32dbc7f9047cce5e6a83062aa1b8031a03081 (#24599)
Steer server-raised command notices into a running turn whose provider thread has an active goal, so a background result is seen instead of waiting behind the goal run. Other notices keep queueing. Upstream: 4c8eb1dfd5 (#33268) Implemented with deepseek-v4.1-flash-free through OpenCodex.
…s later subagent results (#33469) Co-authored-by: Claude Opus 5.5 <[email protected]> (cherry picked from commit 8d54c8b1a7ab58528ec7fcddb30fdc68a6e68ea0)
Co-authored-by: Claude Opus 5.5 <[email protected]>
(cherry picked from commit e2aa223229e42dd742b6dd05a9fad61775231d88)
Normalize Cursor usage pages as they arrive, retain bounded raw page data, and preserve count-proven boundary deduplication and stable event keys. Use direct hex hashing, limit concurrent account refreshes to two, reuse unchanged cached records, and persist retention pruning. Validation: check:changed passed with 61 focused tests; 40 differential reader cases matched the original output. CI and agentic reviews passed on the merged head. GPT 6.1 Sol via Codex in T3 Code.
…3554) Upstream: 4d9caf14ee (#33554)
…chive (#33325) Gate the remote runner's archive download on the supported release platform keys, so Darwin x86_64 fails before fetching instead of 404ing. Upstream: 56064fc4f6 (#33325)
preview_evaluate's guidance said page tools only read. Say they write on request, and keep results on html_render. Upstream: 0c832589a0 (#26570)
…#33255) A thread id can carry parentheses, and a raw Markdown destination ends at the first one. Labeled links now bracket a destination that holds them, and the parser reads angle-bracketed destinations back. Upstream: cd87cce900 (#33255)
Upstream: 633438d54f (#33239)
Upstream: bcee0f5d2872ba193c66ed9ba979bbe424f89ff9 (#33008)
…ion id allocator Knip flagged five exports only their own modules use, and the delegated-completion module typed the allocator's error channel as unknown.
Cherry-picked upstream tests and helpers grew six budgeted files. Move the new and self-contained tests into focused test files and testkits, move the detach thread-id helper, compaction outcome and MCP elicitation options into neighbouring modules, and narrow the SSH readiness test to the ready case.
…waits Review of #2836 found two ports that removed a bound GOAT keeps on server memory: the ACP command probe now stops at 1,024 distinct commands (up from upstream's old 128), and the OpenCode usage reader pages rowids by keyset instead of listing the whole window. A PR watch also re-announces a workflow approval wait once earlier holds on the same head have settled.
…ion (#33707)" The session grant keyed only on server name and message, so a different app or a changed request schema reused it without a card, and the grant set had no bound. Deferred to #2832 with the review findings. The cycle card now counts 73 ported and 68 deferred.
…roval (#24599)" An approval hold stayed until a finished check for that exact run appeared, so a cancelled or vanished gated run left a hold that never cleared, had no count limit and blocked checks-passed. The re-announce fix built on it goes too. Deferred to #2832; the cycle card now counts 69 ported and 72 deferred.
…ompt Upstream 1a43f4870d changed the prompt a /goal turn starts with; GOAT's computer-use replay still expected the old text, which failed goat-test-server on #2836.
|
Independent review (GOAT backup watch, 2026-11-11 04:11 KST): PASS for head The ported fixes fit GOAT's code. The delegated-completion acceptance was pulled into |
Ports 27 upstream t3code fixes from the 261110 chase (
743bb8cf3d..fa2f4ff2a2) into GOAT's server, providers, SSH runtime and source-control code. Each was cherry-picked with-xor adapted to GOAT's code, with the upstream test carried over. The cycle carddevlog/_chase/10.024_t3_chase_cycle_261110.mdhas the classification.Highlights:
/goalno longer creates the goal twice; detaching a session cancels its pending approval; Claude Fable 5.2, Mythos and Antigravity pricing and model-name fixes; OpenCode command timeouts and bounded usage reads; Cursor account usage scanning; ACP registry commands past 128; OMP device writes use GOAT's MCP server name.visible, using GOAT's tab-capacity visibility check.GOAT-specific changes: OMP device writes resolve the
goatMCP server; new tests and helpers moved into focused files so no file grows past its code budget; knip-flagged exports made module-private.Deferred upstream commits are tracked in #2832, including the Claude MCP session grant (4c361199f4), reverted after review because its grant key ignored the app and request schema and had no bound. The PR-watch approval holds (f6a32dbc7f) were reverted for the same reason: a vanished gated run left a hold that never cleared. Review also bounded two ports: the ACP command probe stops at 1,024 commands and OpenCode usage pages rowids by keyset. Load-sensitive tests found along the way: #2833, #2834.
Validation: focused
vp test runon every touched test file (server, provider-acp, provider-opencode, provider-cursor, ssh, shared, source-control-forgejo/github, agent-surface replay);vp run check:changedpassed rename, format, lint, knip and typecheck (38 packages).NOT RUN: the local
check:changedtest stage (killed twice by GOAT restarts; goat-ci runs it), the full server suite, a real-client pass.Model: anthropic/claude-opus-5-5 coordinating, ports by hyds/deepseek-v4.1-flash-free and gpt-6.1-terra (xhigh) lanes; harness: Codex in GOAT.