Summary
A clean hosted Relay PR proof observed the Relayfile mount daemon fail its notify-flush handshake and required the bootstrap stop-and-once fallback.
Evidence
Relay run: https://github.com/AgentWorkforce/relay/actions/runs/34559393148
The clean Daytona prove-base step seeded Relayfile successfully, started the mount daemon, and propagated its output. Bootstrap then reported:
notify-flush failed, falling back to stop-and-once
with:
failed to start poll mount: notify flush: timed out waiting for daemon pid 902 to ack SIGUSR1 (last seq 0)
The fallback recovered and the base feature arm passed, so this was not the terminal cause of the run. It is nevertheless a real daemon synchronization failure in a clean environment.
Expected
- A live mount daemon acknowledges notify-flush within its documented bound.
- Signal/sequence races at daemon startup cannot lose the first flush request.
- If the daemon is not ready, the client reports a typed readiness state and retries safely rather than timing out an apparently live PID.
Acceptance proof
Add a deterministic startup-race regression plus repeated clean-sandbox proof covering seed, daemon start, immediate notify flush, propagation, and teardown. Require zero fallback activations across the stated repetitions and preserve the existing stop-and-once recovery path for genuine daemon failure.
Summary
A clean hosted Relay PR proof observed the Relayfile mount daemon fail its notify-flush handshake and required the bootstrap stop-and-once fallback.
Evidence
Relay run: https://github.com/AgentWorkforce/relay/actions/runs/34559393148
The clean Daytona prove-base step seeded Relayfile successfully, started the mount daemon, and propagated its output. Bootstrap then reported:
notify-flush failed, falling back to stop-and-oncewith:
failed to start poll mount: notify flush: timed out waiting for daemon pid 902 to ack SIGUSR1 (last seq 0)The fallback recovered and the base feature arm passed, so this was not the terminal cause of the run. It is nevertheless a real daemon synchronization failure in a clean environment.
Expected
Acceptance proof
Add a deterministic startup-race regression plus repeated clean-sandbox proof covering seed, daemon start, immediate notify flush, propagation, and teardown. Require zero fallback activations across the stated repetitions and preserve the existing stop-and-once recovery path for genuine daemon failure.