You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"reviewer model policy found no configured reviewer outside the model "
3382
-
f"family of {meta['model']!r}"
3383
-
)
3391
+
returnvalidated
3384
3392
3385
3393
3386
3394
defreview_output_schema(
@@ -3594,7 +3602,7 @@ def make_prompt(
3594
3602
You are using the same model as the author and may share the author's blind spots and priors.
3595
3603
Compensate explicitly: attack the change adversarially, try to falsify the author's claims rather than confirm them, and default to reporting a finding when uncertain.
3596
3604
"""
3597
-
returnf"""You are the independent merge-gate reviewer for a pull request.
3605
+
prompt=f"""You are the independent merge-gate reviewer for a pull request.
3598
3606
{same_model_warning}Review exact head {snapshot_value['head_sha']} against exact base {snapshot_value['base_sha']}.
3599
3607
Perform a rigorous release-readiness review of the full diff and the PR's own claims.
3600
3608
Do not trust the PR description or a previous clean run.
@@ -3645,6 +3653,20 @@ def make_prompt(
3645
3653
Bounded durable-finding lifecycle metadata and proof digests:
Copy file name to clipboardExpand all lines: docs/crosscheck.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -84,6 +84,12 @@ The accepted profiles are Pi at xhigh on every registered cross-family model (to
84
84
Reviewer independence is compared on the model FAMILY, not the exact id, so a `gpt-5.5` author is not admitted a `gpt-5.6-sol` reviewer (finding cc-4dcd7873f71a); an unrecognized model remains its own family.
85
85
Absent reviewer configuration, unavailable reviewer credentials, or model-policy mismatch produces `CROSSCHECK TOOL-FAILURE` and a nonzero exit before reviewer launch.
86
86
87
+
The lock-free status read reports whether the roster's first serving family is the cross-family primary or the Codex fallback, the current `crosscheck-same-model` setting, and the latest durable run's `review_family_mode` when a run exists.
88
+
89
+
```sh
90
+
bin/fm-crosscheck.sh status
91
+
```
92
+
87
93
Crosscheck requires Python 3.11 or newer and refuses to run on anything older.
88
94
This is a safety floor rather than a style preference: the bounded-read layer rejects hostile JSON integers by relying on CPython's integer/string conversion limit, which first exists in 3.11, and on an older interpreter that rejection silently stops happening while every banner the gate prints reads exactly the same.
89
95
Stock macOS `python3` is 3.9, so `bin/fm-crosscheck.sh` resolves a supported sibling interpreter instead of assuming `python3` qualifies, and `bin/fm-crosscheck.py` enforces the same minimum itself so a direct invocation cannot bypass it.
0 commit comments