From f52619d3739c66ebe4103cfbbb99adf9a881dd1a Mon Sep 17 00:00:00 2001 From: Roberto Cano <3525807+robercano@users.noreply.github.com> Date: Wed, 15 Jul 2026 18:05:43 +0200 Subject: [PATCH] =?UTF-8?q?release(orchestrator):=20bump=200.2.0=20?= =?UTF-8?q?=E2=86=92=200.2.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Covers everything merged to main since the 0.2.0 cut (2c60477/#110): the driver one-shot contract (post-exit verify + debris cleanup, #111/#118), worker worktree/branch auto-cleanup with an origin-ancestry merged-ness check (#91/#112, 933f202), arm-loop.sh/claude-rc.service managed-template bumps to v5 (fd81eeb), cockpit live-progress grouped by task (#92, #101/#94), and daemon hardening + docs (#106/#107, #117/#119). Co-Authored-By: Claude Sonnet 5 --- .claude/.claude-plugin/CHANGELOG.md | 37 +++++++++++++++++++++++++ .claude/.claude-plugin/marketplace.json | 4 +-- .claude/.claude-plugin/plugin.json | 2 +- 3 files changed, 40 insertions(+), 3 deletions(-) diff --git a/.claude/.claude-plugin/CHANGELOG.md b/.claude/.claude-plugin/CHANGELOG.md index 6c5c7d3..0c1ffb4 100644 --- a/.claude/.claude-plugin/CHANGELOG.md +++ b/.claude/.claude-plugin/CHANGELOG.md @@ -4,6 +4,43 @@ All notable changes to the `orchestrator` plugin are documented in this file. Fo [Keep a Changelog](https://keepachangelog.com/en/1.0.0/); versions track `plugin.json` / `marketplace.json`. +## [0.2.1] - 2026-07-15 + +Everything shipped since 0.2.0. Headline: the driver now enforces a one-shot contract (no turn +ends before a PR exists, with post-exit verification and debris cleanup), worker worktrees and +branches auto-clean themselves after merge, and the cockpit groups live progress by task. + +### Added +- **Cockpit live-progress grouping by task** (issue #92, PRs #101/#94): groups worker progress by + task with issue/PR links and sortable columns. +- **Worker worktree + branch auto-cleanup after merge** (PRs #112/#91): once a worker's PR merges, + its worktree and branch are cleaned up automatically. + +### Changed +- **`arm-loop.sh` → v5** (`fd81eeb`): explicit `--spawn` flag, defaulting to `same-dir`; fixes + remote-control blocking on its interactive first-run question inside a detached tmux pane. + `claude-rc.service` → v5 in lockstep, consuming the new `--spawn` mode. + +### Fixed +- **Driver one-shot contract** (commit `d37e951`, PRs #111/#118): driver orchestration is + foreground-only — the driver's turn does not end before a PR exists — with post-exit + verification and a debris classifier that cleans up stray branches/worktrees on failure. +- **Merged-ness check before worktree cleanup** (`933f202`): auto-cleanup now checks + origin-ancestry before deleting a worker's worktree/branch, closing a gap where a locally-merged + but not-yet-pushed branch could be deleted prematurely. +- **Daemon hardening + docs** (issues #106/#107, PRs #117/#119): daemon test scenarios 1/2 made + deterministic under claude-less CI; resolved node/claude `PATH` baked into `pr-loop.service`; + new WSL2 unattended-autostart docs and driver-death / classify-then-recover unwedge docs. + +### Notes for downstream installs +- Run `/orchestrator:sync` after upgrading to 0.2.1 to pick up the managed-template bumps above — + in particular `arm-loop.sh` v5 and `claude-rc.service` v5. Sync reconciles each file + independently by its own `@orchestrator-managed vN` marker — it does not key off this + plugin version number, so a same-version reinstall is always a no-op and a behind-version + install restamps cleanly as long as the local file has no hand-edits. +- After syncing, re-arm the loop (`arm-loop.sh`) and restart `claude-rc` so the v5 templates take + effect. + ## [0.2.0] - 2026-07-10 Everything shipped since 0.1.4. Headline: a cron-less loop daemon replaces the cron-based diff --git a/.claude/.claude-plugin/marketplace.json b/.claude/.claude-plugin/marketplace.json index 0bc9728..d8674e3 100644 --- a/.claude/.claude-plugin/marketplace.json +++ b/.claude/.claude-plugin/marketplace.json @@ -4,13 +4,13 @@ "name": "Roberto Cano" }, "description": "reCode: multi-agent orchestration harness — fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", - "version": "0.2.0", + "version": "0.2.1", "plugins": [ { "name": "orchestrator", "source": "./", "description": "reCode: multi-agent orchestration harness — fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", - "version": "0.2.0", + "version": "0.2.1", "author": { "name": "Roberto Cano" } diff --git a/.claude/.claude-plugin/plugin.json b/.claude/.claude-plugin/plugin.json index 247c019..e9d36c4 100644 --- a/.claude/.claude-plugin/plugin.json +++ b/.claude/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "orchestrator", - "version": "0.2.0", + "version": "0.2.1", "description": "reCode: multi-agent orchestration harness — fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", "author": { "name": "Roberto Cano" }, "commands": [