Repository navigation
Conversation
… no peer artifact returns Adds cross_model_require_peer (env CROSS_MODEL_REQUIRE_PEER, default false) for ce-doc-review and ce-code-review. When true, the cross-model workers exit 3 with an error naming the lens and reason if no different-provider peer returned an artifact, instead of skipping with exit 0.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Thanks for putting this together, and for the tests and docs. I'm going to close it, though, because I don't think a worker exit code is the right layer for this. A few things I found when I traced it through:
If you have automation that needs a hard gate on the peer actually running, reading the review's peer outcome is the better hook. If |
Closes #1855
Summary
Problem: the cross-model passes in
ce-doc-reviewandce-code-revieware non-blocking by design. If no different-provider peer is reachable, or the peer returns nothing usable, the worker logs a skip and exits 0. The review then looks complete when only one model family actually ran.This adds an opt-in key,
cross_model_require_peer(defaultfalse), mapped toCROSS_MODEL_REQUIRE_PEERon the worker'senvprefix like the othercross_model_*keys. Whentrue, a pass that publishes no artifact fails: the worker exits 3 and logsDefault behavior is unchanged: unset or any value other than
truekeeps the non-blocking skip.cross_model_review_mode: offstays an explicit opt-out and is not an error. The--emit-adapterandCROSS_MODEL_DRY_RUNdiagnostics are unaffected.Changes
cross-model-doc-review.sh,cross-model-adversarial-review.sh: EXIT-trap check that turns an otherwise clean exit with no published artifact into exit 3 when the flag is set.references/cross-model-review.mdfiles,ce-doc-review/SKILL.md: key read and env mapping, and the "never an error" / "never fail the review" lines now carry the exception.docs/guides/configuration.md, the two skill guides,config-template.yamland itsconfig.example.yamlcopy.Validation
*-cross-model-routes.test.tsfiles: flag set with no reachable peer exits 3 with the lens and reason; a peer returning garbage exits 3; a peer that publishes still exits 0; unset andfalsekeep exit 0; dry-run unaffected. A template guard incross-model-review-mode.test.tspins the new config comment.bun run test: 4531 pass, 1 fail. The failure (skill-eval-cell/catalog.test.ts) needs a git ref that is absent from a shallow clone and does not touch these files.release:validatepasses.cross-model-doc-review.shwithCROSS_MODEL_REQUIRE_PEER=true: exit 3 with the message when the only candidate peer CLI is absent; exit 0 and an artifact published when an OpenCode peer is reachable.Security Disclosure
No security-relevant changes. The change only alters the worker's exit code and log text when no peer artifact is produced. It adds no new shell execution, path handling, or egress.
Agent Disclosure
Claude Code · claude-sonnet-5-5