v0.297.0: burn-down round 2 — 24 small rows (R-591 R-568 R-567 R-363 R-547 R-10 R-552 R-251 R-104 R-619 R-362 R-675 R-256 R-257 R-240 R-365 R-425 R-565 R-564 R-603 R-454 R-208 R-457-swept) + the banner countdown and deepCopyStack twins; MinAgent 0.131.0
gates / gates (push) Failing after 50s

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-10-05 20:12:56 +02:00
parent 114ff2761a
commit 1453cfc69b
68 changed files with 3953 additions and 116 deletions
+37 -5
View File
@@ -53,6 +53,16 @@ GO_SOURCES = [
# records what happens when the guard chases words instead of claims — it misses the next one.
STEMS = ["visszaállíthat", "visszaszerezhet", "visszahozhat", "visszanyit"]
# R-564 — THE SPLIT VERB. Hungarian moves the particle after the verb when something is stressed:
# „csak akkor ÁLLÍTHATÓK VISSZA", „csak a hiányzó fájlokat HOZOD VISSZA". The joined stems above never
# see that form, so seven Hungarian sentences went unscanned until their English translations were
# caught by EN_PATTERNS (slice 1 release B). The same claim, the same registration rule.
SPLIT_PATTERNS = [
r"állíth\w* vissza",
r"(?:hoz|szerez|nyit)\w* vissza",
]
HU_RE = re.compile("|".join([re.escape(s) + r"[a-záéíóöőúüű]*" for s in STEMS] + SPLIT_PATTERNS))
# (template, substring that identifies the occurrence) -> why it is allowed.
# The substring must be specific enough that a DIFFERENT claim in the same file does not match it.
ALLOWLIST = {
@@ -94,6 +104,28 @@ ALLOWLIST = {
("recovery.html", "a mentéseid visszaszerezhetők, és a törlés elmarad;"):
"the abandon CONFIRMATION screen, shown at the moment of the decision. True by construction "
"there: the package the hub holds right now is the one about to be pinned. Left alone.",
# R-564 — the split-verb occurrences, found the day SPLIT_PATTERNS learnt them. Each one's English
# twin was registered in slice 1 release B (ALLOWLIST_EN below), with the same reason.
("backups_escrow.html", "ezzel a kóddal állíthatók vissza"):
"a PRECONDITION, not a promise: it says the remote backups need THIS code, on the page that "
"creates it. It narrows what is possible; it claims nothing about the old store.",
("backups_remote.html", "A távoli mentések csak akkor állíthatók vissza egy teljes meghibásodás után"):
"a PRECONDITION: remote backups are restorable after a total failure ONLY if the recovery "
"code exists. It is the reason to create the code, not a claim that a store is retrievable.",
("backups_restore.html", "utána hozhatod vissza az adatait"):
"the order of two actions on the restore page for an app that is not installed: reinstall "
"first, then restore its data from the copy listed on that same row.",
("backups_restore_wizard.html", "csak a hiányzó fájlokat hozod vissza"):
"describes the CHOICE the wizard offers next (missing files only, or a full restore) for a "
"verification copy that is already on the box.",
("backups_restore_wizard.html", "Az alkalmazás beállításait és adatbázisát hozza vissza"):
"describes what the verification restore DOES, into a separate folder, on the page where it "
"is pressed. Nothing about a recovery code.",
("backups_restore_wizard.html", "<strong>nem</strong> hozza vissza"):
"a NEGATIVE: says the verification restore does NOT bring back the household's own files.",
("recovery.html", "melyik alkalmazás mit hozzon vissza"):
"points to the restore page, where the household picks what each app brings back from a "
"store the box has just opened. A route, not a promise.",
}
# ── ENGLISH (localisation slice 1, R-556) ─────────────────────────────────────────────────────────
@@ -131,9 +163,9 @@ ALLOWLIST_EN = {
"= backups_remote.html 'Hogy ezek még visszaszerezhetők-e': the QUESTION branch.",
("recovery.html", "your backups can be retrieved, and the deletion is cancelled;"):
"= recovery.html 'a mentéseid visszaszerezhetők, és a törlés elmarad;': the confirmation screen.",
# slice 1 release B — English claims whose HUNGARIAN escapes the Hungarian stems (split verbs:
# „állíthatók vissza", „hozod vissza"). The English gate saw them first; the Hungarian blind spot
# is a register row (R-564). Each is registered on its own merits:
# slice 1 release B — English claims whose HUNGARIAN escaped the Hungarian stems (split verbs:
# „állíthatók vissza", „hozod vissza"). The English gate saw them first; since R-564 the Hungarian
# scan sees them too (SPLIT_PATTERNS) and registers each one above. Each is registered on its own merits:
("backups_remote.html", "Remote backups can be restored after a complete failure only if you create the recovery code."):
"a PRECONDITION, not a promise: restorable only IF the code exists — true by the escrow design (hu: "
"'csak akkor állíthatók vissza … ha létrehozza').",
@@ -184,8 +216,8 @@ def scan():
# in 10-localisation.md; the English bundle covers three pages today.
raw = open(path, encoding="utf-8").read()
text = stripper.sub("", i18n_bundle.expand(raw, "hu") if path.endswith(".html") else raw)
for stem in STEMS:
for m in re.finditer(re.escape(stem) + r"[a-záéíóöőúüű]*", text):
if True:
for m in HU_RE.finditer(text):
line = text[: m.start()].count("\n") + 1
# SPAN-based, not window-based. The promise and the cautious disclaimer sit within a
# hundred characters of each other in the same paragraph, so a proximity window matches