Skip to content

v1.18.1 -- golden-rules intelligence layer 2

Choose a tag to compare

@benzsevern benzsevern released this 22 May 14:11
· 531 commits to main since this release
20e043b

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