fix(kanban): don't let active_pr guard starve ready review handoff cards (t_226a5605) - #25
sycamoregroupltd wants to merge 1 commit into
Conversation
Port of 64a7350 onto origin/main (the fix branch sat on the divergent local main). A review card stranded in the ready lane whose assignee is a fleet *-reviewer profile (e.g. sycode-trading/t_82dae659) is awaiting its reviewer — the open-PR comment is the review handoff artifact, not proof of duplicate work. Such ready-lane review cards are now dispatchable; genuine implementation cards with a worker-owned open PR remain guarded. Regression: sycode-trading/t_82dae659 (REVIEW card, status=ready, assignee=trading-risk-reviewer) was respawn_guarded active_pr every tick 13:30-15:37 despite PR NousResearch#1113 being the review handoff artifact. 3 regression tests added; full respawn_guard suite 27 passed. os-reviewer APPROVE per t_7acac7a4.
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d4f09341a5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if _is_reviewer_profile(assignee): | ||
| return None |
There was a problem hiding this comment.
Require review evidence before bypassing the PR guard
When an implementation task is assigned to any profile ending in -reviewer, this name-only check returns None for its open PR and permits duplicate work, even if the title, body, and PR comment contain no review handoff. Assignees are arbitrary profiles, so the suffix does not establish that the card is a review card; reuse the existing _task_is_review_lane predicate or otherwise require explicit handoff evidence before bypassing active_pr.
AGENTS.md reference: AGENTS.md:L75-L79
Useful? React with 👍 / 👎.
|
Disposition for jarvis-os/t_01ce37f7 (verified 2026-09-09): upstream contribution. This fork PR is being closed as part of the no-fork retirement. Retained artifact: sycamoregroupltd/hermes-agent PR #25, head SHA d4f0934, head land/active-pr-review-guard-t_226a5605, base main. This closure is not upstream acceptance, merge, live deployment, or permission to install a fork. Retain this SHA for fresh reproduction/rebase from current NousResearch/hermes-agent main; no upstream PR was created by this cleanup. |
Parent: t_7acac7a4 (os-reviewer REVIEW_VERDICT=APPROVE, exact_head 64a7350).
Port of the reviewed fix onto origin/main (the original fix branch sat on the divergent local main, 2812 commits ahead of origin/main — not mergeable as-is).
A review card stranded in the ready lane whose assignee is a fleet **-reviewer** profile (e.g. sycode-trading/t_82dae659) is awaiting its reviewer — the open-PR comment is the review handoff artifact, not proof of duplicate in-flight work. Such ready-lane review cards are now dispatchable; genuine implementation cards with a worker-owned open PR remain guarded.
Regression: sycode-trading/t_82dae659 was respawn_guarded active_pr every tick 13:30-15:37 despite PR NousResearch#1113 being the review handoff artifact.
3 regression tests added; full respawn_guard suite (27) passes on origin/main + this commit.
Verification: /tmp/land-check-t226a5605 (worktree on origin/main)