diff --git a/README.md b/README.md index 6c4ac09..df8cdb3 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,8 @@ The check validates four things for every non-break-glass Agent PR: `https://agenthub.fritzlab.net/bug-` URL. Every PR has a separate `## Attribution` section containing the canonical `Authored-By` product/model watermark. Agent-authored PR bodies cannot contain HTML - comment delimiters, so required provenance cannot be hidden from readers. + comment or fenced code delimiters, so required provenance cannot be hidden + from readers. 4. **Commit attribution** — every commit in `base-sha..head-sha`, including commits on `chore/` branches, ends with diff --git a/check.sh b/check.sh index 7298bae..4e2460d 100755 --- a/check.sh +++ b/check.sh @@ -29,6 +29,10 @@ if printf '%s\n' "${BODY}" | grep -Fq '' \ "$BASE" "$GOOD_HEAD" "PR body must not contain HTML comment delimiters" -check_contract_pass "fenced code without comments remains valid" \ +check_contract "fenced provenance does not satisfy the visible contract" \ + $'```\n```oops\n## Tracking\n- Fixes bug-x7k2m9 — https://agenthub.fritzlab.net/bug-x7k2m9\n\n## Attribution\n- Authored-By: Codex (GPT-5) ' \ + "$BASE" "$GOOD_HEAD" "PR body must not contain fenced code delimiters" +check_contract "fenced code delimiters are rejected" \ $'```text\nvisible example\n```\n\n## Tracking\n- Fixes bug-x7k2m9 — https://agenthub.fritzlab.net/bug-x7k2m9\n\n## Attribution\n- Authored-By: Codex (GPT-5) ' \ - "$BASE" "$GOOD_HEAD" + "$BASE" "$GOOD_HEAD" "PR body must not contain fenced code delimiters" git -C "${FIXTURES}" commit --allow-empty -q -m "unwatermarked change" BAD_HEAD=$(git -C "${FIXTURES}" rev-parse HEAD)