v0.4.3: async claims, and the queue plays fair
The coordination release: claims you can wait on, queue for, and scope your commits by.
Added
- Async claims:
quilt claim <target> --queue(MCPqueue: true). Denied by a holder? Register interest, return immediately, keep working. You are auto-granted the target when it frees, and the grant surfaces at your nextstatus,get_status, orclaimretry as "granted while you waited". FIFO, self-healing, no daemon.quilt fleetshows the queue, and holders see who is waiting behind them. quilt claim <target> --wait [seconds](MCPwait): block until denied targets free up (holder releases, commits, or their lease lapses). Validated eagerly: a swallowed path argument is a loud error, never a silent partial claim.quilt commit --mine [paths...]andpreview --mine [paths...](MCPpaths): a hard allow-list. Name files or directory prefixes and nothing else rides into the commit.- The contested-tree orphan gate: when another actor holds a live claim, a new untracked file you never claimed or edited is left out loudly (
skippedUnowned) instead of swept in by inference. Solo trees are exempt. Forward symbol claims (--creating) and captured edits count as ownership. - Global
--as <id>: per-command actor identity, the ergonomic form ofQUILT_ACTOR=<id>.
Fixed
- The queue outranks a walk-up claim on a just-lapsed lease: "you're next" means next.
- No queue-jumping across mixed granularity: an earlier blocked whole-file waiter reserves its target.
- Holding a narrower claim (a symbol) no longer silently voids your queued interest in the wider one (the whole file).
- Queued grants live at least the full interest window;
releasecancels your own queued interest; grant announcements can no longer be lost to a timing race.
Install: npm install -g @quilt-dev/cli
Full changelog: https://github.com/wkoverfield/quilt/blob/main/CHANGELOG.md