From 7c21ca0d6fce01c4f80a06bd44790327f254c6e1 Mon Sep 17 00:00:00 2001 From: CleverThis Date: Sun, 26 Apr 2026 13:01:44 +0000 Subject: [PATCH 1/5] docs(agents): sync pr-merge-pool-supervisor merge criteria with runtime behaviour Add Ten Merge Criteria section to pr-merge-pool-supervisor.md documenting all 10 criteria the supervisor checks at runtime. Previously only 6 criteria were documented, creating inconsistency with actual runtime behaviour. Also update CHANGELOG.md and CONTRIBUTORS.md. Closes #8107 # Conflicts: # CONTRIBUTORS.md --- .opencode/agents/pr-merge-pool-supervisor.md | 15 +++++++++++++++ CHANGELOG.md | 8 ++++++++ CONTRIBUTORS.md | 1 + 3 files changed, 24 insertions(+) diff --git a/.opencode/agents/pr-merge-pool-supervisor.md b/.opencode/agents/pr-merge-pool-supervisor.md index 97a1c2547..a4def6ed5 100644 --- a/.opencode/agents/pr-merge-pool-supervisor.md +++ b/.opencode/agents/pr-merge-pool-supervisor.md @@ -105,6 +105,21 @@ At startup, and then approximately every 10 minutes there after (the update inte Also anytime the status ticket is updated you should consider if you have anything important to announce to other agents, such as any state that blocks your operation that you cant resolve yourself. You should also consider reviewing all your past announcements and closing any of them that no longer apply. You can do this by calling `automation-tracking-manager` subagent, specifically operations: `REVIEW_OWN_ANNOUNCEMENTS`, `CLOSE_ANNOUNCEMENT_ISSUE`, and `CREATE_ANNOUNCEMENT_ISSUE`. +## Ten Merge Criteria + +Before merging any PR, verify ALL of these criteria are met: + +1. **Approval** — at least one approving review with no unresolved `REQUEST_CHANGES` +2. **CI passing** — all workflow runs on the latest commit (HEAD SHA) are successful +3. **No conflicts** — the PR has no merge conflicts (`mergeable: true`) +4. **Not stale** — `merge_base` equals `base.sha` (branch is up to date with the base branch) +5. **No `needs feedback` label** — the PR is not waiting for human input +6. **Not blocked** — no `Blocked` label on the PR +7. **Has milestone** — PR is assigned to a milestone +8. **Has Type/ label** — PR has at least one `Type/` label (e.g., `Type/Feature`, `Type/Bug`, `Type/Task`) +9. **Has Closes reference** — PR body contains `Closes #N` linking to the originating issue +10. **Changelog updated** — `CHANGELOG.md` has been updated with an entry describing the change + ## **CRITICAL** Rules 1. **Pass credentials down.** Every worker prompt must include repository info, Forgejo PAT, and git identity. Workers never read environment variables. diff --git a/CHANGELOG.md b/CHANGELOG.md index 68716a54f..f61667fbc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -226,6 +226,14 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ### Changed +- **PR Merge Supervisor Criteria Documentation** (#8107): Updated `pr-merge-pool-supervisor.md` to + explicitly document all ten merge criteria that the supervisor applies at runtime. Replaces the + implicit six-criteria description with a dedicated "Ten Merge Criteria" section listing all + requirements: approval, CI passing, no conflicts, not stale, no `needs feedback` label, not + blocked, has milestone, has `Type/` label, has `Closes` reference, and changelog updated. + Eliminates the inconsistency between the agent definition and actual runtime behaviour. + + - **Decision Tree Full ULID Display** (#5825): The `agents plan tree` command now displays full 26-character ULIDs for all decisions instead of truncating them to 8 characters. This enables users to copy decision IDs directly from tree output diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 9955cddc0..eba36f3bd 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -26,4 +26,5 @@ Below are some of the specific details of various contributions. * HAL 9000 has contributed automated bug fixes, CLI output formatting improvements, and ongoing maintenance as part of the CleverAgents automation system. * HAL 9000 has contributed the file edit encoding parameter fix (PR #8258 / issue #7559). * HAL 9000 has contributed the architecture-pool-supervisor milestone assignment feature (PR #8188 / issue #7521): added `forgejo_update_pull_request` permission and documented the PR workflow for major spec changes, enabling automatic milestone assignment for specification PRs. +* HAL 9000 has contributed the pr-merge-pool-supervisor documentation sync (#8107): updated the agent definition to explicitly list all ten merge criteria that the supervisor applies at runtime, eliminating the inconsistency between the documented six criteria and the actual ten criteria checked. * HAL 9000 has contributed the resource_dag.robot SQLite pool and cycle detection fix (PR #1228 / issue #1226): updated all three test cases to use StaticPool-based SQLite connections and improved cycle detection test coverage with distinct resource types. -- 2.52.0 From d6f439586936349c972a885f9518a5ee77bac104 Mon Sep 17 00:00:00 2001 From: CleverThis Date: Wed, 22 Apr 2026 21:13:58 +0000 Subject: [PATCH 2/5] docs(agents): remove extraneous blank line in CHANGELOG entry Clean up double blank line in the CHANGELOG.md entry for the PR merge supervisor criteria documentation (#8107). ISSUES CLOSED: #8107 --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f61667fbc..eaf3bd485 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -233,7 +233,6 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). blocked, has milestone, has `Type/` label, has `Closes` reference, and changelog updated. Eliminates the inconsistency between the agent definition and actual runtime behaviour. - - **Decision Tree Full ULID Display** (#5825): The `agents plan tree` command now displays full 26-character ULIDs for all decisions instead of truncating them to 8 characters. This enables users to copy decision IDs directly from tree output -- 2.52.0 From da214b101defc5bc20ef8314f91331e5d528cb9f Mon Sep 17 00:00:00 2001 From: CleverThis Date: Thu, 23 Apr 2026 08:22:11 +0000 Subject: [PATCH 3/5] ci: retrigger CI pipeline Retrigger CI to resolve transient docker build failure. All code quality gates (lint, typecheck, unit_tests, integration_tests, coverage) pass. The docker failure is a CI infrastructure issue unrelated to this documentation-only PR. -- 2.52.0 From 4c88458519392e9d5a74dd76e1be2b142174db79 Mon Sep 17 00:00:00 2001 From: CleverThis Date: Thu, 23 Apr 2026 20:02:20 +0000 Subject: [PATCH 4/5] ci: retrigger CI pipeline -- 2.52.0 From 9f583fffeb961ac513c46e3dfeaca8fca0ac0505 Mon Sep 17 00:00:00 2001 From: CleverThis Date: Fri, 24 Apr 2026 01:53:42 +0000 Subject: [PATCH 5/5] ci: retrigger CI pipeline -- 2.52.0