Commit Graph

1 Commits

Author SHA1 Message Date
Drew T b2c2b23007 fix(aprop): S59 lane overhaul — four measured defects, each byte-diagnosed before the fix
Baseline measured on the 21:04 pass (117 staged, 0 banked): 82 near real-diff /
19 standalone compile-fail / 16 near-0 TU-integration; zero drafts invisible to
the gate (the 'drafts: 0' probe was the triage harness racing itself — a shared
per-fn probe dir rm -rf'd by a concurrent triage run, not lane plumbing).

1. K&R definitions (aprop_autodraft.kr_definition): the near-0 class is the TU's
   own '(void)' decls + empty K&R call sites rejecting the draft's ANSI def
   ('too few arguments' after the arity pre-pass relaxes the decls). K&R the def
   when every param is promotion-safe; byte-proven MATCH on func_80162CCC's real
   TU (rtu_match) where the ANSI form CC1-failed.
2. decl_for scope: the destination is the HOME TU ONLY, macro-expanded
   (dest_scope) — the whole-binary concat adopted spellings the home TU never
   declares; and a dest spelling is adopted only when the seed body can compile
   against it (void-return-value guard + call-arity guard; measured 42 and 15
   fresh drafts died on each before the guards).
3. Ordinal IMM pairing is now a CANDIDATE SET (family_remap._ordinal_candidates):
   the single-guess form paired the first spelling's occurrences only and shipped
   35 of 117 drafts with value/offset swapped ('*(p+3)=2' for '*(p+2)=3',
   closeness-2 forever); candidates are adjudicated with match_one at draft time.
4. Staging filter (maintenance.sh): stage only AGREE + shape==MATCH, keyed by
   (binary, fn) — status-only staging burned 82 whole-binary builds per pass on
   drafts match_one had already refuted, every 45 minutes.
+ tools/rtu_second_chance.py: standalone COMPILE-FAIL is the wrong oracle for a
  TU-destined draft; re-judge those against the real TU (rtu_match) and stage
  the MATCHes.
2026-08-24 22:22:12 -06:00