This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+14 more
Summary
AI summaryUpdates Three new built-in strategies, Specs, and PRE across a mixed release.
Full changelog
goldenmatch 1.18.0 -- 2026-05-22
Addresses all four follow-up items from the golden-field
consolidation discussion + adds post-cluster auto-config refinement.
Three new built-in strategies
- longest_value -- longest non-null string. Free-text use case.
- unanimous_or_null -- emit value only on full agreement; emit
None on any disagreement. Compliance use case. - confidence_majority -- majority weighted by cluster pair_scores.
Strong-edge minority can beat weak-edge majority.
Post-cluster GoldenRulesRefiner
Two-phase auto-config: matchkey + blocking stays pre-cluster
(clustering depends on them); golden-rules picking moves
POST-cluster where it benefits from real cluster shape signals.
core/golden_rules_refiner.py runs between build_clusters and
build_golden_records when golden_rules.adaptive=True. Reads:
- Compliance column-name patterns (ssn / npi / tax_id / license /
dob / mrn / passport / hipaa_id / cusip / lei / isin / etc.) - High-cardinality identifier columns
- Sibling timestamp detection (updated_at / modified_at / etc.
with > 80% coverage) - Within-cluster value spread
- Per-source completeness (uses source if present)
- Date-column timestamp coverage
- ColumnProfile signals (col_type, avg_len, null_rate)
Rule table:
- (PRE) compliance column name -> unanimous_or_null
- (PRE) col_type=identifier + cardinality > 0.9 -> unanimous_or_null
- col_type=date + > 50% cluster coverage -> most_recent
- Mutable field + sibling timestamp -> most_recent on the sibling
- One source > 1.5x median completeness -> source_priority
- Free-text + long + within-cluster disagreement -> longest_value
- null_rate > 0.5 -> first_non_null
- spread > 2.0 -> confidence_majority
- Else -> defer to base default
Opt-in via GoldenRulesConfig.adaptive: bool = False (default off).
Default-on is a v1.19 candidate after benchmark validation.
Custom plugin slot
strategy="custom:<name>" looks up a registered GoldenStrategyPlugin.
Rich protocol signature (values + sources + dates + quality_weights
- pair_scores + rule_kwargs). Defensive defaults: missing plugin OR
plugin exception -> WARNING + most_complete fallback. Opt-in strict
mode viaGOLDENMATCH_GOLDEN_STRATEGY_STRICT=1.
Specs
- docs/superpowers/specs/2026-05-22-intelligent-golden-rules-design.md
- docs/superpowers/specs/2026-05-22-golden-strategy-plugin-slot-design.md
Full CHANGELOG: https://github.com/benseverndev-oss/goldenmatch/blob/v1.18.0/packages/python/goldenmatch/CHANGELOG.md
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About GoldenMatch
All releases →Related context
Related tools
Earlier breaking changes
- v3.1.0 `GOLDENMATCH_FRAME=polars` now requires the `[polars]` extra; raises error without it.
- vgoldencheck-v3.0.0 `inferred_type` emits neutral dtype vocabulary (str/int/uint/float/date/datetime/bool/other) instead of raw Polars dtypes.
- vgoldencheck-v3.0.0 'inferred_type' now emits a neutral dtype vocabulary instead of raw Polars dtype strings.
- vgoldencheck-v3.0.0 `scan_file`, `scan_dataframe`, and CLI `check` now run without Polars, using Arrow-native pyarrow.Table.
- v3.0.0 Result frames now return pyarrow.Table instead of Polars DataFrame.
Beta — feedback welcome: [email protected]