From 51a3d81d5554d9746e51dc2ed5e700648d46f2c8 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Mon, 5 Oct 2026 21:13:52 +0200 Subject: [PATCH] test_gate_decoys: the ratchet ABOVE case removes English instead of adding it (stale since full coverage) The case added privatebin's English and expected the gate to report coverage ABOVE a ceiling of 0; since the catalog reached full coverage nothing was missing and the gate rightly said OK, so the suite was red on its own premise. Red-proof: with check 5 disabled the case fails. Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS --- scripts/test_gate_decoys.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/test_gate_decoys.py b/scripts/test_gate_decoys.py index 73ea1e7..76c1c5b 100644 --- a/scripts/test_gate_decoys.py +++ b/scripts/test_gate_decoys.py @@ -960,8 +960,11 @@ i18n: # THE RATCHET — the one thing --expect-missing does not test for the cases above, so it is # tested here explicitly, in BOTH directions. A ceiling that only convicts upwards can be # left behind by a push that translated more than it recorded. + # The ABOVE case REMOVES privatebin's English (2026-10-05): it used to ADD it and rely on the rest + # of the catalog being untranslated, so the day the catalog reached full coverage (ceiling 0) the + # tree had nothing missing, the gate rightly said OK, and the case failed on its own premise. case_copy("FACT: ratchet — fewer strings translated than the ceiling records", clone, - [(PB, add_en())], expect_rc=1, + [(PB, strip_en)], expect_rc=1, must_contain=("English coverage", "ABOVE"), extra_args=("--expect-missing", "0")) case_copy("FACT: ratchet — more translated than the ceiling records", clone,