Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 22 Jul 19:37
· 97 commits to main since this release
ddf6ac0

⚠️ Breaking change

claim_files's MCP response field granted has been renamed to accepted, and a new has_conflicts boolean was added alongside the existing conflicts array (#52). This is public MCP wire surface, not just an internal Rust API -- any external tool or agent integration that parses the old granted field needs to update to accepted. The rename exists because granted: true was actively misleading given leases are advisory, not exclusive: a caller reading {granted: true, conflicts: [...]} was very likely to assume it held the file exclusively, when the claim was recorded either way.

Highlights

  • pact coord-status — a new subcommand that surfaces the coordination layer's current state (every active lease, per-agent pending message counts) instead of it being a black box.
  • spawn-many --agent — a default agent for tasks without an explicit <agent>: prefix, fixing the inconsistency between spawn and spawn-many's CLI surfaces.
  • merge-all --union safety check — rejects a union merge that would silently produce broken JS/TS (duplicate module.exports/export default, redeclared bindings) instead of reporting false success.
  • PidLock PID-reuse fix — a lock holder's PID being recycled by an unrelated process after it died no longer makes an abandoned lock look permanently held.
  • UTF-8 BOM handling — package.json merges and workspace meta files now tolerate (and, for package.json, preserve) a leading BOM, a common default from PowerShell's Out-File/Set-Content -Encoding utf8.
  • Streamed output is much quieter by default — Copilot's noisiest event types (tool-call deltas, background task changes, skills-loaded events) are suppressed unless --verbose is passed.
  • A rolling edge prerelease (rebuilt on every push to main) is also available for testing unreleased work between tags: https://github.com/zekariasasaminew/pact/releases/tag/edge

What's Changed

Full Changelog: v0.2.0...v0.3.0