Skip to content

staging host disk pressure (95%) blocks all provisioning — should the pool autoscale or self-clean? #47

Description

@drewstone

What happened

During a ~70-sandbox benchmark run on 2026-07-05 (~23:00 UTC), staging provisioning collapsed mid-run:

Provision failed — (container) — Provision failed during container phase:
No registered hosts below pressure guard: staging-host-agent-01(disk=95.08%>=95%)

Every subsequent create failed — the run's holdout phase got zero cells (the consuming loop correctly refused to emit a verdict; see tangle-network/supervisor-lab#19 for the run report). We moved the workload to the prod endpoint, which handled ~280 further sandboxes fine.

Questions / asks

  1. Why doesn't the staging pool autoscale? One registered host (staging-host-agent-01) appears to be the entire staging capacity. When it crosses the pressure guard, staging is hard-down for every consumer. Is a second host / autoscaling intentionally out of scope for staging, or just not wired yet?
  2. Is there disk reclamation on the host? Our workloads create sandboxes that pip install ortools (~50 MB each) into per-box venvs and are deleted afterwards. If image layers / overlay dirs / volumes from deleted sandboxes aren't garbage-collected, any sustained benchmark fills the host — 95% may be mostly reclaimable.
  3. Failure UX is good, capacity headroom isn't: the pressure guard failing loud is the right behavior (it saved our experiment from silent corruption). But a single-host staging with no GC means every heavy consumer will hit this.

Context for sizing

That day's load from one benchmark project: ~160 sandboxes on staging (CAD + firmware-style OR workers, each ~1–10 min, opencode backend, pip installs in-box). If that's enough to fill the host, GC or a pressure-triggered scale-out would pay for itself immediately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions