mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-02 07:59:52 -04:00
fix(tools-health): audit-cdecl is a HEALTH check, not a regression suite — sample by default
Drew, correctly: "this is a tools health test, not a full regression test." audit-cdecl re-parsed every declaration in all 4,168 TUs and handed each to real gcc — ~787s of pure-Python collection before the first cc1 call. It made `make tools-health` unrunnable: >15 min, killed twice, never completed once. `--limit` already existed and its own help calls it "a fast smoke run"; nothing was using it. Sampled by default (CDECL_AUDIT_TUS ?= 60); the exhaustive form stays as `audit-cdecl-full` for when cdecl.py itself changes. audit-cdecl : >9 min -> 61s (4,777 declarations adjudicated, 0 rejected) tools-health: never completed -> 333s, rc=0, all green Known limit, recorded not hidden: --limit takes the FIRST N TUs, not a random sample, so the smoke run always exercises the same files. Randomising the sample (or rotating by seed) is the follow-up.
This commit is contained in:
@@ -184,7 +184,16 @@ audit-corpus:
|
||||
# so the candidate set is every depth-0 statement, and there is no hand-maintained candidate regex
|
||||
# to rot. The real cross-gcc then adjudicates BOTH the parse and the residue (R34): it compiles each
|
||||
# declaration beside this parser's reconstruction of it, and a statement gcc also rejects is not C.
|
||||
# SAMPLED BY DEFAULT (P31 S70). This is a HEALTH check, not a regression suite. The full pass
|
||||
# re-parses every declaration in all 4,168 TUs and hands each to real gcc: ~787s of pure-Python
|
||||
# collection before the first cc1 call, and it made `make tools-health` unrunnable (>15 min, killed
|
||||
# twice). The exhaustive form still exists as `audit-cdecl-full` — run it when cdecl.py itself
|
||||
# changes, not on every health check.
|
||||
CDECL_AUDIT_TUS ?= 60
|
||||
audit-cdecl:
|
||||
$(VENV_PY) tools/cdecl.py --audit --gcc --limit $(CDECL_AUDIT_TUS)
|
||||
|
||||
audit-cdecl-full:
|
||||
$(VENV_PY) tools/cdecl.py --audit --gcc
|
||||
|
||||
# Binary-citizenship gate (Phase-28 T7, R36 via R32). Asserts every onboarded binary
|
||||
|
||||
Reference in New Issue
Block a user