TanStack
OSS
ai
Sign in / Sign up
Open main menu
ai
GitHub
Overview
Runs
Analytics
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
Succeeded
fix/ai-isolate-cloudflare-accumulate-tool-results
a55f78da Merge 5fd3edc793b6f9443093366fedace380e7d2b43b into b2d3cc131a31c54bd1e5841f958fbe333514e508
by Sriket Komali
S
Succeeded
fix/ai-isolate-cloudflare-accumulate-tool-results
02e727cf fix(ai-isolate-cloudflare): accumulate toolResults across rounds The Cloudflare isolate driver wiped toolResults between need_tools rounds. wrap-code uses sequential tc_<idx> ids that are re-derived from scratch every time the Worker re-executes user code, so prior-round results must remain in the cache. With the wipe, multi-tool programs (e.g. `await A(); await B();`) ping-pong between {tc_0} and {tc_1} and exhaust maxToolRounds, surfacing as MaxRoundsExceeded. Single-tool code worked because only one cache entry was ever needed in a given round. Existing tests covered single-round flows only and used ad-hoc tool-call ids rather than wrap-code's real tc_<idx> shape, so the regression slipped through. Adds a tc_<idx>-shaped regression test covering two sequential tool calls. The test fails on the prior implementation and passes after the one-line fix.
by Sriket Komali
S
Succeeded
fix/ai-isolate-cloudflare-accumulate-tool-results
02e727cf Merge ed7240f2c057fc3fed10b2d33f27e38945b9a5a1 into ff338557d9ea54c960617f52c89c488140d60f85
by Sriket Komali
S
Succeeded
fix/ai-isolate-cloudflare-worker-loader
240fc09d Merge 4d4fb1978f0bc69151239adf5ff7842b5855f02b into b2d3cc131a31c54bd1e5841f958fbe333514e508
by Sriket Komali
S
Succeeded
sandbox-open-524
a6384619 fix(ai-isolate-cloudflare): accumulate toolResults across rounds The Cloudflare isolate driver wiped toolResults between need_tools rounds. wrap-code uses sequential tc_<idx> ids that are re-derived from scratch every time the Worker re-executes user code, so prior-round results must remain in the cache. With the wipe, multi-tool programs (e.g. `await A(); await B();`) ping-pong between {tc_0} and {tc_1} and exhaust maxToolRounds, surfacing as MaxRoundsExceeded. Single-tool code worked because only one cache entry was ever needed in a given round. Existing tests covered single-round flows only and used ad-hoc tool-call ids rather than wrap-code's real tc_<idx> shape, so the regression slipped through. Adds a tc_<idx>-shaped regression test covering two sequential tool calls. The test fails on the prior implementation and passes after the one-line fix.
by Sriket Komali
S
Succeeded
sandbox-open-524
a6384619 fix(ai-isolate-cloudflare): accumulate toolResults across rounds The Cloudflare isolate driver wiped toolResults between need_tools rounds. wrap-code uses sequential tc_<idx> ids that are re-derived from scratch every time the Worker re-executes user code, so prior-round results must remain in the cache. With the wipe, multi-tool programs (e.g. `await A(); await B();`) ping-pong between {tc_0} and {tc_1} and exhaust maxToolRounds, surfacing as MaxRoundsExceeded. Single-tool code worked because only one cache entry was ever needed in a given round. Existing tests covered single-round flows only and used ad-hoc tool-call ids rather than wrap-code's real tc_<idx> shape, so the regression slipped through. Adds a tc_<idx>-shaped regression test covering two sequential tool calls. The test fails on the prior implementation and passes after the one-line fix.
by Sriket Komali
S
Failed
sandbox-open-523
9890cf90 fix(ai-isolate-cloudflare): tighten timeout test + happy-path assertions Address CodeRabbit second-pass review: 1. happy-path test: hoist load() argument assertions out of the synchronous mock. Inside load() they get swallowed by the worker's outer try/catch and surface as a generic 500. Capture options into a local + assert after worker.fetch() resolves. 2. timeout test: `expect(receivedSignal).not.toBeNull()` is trivially true per the Fetch spec (Request.signal is always present). Drop it from the happy-path test and instead assert `signal.aborted === true` in the timeout test, which actually proves the outer worker's AbortController fired. 3. worker fix: when the AbortController fires first, fetchPromise rejects before timeoutPromise. Detect the timeout via either TIMEOUT_SENTINEL or `controller.signal.aborted` so the right error surfaces regardless of which branch of the race wins. Tests: 39/39 pass.
by Sriket Komali
S
Succeeded
sandbox-open-523
9890cf90 fix(ai-isolate-cloudflare): tighten timeout test + happy-path assertions Address CodeRabbit second-pass review: 1. happy-path test: hoist load() argument assertions out of the synchronous mock. Inside load() they get swallowed by the worker's outer try/catch and surface as a generic 500. Capture options into a local + assert after worker.fetch() resolves. 2. timeout test: `expect(receivedSignal).not.toBeNull()` is trivially true per the Fetch spec (Request.signal is always present). Drop it from the happy-path test and instead assert `signal.aborted === true` in the timeout test, which actually proves the outer worker's AbortController fired. 3. worker fix: when the AbortController fires first, fetchPromise rejects before timeoutPromise. Detect the timeout via either TIMEOUT_SENTINEL or `controller.signal.aborted` so the right error surfaces regardless of which branch of the race wins. Tests: 39/39 pass.
by Sriket Komali
S
Previous page
Previous
Next
Next page