Skip to content

v1.4.1 — Relay: register and verify the watcher, never merely offer it

Choose a tag to compare

@asiridalugoda asiridalugoda released this 09 Aug 22:19
· 6 commits to main since this release

Hardening from the first real worker-node run: the node joined and worked interactively, but no Task Scheduler entry was ever registered — so when the baton flipped, nothing on that box would notice until a human opened a session. "Watching" that exists only inside a session dies with the session.

The fix applies the base loop's own rule — describing a wake-up isn't setting one — to Relay's join flow:

  • Joining now ends with the OS-scheduler backstop registered and verified: schtasks /Query /TN "relay-<repo>" (Windows) / launchctl list | grep relay-<repo> (macOS) must succeed before the node counts as joined.
  • Explicit opt-out instead of silent absence: if the user wants no unattended execution on a box (e.g. a TASK is on hold), the node table records none (declined) — so the controller knows a TASK sent there waits for a live session.
  • New "silent node" failure drill in references/relay-scenarios.md documenting the observed failure and correct behavior.