Repository navigation
fix: refuse resource operations in bounded composites - #3910
Conversation
|
Size Report
Startup median (7 runs, lower is better):
|
|
Linux Smoke failed before test execution: the “Install Linux desktop dependencies” step timed out after six minutes while running apt-get update/install. All later smoke execution steps were skipped. Failed job and logs. This is a setup failure, not a smoke assertion. Source remains |
|
Verified actual head Exact-head CI evidence and retry step results. The original timed-out attempt remains historical. Source is unchanged; no further retry, merge, approval, or label action was taken. Stacked #3911 is also green at |
|
Thanks for this. At 56c0f47 I found one problem that should be fixed before merge: a bounded nested Take a batch step Not blocking, and you can take or leave these: CI is green, with 19 checks passing at 56c0f47. The one earlier Linux smoke failure was the apt-get dependency step timing out before any test ran, which does not overlap this diff, and the targeted retry passed. There are no conflicts. I did not run the affected gate or the unit tests, and the 831-file / 6,458-test receipt is yours. I read the live Android evidence in your report but did not reproduce it. I also did not run a retries>0 nested test, so the repeated attempts come from reading the code. The logs and audio owner branches have unit coverage only, with no iOS or provider-device run. Once retries stop after a refusal and the regression test is in, I expect this to be ready to merge. |
|
I’m addressing the retry finding at the test-attempt owner, with a routed regression that counts attempts and prefix dispatches. The intended correction is to make a typed bounded-resource refusal terminal without removing legitimate retries for unrelated failures or changing direct unbounded tests. I’ll preserve the current heads/receipts as historical and validate/review the corrected head before pushing. |
|
Fixed on The routed, test-only negative on unchanged The intervening c080 gate failed on a provider fixture whose unscripted Android IME read depended on the helper artifact. The one-line a6fd test setup isolates that deadline scenario from IME activation; its four tests and the exact final gate passed. The failed receipt remains in the evidence ledger. Android source/helper |
|
The a6fd Linux smoke attempt failed before tests ran: job 119976543593 again hit the six-minute “Install Linux desktop dependencies” timeout. All smoke execution steps were skipped. This matches the initial setup failure on 56c0; its one targeted retry passed, but that historical result does not clear a6fd. I am treating the recurrence as an infrastructure finding and having the existing owner diagnose the workflow and successful/failed setup evidence. The quiet apt log does not establish whether update or install stalled, or whether the cause is networking or a lock. No further unchanged rerun, timeout increase, test suppression, or runtime-source change has been made. b920 update (2026-10-22): Published workflow-only diagnostics at |
|
Thanks for the update. I reviewed a6fd20a and found no remaining code problems; the findings from the earlier review at 56c0f47 (#3910 (comment)) are now fixed. The only red check is Smoke Tests, which timed out in the For evidence: I did not run the routed regression myself. I confirmed from reading the old |
|
This PR is ready at b920c23. The earlier review of a6fd20a still stands, and I did not re-review the product diff beyond it. The new change only adds apt logging to the Linux workflow and drops Not blocking: the apt diagnostics in .github/workflows/linux.yml share no code with the bounded-composite fix, so you can land them as a separate ci PR or leave them here and say so in the PR body. You can take or leave this. |
|
Exact published b920c23 now has all 19 checks completed: 17 success, one skipped and one neutral. Coverage, Integration, repository guards and Android/Apple/Linux smoke succeeded. Linux dependency installation and both smoke evidence steps ran successfully on this head. Raw exact-head CI and Linux step evidence. The older 56c0/a6fd setup timeouts remain failed historical evidence; this successful run does not establish the earlier APT stall cause. Corrected #3911 integration/live verification and full #3325 acceptance remain pending. |
* origin/main: fix(android): bound the dumpsys reads behind dialog and foreground checks (#3936) feat(android): detect Fire OS devices as Android TV targets and document Fire TV support (#3923) docs(macos): document Electron/Chromium app automation through the accessibility tree (#3932) test(capture-kit): encode solid test PNGs unfiltered to stay inside the unit budget (#3933) fix: guard bounded lifecycle and claim recovery (#3911) fix(ios): clear a long text value wherever the caret lands (#3908) fix(snapshot): stop iOS 27 floating-bar containers from covering content (#3912) ci: cache and bound the Linux desktop dependency install (#3919) fix: refuse resource operations in bounded composites (#3910) refactor(ios): decide bridge-failure scope and warning once (#3914) refactor(capture-kit): encode post-gesture stabilization baseline provenance (#3915) perf: expect the persistent session on Android snapshot-raw (#3913) test(ios): hold the fill read-count pin to the route it measures (#3909) perf(ios): admit tap text-input probes from fresh target evidence (#3881) feat(perf): time every Android command against the fixture app (#3902) chore: mark 0.21.31 as released
Summary
Bounded batch/replay refuses resource operations before step effects. Nested typed refusal stops CLI and manifest retries after one attempt; ordinary resource-free failures still retry. Earlier progress and replay repair/resume remain. Ref #3325; dependent #3911 still requires its own integration and validation.
Exact head
b920c2333b03031d3221a120b1040a6d9de9f8e2: 33 files, 1,923 gross lines from base. Its only change from a6fd is Linux apt setup diagnostics: ordinary output and UTC update/install stage markers. The six-minute limit, apt options, packages and failure exits remain. This identifies a future stalled phase; it is not a proven repair.Validation
Exact clean b920 affected gate
run-1vTiRzpassed 834 related files/6,474 tests; fresh full Sol and Claude Sonnet workflow reviews found no findings. Runtime is byte-identical to a6fd. The a6fd exact gate, full reviews and Android live one-attempt/journaled-home/IME cleanup proof retain a6fd attribution; journal counts are not universal native-call counts.The 56c0 and a6fd Linux apt setup attempts failed before smoke execution. One targeted 56c0 retry passed only 56c0. b920 CI completed: 17 success, one skipped, one neutral, including Coverage, Integration and all three platform smokes. SHA-attributed evidence. No merge or full #3325 completion claim.