Skip to main content

Gitmoot v0.3.5-beta.1

Gitmoot v0.3.5-beta.1 hardens the delegation termination model so coordinator trees always end in a clean synthesis, adds built-in coordinator recipes, and makes the daemon and dashboard work from any directory. Pre-release built from main.

Highlights

Bounded delegation, graceful finish

  • Every termination backstop — depth (MaxDelegationDepth = 8), per-root job budget (MaxDelegationTotalJobs = 64), per-coordinator width (MaxDelegationWidth = 16), the new per-root wall-clock budget (MaxDelegationWallClock = 2h), and windowed loop detection — now ends with a graceful finalize continuation: the coordinator is asked once to synthesize a best-effort final result and return empty delegations, instead of the delegated work being dropped silently. Events: delegation_finalize_enqueued on a trip, delegation_finalized when a finalize continuation's own delegations are ignored.
  • The new wall-clock backstop bounds an expensive-but-not-numerous tree (slow agents, long per-job work) that the shape-based caps can't catch; trips emit delegation_walltime_exceeded.

Coordinator recipes

  • Two built-in coordinator templates: review-panel (fan a PR out to a diverse-lens panel of ephemeral reviewers) and decompose-and-verify (split a task into parallel implement legs plus a verify gate). Run them with gitmoot orchestrate review-panel "..." / gitmoot orchestrate decompose-and-verify "...".

Delegation scheduling & validation

  • Read-only fan-out (ask/review children) now runs in parallel detached worktrees instead of serializing on the shared checkout; a read-only verify gate that deps on implement legs runs in a detached worktree with those legs' branches merged in, so it sees their combined work.
  • Delegation validation errors are now positional and aggregateddelegations[<index>] (id "<id>"): <field> is required, with every offending field reported together and fixed in a single repair retry.

Works from anywhere

  • gitmoot daemon start --repo owner/repo resolves the repo's registered checkout, so it runs from any directory (origin protection preserved) instead of requiring the current directory to be the matching checkout.
  • The dashboard Health page splits into global checks (binaries, auth — rendered once) and per-repo checks (run against each registered repo's checkout), so gitmoot dashboard works from any directory instead of showing spurious "not a git repository" failures. A repo with no checkout reports "no checkout" rather than failing.

Validation

  • go build / go vet / go test ./... and the -race workflow suite are green; each feature was validated end-to-end on a live Codex session.

Install / update

gitmoot update # existing installs
curl -fsSL https://gitmoot.io/install.sh | sh # fresh install

Assets: gitmoot_linux_amd64, gitmoot_darwin_amd64, gitmoot_darwin_arm64, sha256sums.txt.