Repository navigation
Fix portable executor, cancellation, and bounded storage failures - #1010
Merged
Merged
Conversation
ajroetker
marked this pull request as ready for review
October 8, 2026 12:43
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Local unit and E2E runs exposed crashes across independently compiled runtime archives, premature enrichment completion, stalled artifact reprocessing, and queries that confused chunk payload identity with vector presence authority. This follow-up fixes those paths and incorporates the portable pre-existing fixes from #987. It integrates main through
6b92267b7d, retaining its native lake, Lite, BigQuery, and GCS changes.Use the owning imported executor for HTTP batch, SQL, and pgwire dispatch; protect mutation completion and staging cleanup through cancellation. Keep linked error-tracing configuration consistent and preserve committed outcomes across visibility failures.
Fence empty dense activation certificates, compare each producer/index ledger against its own target, and check replay before advancing synchronous enrichment completion. Persist reprocessing intent with its source mutation and publish terminal malformed-PDF coverage before settlement.
Validate exact stored catalog authority, release scan cursors before readiness commits, fix datetime tuple width, and preserve public chunk identities during embedding-presence checks and query fusion.
Validate reader/extractor composition and fallback candidates against media/schema contracts; convert provider deadlines between clock epochs and forward explicit whole-process E2E budgets.
Support typed i32/i64 Metal scatter with duplicates and validated bounds. Keep optional artifact allocation bounded and owned publication independent of mmap.
Share the auth seed key contract between capture and materialization, including persisted user-instance identities. Preserve terminal missing-model policy and make compile-only checks explicit.
Reclaim disposable unit outputs on macOS and Linux. Restore canonical test ownership and source discovery while retaining strict coverage/duplicate audits. Keep cache-admission fixtures on a stable file generation and distinguish replay convergence, active backfill, and asynchronous native validation.
Restore the count-only path for native bitmap queries: stream TTL/cursor visibility through bounded scratch, skip unnecessary sorting, and preserve exact totals and profiling. Initialize the metadata cadence fixture's cluster incarnation through progress-only work before protocol-gated table removal.
Preserve durable native posting coverage when an older replay mutation reaches a dense-vector index, including owned asynchronous capture sessions. Return retryable HTTP 503 for query leadership transitions after restart. Treat unreported standalone replay watermarks as unknown.
Classify malformed model tool arguments as a typed retryable generation failure across both runtime error registries. Query planning and retrieval request corrected arguments within their existing turn budgets, preserving cancellation and unrelated failures.
Treat temporary catalog routing failures as bounded point-read readiness failures and retryable HTTP 503. Hosted recovery waits for exact parent ACK receipts and authoritative document absence through leadership/read-route recovery.
Document local Wasmtime/MemoryAF prerequisites and the bounded request-timeout override for Debug inference E2E.
Validation completed on the merged production changes includes Lite 42/42, search execution 270/270, metadata service 136/136, lake 382 server + 129 local, runtime ABI 4/4, PJRT 25/25, CI policy 89/89, object store 79/79, and source/license boundary checks. These test runs reported no leaks. The final publication fixture fix passes 20 isolated runs plus three complete 87-test owner groups using the full gate's stripped Debug/module flags.
The final complete Debug unit gate on
f9d96d90cdpasses 1,496/1,496 build steps. Strict ownership validates 20,090 named tests, 20,090 selected executions, zero repeats, and no lost coverage. Inference units pass 4,717 with 173 skips; finetuning passes 127 with 10 skips. The observed phase compiler cache peaks at 7.58 GiB and is completely reclaimed afterward (zero remaining files). The final fixes also pass the full 18-test hosted recovery suite, three additional six-case DROP/TRUNCATE repeats, and three deterministic public-read/restore regressions with no leaks.Both final full and standalone Debug executable builds pass (52/52 build steps,
f9d96d90cd). New targeted validation passes HTTP availability 117/117 build steps, five graph restart probes, all five extension regressions, query-builder and retrieval repair regressions, both runtime error registries, and the real Gemma CLI/streamed-retrieval agent case. The fresh complete Antfly Debug E2E suite passes 939 tests, 19 skips, zero failures (40m13s), including all six previous failures. Complete inference Debug E2E passes 203 tests, 48 skips, zero failures (5m24s). The opt-in standalone/worker E2E suite passes 13/13 (1m8s), including the real Gemma agent, pending embeddings, worker isolation, and both executable roles. These complete E2E suites usede33a7d7a9a; the subsequent read-readiness change is covered by the final full unit gate, hosted recovery, and deterministic HTTP suites. Rebuilt finalf9d96d90cdexecutables also pass the restart E2E regression and all 13 standalone/worker cases. Combining complete and opt-in reports yields 1,154 unique E2E passes, 55 skips, zero failures across 1,209 collected cases. Inference uses a 12 GiB process envelope (4 GiB host / 8 GiB backend) and a bounded 120-second request timeout for Debug builds. Extension E2E uses the official macOS Wasmtime v45.0.2 C API library pinned by CI and the locally built MemoryAF WASI artifact.Local macOS Debug qualification is complete. Skips cover unavailable platform/model/live-service cases; opt-in standalone/worker cases were executed separately. No Windows port is included.