v0.19.1
Fixes the daemon warm-up stampede on large buses (#144, #145):
- The daemon binds its socket before warming its mirror — clients connect immediately instead of spawning duplicate daemons for the entire warm-up window.
- Git-backed buses warm in one round trip (new
Snapshottablebackend capability: one fetch +ls-tree+cat-file --batch) instead of one network fetch per key. - Backends without snapshot support no longer prefetch bodies during polls — the github:// warm drops from ~1 REST call per key to a single list call.
- Clients only remove a daemon's socket when its process is actually dead, so a transient connect error can no longer orphan a live daemon.
GitBackendfetches are serialized per instance and retried on ref-lock collisions — previously a collision between the poll, the outbox flusher, and a client op madeinboxsilently return empty.
Upgrade: npm install -g @yonidavidson/agentcomm@latest