v1.18.1 -- golden-rules intelligence layer 2
goldenmatch 1.18.1 -- 2026-05-22
Three of four follow-up lifts from the golden-rules intelligence
discussion. #4 (LLM-assisted picks) deferred to its own PR
per issue #430.
Per-source consensus agreement
source_priority ranking now uses per-source agreement-with-cluster-
consensus rate, not just completeness. Catches "complete but wrong"
sources -- a source non-null on 95% of fields but disagreeing with
the cluster majority. Falls back to completeness when < 10 attempts
per source.
MemoryStore-learned strategy tuner
core/autoconfig_golden_strategy_tuner.py. 90/10 train/heldout,
5pp overfit guard, gated on >= 50 corrections per dataset,
env-overridable via GOLDENMATCH_GOLDEN_TUNER_MIN_CORRECTIONS.
Refiner consults tuner FIRST per field; falls back to heuristics
on no_memory / below_minimum / overfit_guard.
Per-cluster strategy overrides
GoldenRulesConfig.cluster_overrides: dict[int, dict[str, GoldenFieldRule]] | None. Refiner sets per-cluster, per-field
overrides based on cluster shape:
- cluster_quality='weak' -> unanimous_or_null
- oversized clusters -> confidence_majority
- size == 2 clusters -> unanimous_or_null
The polars-native fast path is disabled when overrides are set
(fast path applies one strategy to all clusters; can't honor
per-cluster picks).
Deferred (v1.19+)
- LLM-assisted picks for ambiguous fields (issue #430)
Full CHANGELOG: https://github.com/benseverndev-oss/goldenmatch/blob/v1.18.1/packages/python/goldenmatch/CHANGELOG.md