Skip to content

mount daemon can miss notify-flush SIGUSR1 acknowledgement in clean RelayFlow sandbox #497

Description

@khaliqgant

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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