Skip to content

build(gcp): survive a killed poller + --collect recovery#44

Merged
mdheller merged 3 commits into
mainfrom
gcp-build-resilient
Jun 22, 2026
Merged

build(gcp): survive a killed poller + --collect recovery#44
mdheller merged 3 commits into
mainfrom
gcp-build-resilient

Conversation

@mdheller

Copy link
Copy Markdown
Contributor

Teardown only fires on genuine completion; a mid-build kill leaves the VM to finish + auto-delete, recoverable via --collect. Fixes the recurring build-vanished bug.

mdheller added 3 commits June 21, 2026 14:02
Recurring 'build vanished' root cause: when the Mac sleeps, the harness kills
the orchestrator, whose teardown trap then DELETED the still-building VM —
defeating the autonomous GCS design. Fix:

- teardown only deletes the VM on genuine completion (build_done set after the
  GCS DONE marker is seen). On a mid-build kill it LEAVES the VM up — it
  finishes on its own, pushes results to GCS, and GCP auto-deletes it at
  --max-run-duration.
- add '--collect <instance>' to recover artifacts + delete a leftover VM whose
  poller died.
- lower max-run-duration cap 5h -> 3h (both profiles finish ~90 min; bounds
  worst-case cost if the poller dies).
The human-secure binary built fine but the scorecard came back empty —
geckodriver couldn't launch it because mach bootstrap installs BUILD deps, not
RUNTIME libs. Install libgtk-3/dbus-glib/xt/asound/x11-xcb/pci once before
measuring (t64 names with non-t64 fallback for older Ubuntu).
tor-mode build failed: gfxUserFontSet.cpp can't find StaticPrefs_bearbrowser.h.
Root cause: the canonical bearbrowser.* StaticPrefList block was only inserted
when bearbrowser.webgl.prompt was ALREADY in the YAML (seeded by an earlier
patch on 150). On 140 ESR that pref isn't pre-seeded, so the block was skipped
-> no bearbrowser.* pref group -> header never generated. Gate insertion on the
bidi.* anchor instead; the existing-section strip dedupes the 150 case.
@mdheller mdheller merged commit 42be2b6 into main Jun 22, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant