mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-28 06:49:47 -04:00
fix(draw_waves): normalise exclude rows to (binary, fn) — the list was excluding NOTHING
My own regression from the same session: exclude_audit.parse now returns 4-tuples (it carries the WALL pin and each entry's note), and draw_waves built `skip` straight from them, so every membership test against a 2-tuple missed and the exclude list had no effect at all — while the run reported success. Caught by MEASURING the pool rather than trusting the run: it came back 88 non-main + 45 main = the full frontier, when a 25-entry list should have reduced it. Now 69 and 41, which reconciles exactly (88 - 16 carve-blocked - 3 non-main walls; 45 - 4 open main walls, PopMatrix/PushMatrix being linked and already refused). The silently-narrowed-scope shape again, and the third time this session that counting the RESULT rather than trusting the REPORT is what caught it.
This commit is contained in:
+5
-1
@@ -179,7 +179,11 @@ def main():
|
||||
sys.exit(msg + "\n (--exclude-stale-ok to draw anyway)")
|
||||
print(msg + "\n --exclude-stale-ok given: proceeding, and ignoring those entries.")
|
||||
ex_rows = [(b, f) for b, f, k, _ in classified if k not in EA.STALE]
|
||||
skip = set(ex_rows)
|
||||
# NORMALISE TO (binary, fn). `exclude_audit.parse` returns 4-tuples (it carries the WALL pin
|
||||
# and the entry's note), and the membership tests below are 2-tuples — building `skip` from the
|
||||
# raw rows silently matched NOTHING and excluded NOTHING while reporting success. Caught by
|
||||
# measuring the pool instead of trusting the run: it came back 88+45 = the FULL frontier.
|
||||
skip = {(b, f) for b, f, *_ in ex_rows}
|
||||
|
||||
bins = sorted(os.path.basename(p) for p in glob.glob('src/*') if os.path.isdir(p))
|
||||
if a.only_main:
|
||||
|
||||
Reference in New Issue
Block a user