fix(803,664): round 10 — a raw docstring escaped as if it were not one
PR Gates / CI image pin matches docker/ci (pull_request) Successful in 8s
PR Gates / Docs update reminder (pull_request) Successful in 12s
Build ErsatzTV Image / CI toolchain image resolves (pull_request) Successful in 22s
PR Gates / decisions lifecycle (pull_request) Successful in 21s
Build ErsatzTV Image / Delimiter ban (release path) (pull_request) Successful in 36s
PR Gates / Fix proofs (Proves trailers) (pull_request) Successful in 13s
Review verdict / Set review-verdict status (pull_request_target) Successful in 20s
review-verdict/h10 Review-verdict: MERGEABLE @ 6c3e69a (base: main)
PR Gates / Script lint and tests (ruff + pytest) (pull_request) Successful in 8m33s
Build ErsatzTV Image / Build & test (.NET) (pull_request) Successful in 10m47s
Build ErsatzTV Image / EF migration integrity (SQLite + MySql) (pull_request) Successful in 7m3s
Build ErsatzTV Image / Build & push image (amd64) (pull_request) Skipped
Build ErsatzTV Image / Functional E2E (curl + UI contracts) (pull_request) Successful in 7m35s
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 7s
PR Gates / CI image pin matches docker/ci (pull_request) Successful in 8s
PR Gates / Docs update reminder (pull_request) Successful in 12s
Build ErsatzTV Image / CI toolchain image resolves (pull_request) Successful in 22s
PR Gates / decisions lifecycle (pull_request) Successful in 21s
Build ErsatzTV Image / Delimiter ban (release path) (pull_request) Successful in 36s
PR Gates / Fix proofs (Proves trailers) (pull_request) Successful in 13s
Review verdict / Set review-verdict status (pull_request_target) Successful in 20s
review-verdict/h10 Review-verdict: MERGEABLE @ 6c3e69a (base: main)
PR Gates / Script lint and tests (ruff + pytest) (pull_request) Successful in 8m33s
Build ErsatzTV Image / Build & test (.NET) (pull_request) Successful in 10m47s
Build ErsatzTV Image / EF migration integrity (SQLite + MySql) (pull_request) Successful in 7m3s
Build ErsatzTV Image / Build & push image (amd64) (pull_request) Skipped
Build ErsatzTV Image / Functional E2E (curl + UI contracts) (pull_request) Successful in 7m35s
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 7s
Eighth cold review: MERGEABLE, one cosmetic nit, nothing else. It re-derived the bash-exactness table itself, ran an 80k-input randomised differential (the predecessor loses 27 live `jq -e` sightings, this loses 0), and confirmed round 9 touches one test-only file and leaves the shipped CI behaviour untouched. The nit: my round-9 prose went into `_fold_continuations`' `r"""` docstring escaped as though it were an ordinary string, so it rendered `ok=y\\` and `\\bjq\\b` — the latter naming a DIFFERENT regex than the `\bjq\b` the code uses. Small, and exactly the class this branch exists to remove: a claim that does not describe the code. Corrected, and verified by printing `__doc__` rather than by reading the source, since the source is precisely what misled here. No code change. Verification: 1224 passed, 2 skipped; ruff clean; decisions-validate OK.
This commit is contained in:
@@ -2849,8 +2849,8 @@ def _fold_continuations(lines):
|
||||
|
||||
NO `rstrip()`, for the same reason. A backslash followed by trailing whitespace is not a
|
||||
continuation to bash — the backslash escapes the SPACE — and tolerating it was the one route by
|
||||
which this fold could DESTROY a `jq` token rather than fabricate one: `ok=y\\` plus invisible
|
||||
trailing spaces, then a dedented `jq -e ...`, folds to `okyjq -e`, and `\\bjq\\b` finds no word
|
||||
which this fold could DESTROY a `jq` token rather than fabricate one: `ok=y\` plus invisible
|
||||
trailing spaces, then a dedented `jq -e ...`, folds to `okyjq -e`, and `\bjq\b` finds no word
|
||||
boundary after the `y`. Every other divergence here over-joins, which can only ever cost a false
|
||||
positive. Matching the shell exactly is both simpler and the only direction that cannot lose a
|
||||
`jq`.
|
||||
|
||||
Reference in New Issue
Block a user