Skip to main content

Gitmoot v0.9.7

Reviews run off-box, the queue no longer stalls on cleanup, and the daemon idles. Three months of work since v0.9.6.3: 392 commits, 64 features and 187 fixes. Everything below ran live on the maintainers' fleet before tagging.

What's new since v0.9.6.3​

Reviews can run off-box​

  • Remote reviews on E2B (#2233, #2234, #2241): pick the execution backend per review job with --exec-backend remote. The OMP review template is versioned and sizing is configurable. There is a hard compute-dollar cap that reserves budget before provisioning (#1540), and model credentials come from the keychain, never from the sandbox (#1538, #2158).
  • Capacity-blocked reviews move to E2B automatically, with a review-only threshold and alerts to the agent (#2372).
  • Private evidence (#2476): bounded, hash-pinned files are synced into remote reviews, and pinned evidence the reviewer never opened is flagged (#2483).

Reviews are easier to trust and reuse​

  • Unified review router (#2171): exact-head dedup, OMP model pools, and a wake for the requester when the verdict lands.
  • Delta reviews (#2177) start from the last terminal verdict at an ancestor head. --supersede (#2515) re-reviews a whole head again.
  • No-execution review mode (#2364): a review that may not run code takes exact-head CI evidence in place of the checks it cannot run.
  • Findings ledger (#1822, #1969, #1970): findings are kept per finding id and head and reported per repo. A dead review's findings are salvaged instead of lost (#2224).
  • Merge gate: it blocks on P1 and P2 and reports P3 (#2102). Blocking severity can be set per repo (#1693). gitmoot can say what the gate still demands at a head (#2097). Optional per-repo low-risk auto-merge is gated on the exact-head review level (#2343).
  • CI-verified checks (#2520): a check the review environment cannot run (for example Xcode) is satisfied by green exact-head CI that the reviewer verifies itself.
  • Related PRs (#2509): review request --related-pr N gives the reviewer a read-only copy of a sibling PR's pinned head from the same repo.

The queue no longer stalls on cleanup​

  • Worktree cleanup on slow or network storage no longer holds up job starts (#2518, #2519, #2521). Reclaim runs on its own loop beside dispatch (#2517).
  • A worktree is moved aside under the cleanup fence and its files are deleted afterwards, so one deletion no longer pauses every repo (#2524).
  • Refused cleanups are no longer re-captured over and over (#2525). Obligations of unregistered or renamed repos are reclaimed (#2531).
  • Live effect on the maintainers' fleet: review start wait went from 8–36 min to about 1 min.
  • Worktree root is configurable, with a mount preflight (#2375). The review free-space floor is configurable too (#2513).

The daemon idles​

  • Review payloads are decoded once per poll and scoped to the polled repo; the archived-seat directive park uses its indexes (#2530).
  • Host-wide housekeeping runs once per tick instead of once per enabled repo.
  • SQLite WAL growth is bounded (#2384), and idle staged runtime copies are collected (#2382).
  • Live effect: daemon CPU went from about 1.0 to 0.35 cores with 89 enabled repos.

Operating the fleet​

  • gitmoot daemon drain (#1207) lets a busy fleet reach an idle window for restarts.
  • Org seats: wakes on review verdicts by default (#2162); sibling messaging and PR-collision warnings (#1692); seat rm --force and --no-checkout (#1813, #2507); org await withdraw (#2484); archived-seat ingestion and directive parking (#1635); owner wakes delivered as Herdr Grams (#2345).
  • Diagnostics: why a queued job was declined (#2118), why a headless review was skipped (#2008), interrupt rate per seat (#1983), merged PRs with unresolved obligations (#1971), and where a review's wall time goes (#1824).

Known open work​

The review and merge-integrity tracking issues #1300, #1971 and #2085 are still open. This release improves that area but does not close it.

macOS​

macOS builds ship again (they had failed to build since September; #2537). Runtime staging for read-only seats stays Linux-only: on macOS it fails closed, as before.

Upgrading​

gitmoot update on a released build, curl -fsSL https://gitmoot.io/install.sh | sh, or download gitmoot_<os>_<arch> from the release assets (sha256sums included). The daemon applies new schema migrations at startup; no manual step is needed.