iteration 03 · probes built
Two new static/oracle probes, runnable locally on synthetic fixtures like test_leakage.py. Outputs are committed evidence in the audit folder.
Replaces by-hand "inspection" with a static gate: scan for literals + estimator kwargs + dispatch, classify each against constants_registry.toml (derived / project_wide OK; feature_tunable / inline-literal BLOCK).
| candidate impl | verdict | why |
|---|---|---|
build_candidate_registry → bar_svd_entropy | PASS | references project-wide SVD_ORDER / SVD_DELAY |
| hjorth / petrosian / katz candidates | PASS | no literals of concern |
codec_foci_eval.add_antropy (same feature) | FAIL | inline order=3/delay=1 + LOOKBACK/LOOKBACK_COUNT drift |
Same feature (svd_entropy) is parameterless when pinned to the project-wide constant, non-promotable when it hardcodes its own order/delay — the exact knob to veto.
| test | case | verdict | number |
|---|---|---|---|
| A no-dispatch | if len>=500: app else perm | FAIL | estimator dispatch |
| B oracle | hjorth_mobility (two formulas) | PASS | abs_diff 6.9e-18 |
| B oracle | petrosian_fd (two counts) | PASS | abs_diff 0.0 |
| B oracle | embedding_entropy order 3 vs 4 (unpinned) | FAIL | rel_diff 3.3% |
| C doc/code | declared DFA vs implemented R/S | FAIL | family {dfa} ≠ {rs} |