From 583163d8325fd6871af2ea6c589da0eb54ac20c7 Mon Sep 17 00:00:00 2001 From: matrixarkai Date: Sat, 24 Oct 2026 23:39:35 -0700 Subject: [PATCH] Two guard steps carried a literal backslash-n and ran nothing `.github/workflows/ci.yml` had two `run:` blocks whose line continuations were written as the two characters `\n` instead of a backslash at end of line, so the whole guard collapsed onto one line and `cargo test` was handed extra positional arguments: cargo test --locked --lib n tests::filing_... -- --exact n | tee /tmp/guard.log cargo refuses that before running anything: error: unexpected argument 'tests::filing_a_record_over_an_existing_key_replaces_it' found So no test ran, `/tmp/guard.log` never got a `test result:` line, and the `grep -q '^test result: ok. 1 passed'` that follows failed -- which is the step failing for the right reason about the wrong thing. The guard was reporting "did not run" and it was telling the truth. Both affected guards are restored to the shape every other guard in the file uses. Checked locally at this commit, each named test runs and passes on its own: running 1 test test tests::filing_a_record_over_an_existing_key_replaces_it ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 459 filtered out running 1 test test tests::the_snapshot_decoder_accepts_the_version_before_this_one_and_refuses_the_one_after ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 459 filtered out The `format and rollback guards` job has failed on main since #219 for this and nothing else; `build & docs` was green throughout. The two tests themselves were never broken, which is why the failure survived four merges: the job was red, the code was fine, and the step name named a test that was passing. Co-Authored-By: Claude Opus 5 --- .github/workflows/ci.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 60b59df0..b54a5743 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -511,8 +511,11 @@ jobs: - name: Filing a record over an existing key replaces it run: | set -o pipefail - cargo test --locked --lib \n tests::filing_a_record_over_an_existing_key_replaces_it -- --exact \n | tee /tmp/guard.log - grep -q '^test result: ok. 1 passed' /tmp/guard.log \n || { echo "::error::filing_a_record_over_an_existing_key_replaces_it did not run"; exit 1; } + cargo test --locked --lib \ + tests::filing_a_record_over_an_existing_key_replaces_it -- --exact \ + | tee /tmp/guard.log + grep -q '^test result: ok. 1 passed' /tmp/guard.log \ + || { echo "::error::filing_a_record_over_an_existing_key_replaces_it did not run"; exit 1; } - name: A digest equals the text it is a digest of and refuses a corrupt tag run: | @@ -526,8 +529,11 @@ jobs: - name: The snapshot decoder accepts the version before this one and refuses the one after run: | set -o pipefail - cargo test --locked --lib \n tests::the_snapshot_decoder_accepts_the_version_before_this_one_and_refuses_the_one_after -- --exact \n | tee /tmp/guard.log - grep -q '^test result: ok. 1 passed' /tmp/guard.log \n || { echo "::error::the_snapshot_decoder_accepts_the_version_before_this_one_and_refuses_the_one_after did not run"; exit 1; } + cargo test --locked --lib \ + tests::the_snapshot_decoder_accepts_the_version_before_this_one_and_refuses_the_one_after -- --exact \ + | tee /tmp/guard.log + grep -q '^test result: ok. 1 passed' /tmp/guard.log \ + || { echo "::error::the_snapshot_decoder_accepts_the_version_before_this_one_and_refuses_the_one_after did not run"; exit 1; } - name: Two records spelling the same thing in different shapes hash differently run: |