Skip to content

Require --author-backend for reviewer and verifier - #6

Closed
tomastaker wants to merge 2 commits into
test/route-policyfrom
fix/review-author
Closed

Require --author-backend for reviewer and verifier#6
tomastaker wants to merge 2 commits into
test/route-policyfrom
fix/review-author

Conversation

@tomastaker

Copy link
Copy Markdown
Owner

Stacked on #5.

Problem

resolveRoute defaulted the author of a diff to the preset's implementer. A diff the coordinator wrote itself on Claude under auto was therefore attributed to codex, routed to a claude reviewer, and marked independent: true — a same-family review reported as independent. Reproduced with route --role reviewer --parent claude and no flag. SKILL.md §6 showed --author-backend self in square brackets, so the coordinator had no reason to pass it.

Change

  • route and run refuse --role reviewer|verifier without --author-backend claude|codex|self; an explicit --backend on run needs no author, since the family is already named and independence is not computed there.
  • SKILL.md §6, README, roles.md, review.md: the flag is part of the command, self when the coordinator wrote the diff.
  • tests/route.sh: 5 refusal/pass-through checks (48 total).

Checks

route.sh 48/48, caps.sh 43/43, delivery.sh 25/25, node --check, SKILL.md 7977 bytes.

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: 446132b6-80d9-4124-bdd0-9366bdaab805

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-01T22:07:33.134437Z 7037109 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7037109d67

ℹ️ 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".

Comment thread skills/delegate-kit/scripts/agent-run Outdated
Comment on lines +594 to +595
if (["reviewer", "verifier"].includes(role) && !authorGiven && !(opts.backend && opts.backend !== true) && !opts._composed) {
die(`--author-backend claude|codex|self is required for --role ${role}: who wrote the diff decides the family. A delegated implementer → its family; a diff the coordinator wrote itself → self.`);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Preserve the backend when validating a resumed review

When agent-run resume <reviewer-or-verifier-id> --prompt ... is used without redundant routing flags, cmdRun calls resolveRoute before reusing resumeOf.backend, so this condition rejects every such resume for lacking --author-backend. This breaks the documented generic resume workflow for reviewer and verifier sessions; pass the persisted backend into route resolution or exempt resumes from fresh author validation.

Useful? React with 👍 / 👎.

Comment thread skills/delegate-kit/scripts/agent-run Outdated
Comment on lines +594 to +595
if (["reviewer", "verifier"].includes(role) && !authorGiven && !(opts.backend && opts.backend !== true) && !opts._composed) {
die(`--author-backend claude|codex|self is required for --role ${role}: who wrote the diff decides the family. A delegated implementer → its family; a diff the coordinator wrote itself → self.`);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Require the author when routing with an explicit backend

When a caller runs route --role reviewer --parent claude --backend claude without --author-backend, this exemption treats the reviewer backend as a substitute for the author's family, silently defaults the author to the preset implementer (codex under auto), and reports the same-family Claude review as independent. The explicit-backend exemption is intended only for run; enforce the new requirement in route even when --backend is present.

Useful? React with 👍 / 👎.

tomastaker and others added 2 commits September 2, 2026 01:15
Автор молча подставлялся из implementer'а пресета. Diff, написанный самим
координатором на Claude под auto, получал автора codex, ревьюера claude и
пометку independent: true — ревью того же семейства выдавалось за независимое
(воспроизведено через route --role reviewer --parent claude без флага).

Теперь route и run для reviewer и verifier требуют --author-backend
claude|codex|self; при явном --backend на run автор не нужен. SKILL.md §6,
README, roles.md, review.md — команда без квадратных скобок. Тесты: 5 проверок.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ует автора

По ревью PR #6 (Codex P1 ×2): исключение для явного --backend действовало и
на route, где по автору считается independent — теперь только для run;
resume ревьюера/верификатора падал на проверке автора — семейство берётся
из meta прогона. Тесты: 3 проверки, включая resume через заглушку CLI.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@tomastaker
tomastaker deleted the branch test/route-policy September 1, 2026 22:25
@tomastaker tomastaker closed this Sep 1, 2026
@tomastaker
tomastaker deleted the fix/review-author branch September 1, 2026 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant