docs(708): record the live route-2 reproduction against PR #761 #834

Merged
timothy merged 1 commits from fix/708-route2-live-evidence into main 2026-08-26 11:11:24 +02:00
Owner

Records the live reproduction of #698's route 2, which #708 split out because it could not be
performed in the originating session.

Result: route 2 is REFUSED on the live instance after PR #705. Application code was pushed onto
Renovate PR #761's branch; the classifier logged

Changed files (2, complete=yes):
  Directory.Packages.props
  ErsatzTV.Core/Probe708.cs
Decision: state=pending — authored by the 'renovate' bot account, but changes files outside the dependency-manifest set — a bot ACCOUNT does not attribute the CODE at this head (the account is the PR's immutable creator; the head is not), so this needs a real verdict
Posted review-verdict/h10=pending on 830a407.

and the classify step's start marker was present, so this is a real classification rather than the
#751 silent no-op. #698 does not need reopening.

PR #761 was guarded with a WIP: prefix (draft: true / mergeable: false confirmed) before anything
was pushed, then force-restored to its recorded sha 8798a1d2 and verified byte-identical across
title, head sha, base ref, draft, mergeable, state, labels, body hash, author and milestone.

Two corrections this also lands, because both would mislead the next reader:

  • The refusal reason is only in the job log. #708's step 5 expected the status description to say
    the PR changes files outside the manifest set. It does not — reason is only echoed, and every
    non-exempt head that is not carrying the raced-repair sentinel gets the generic
    Awaiting review verdict for <sha7>.
  • A live instance of #763, evidence posted there. Re-running the gate on #761's original head
    tripped #751's page-2 "assume raced" rule and repaired a correct exemption to pending with a false
    ::error:: claiming a human verdict was overwritten; none existed.

Docs-only: one decision record, ci.exemption-provenance.

Verification: decisions_validate OK; catalog regenerated with no diff. Two rounds of cold,
worktree-isolated review — round 1 BLOCKED on an ambiguous head reference and an overstated
"every non-exempt head" invariant, both fixed; round 2 CLEAN, with the new causal claim
independently verified against the workflow source.

fixes #708

Records the live reproduction of #698's route 2, which #708 split out because it could not be performed in the originating session. **Result: route 2 is REFUSED on the live instance after PR #705.** Application code was pushed onto Renovate PR #761's branch; the classifier logged ``` Changed files (2, complete=yes): Directory.Packages.props ErsatzTV.Core/Probe708.cs Decision: state=pending — authored by the 'renovate' bot account, but changes files outside the dependency-manifest set — a bot ACCOUNT does not attribute the CODE at this head (the account is the PR's immutable creator; the head is not), so this needs a real verdict Posted review-verdict/h10=pending on 830a407. ``` and the classify step's start marker was present, so this is a real classification rather than the #751 silent no-op. #698 does **not** need reopening. PR #761 was guarded with a `WIP:` prefix (`draft: true` / `mergeable: false` confirmed) before anything was pushed, then force-restored to its recorded sha `8798a1d2` and verified byte-identical across title, head sha, base ref, draft, mergeable, state, labels, body hash, author and milestone. Two corrections this also lands, because both would mislead the next reader: - **The refusal reason is only in the job log.** #708's step 5 expected the status *description* to say the PR changes files outside the manifest set. It does not — `reason` is only echoed, and every non-exempt head that is not carrying the raced-repair sentinel gets the generic `Awaiting review verdict for <sha7>`. - **A live instance of #763**, evidence posted there. Re-running the gate on #761's *original* head tripped #751's page-2 "assume raced" rule and repaired a correct exemption to `pending` with a false `::error::` claiming a human verdict was overwritten; none existed. Docs-only: one decision record, `ci.exemption-provenance`. Verification: `decisions_validate` OK; catalog regenerated with no diff. Two rounds of cold, worktree-isolated review — round 1 BLOCKED on an ambiguous head reference and an overstated "every non-exempt head" invariant, both fixed; round 2 CLEAN, with the new causal claim independently verified against the workflow source. fixes #708
timothy added 1 commit 2026-08-26 11:02:41 +02:00
docs(708): record the live route-2 reproduction against PR #761
Build ErsatzTV Image / CI toolchain image resolves (pull_request) Successful in 10s
PR Gates / CI image pin matches docker/ci (pull_request) Successful in 10s
PR Gates / Docs update reminder (pull_request) Successful in 11s
PR Gates / Fix proofs (Proves trailers) (pull_request) Successful in 12s
Build ErsatzTV Image / Delimiter ban (release path) (pull_request) Successful in 23s
Review verdict / Set review-verdict status (pull_request_target) Successful in 20s
PR Gates / decisions lifecycle (pull_request) Successful in 15s
PR Gates / Script lint and tests (ruff + pytest) (pull_request) Successful in 5m26s
Build ErsatzTV Image / Build & test (.NET) (pull_request) Successful in 13s
Build ErsatzTV Image / EF migration integrity (SQLite + MySql) (pull_request) Successful in 10s
Build ErsatzTV Image / Build & push image (amd64) (pull_request) Skipped
Build ErsatzTV Image / Functional E2E (curl + UI contracts) (pull_request) Successful in 10s
Build ErsatzTV Image / API docs in sync (OpenAPI + endpoint index) (pull_request) Successful in 10s
Build ErsatzTV Image / Formatting (changed .cs conform to .editorconfig) (pull_request) Successful in 6s
review-verdict/h10 Review-verdict: MERGEABLE @ 8b8bb1c (base: main)
8b8bb1c3da
Pushed application code onto Renovate PR #761's branch and captured the
review-verdict/h10 the gate posted: pending, with the classifier logging
"authored by the 'renovate' bot account, but changes files outside the
dependency-manifest set". Route 2 of #698 is refused on the live instance
after PR #705; identity alone no longer exempts a head.

Also records two things the issue got wrong or did not anticipate: the
refusal reason surfaces only in the job log, never in the status
description, and re-running the gate on the PR's ORIGINAL head tripped
#751's page-2 "assume raced" rule, which is the live instance of #763
that issue predicts.

Cold review found two defects in the first draft, both fixed here: the
repair paragraph said "that head", which reads as the probe head when the
repair in fact fired on the original head from the title edit five minutes
earlier; and "every non-exempt head gets the generic description" was false,
since the raced-repair sentinel is also a non-exempt description.

PR #761 was restored to its recorded sha and verified byte-identical.

fixes #708

Decisions-Edit: yes
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Author
Owner

Review-verdict: MERGEABLE @ 8b8bb1c

Two rounds of cold worktree-isolated review; round 1 BLOCKED on an ambiguous head reference and an overstated invariant, both fixed; round 2 CLEAN with the new causal claim independently verified against review-verdict.yml.

Review-verdict: MERGEABLE @ 8b8bb1c Two rounds of cold worktree-isolated review; round 1 BLOCKED on an ambiguous head reference and an overstated invariant, both fixed; round 2 CLEAN with the new causal claim independently verified against review-verdict.yml.
timothy merged commit e8e17f3844 into main 2026-08-26 11:11:24 +02:00
timothy deleted branch fix/708-route2-live-evidence 2026-08-26 11:11:27 +02:00
Sign in to join this conversation.