fix: dedupe filter drop reports by rendered message (#1099) - #1100
Merged
TomKaltofen merged 2 commits intoAug 11, 2026
Conversation
Both drop reports key their WARNING dedupe on the rendered line rather than on the column, so a reason the reader can tell apart warns on its own and only a byte-identical repeat falls to DEBUG. `_warn_on_diverging_options` already dedupes this way in the same class. The line is the key, so the per-column `_ReportKey` and `_report_key` lose their last callers. The ledger keeps writing per declaration, guarded only against overwriting another defect: what gets logged and what gets recorded stay separate concerns. Closes mloda-ai#1099.
Drives the new behaviour through the real matcher, next to the rest of the elimination-reason coverage: a defect whose reason reads differently warns instead of being muted, and so does a falsy return of another type. Two guards keep the report dedupe out of the ledger, which is where gating the write on the report loses facts in both directions. A second reason under one column must not overwrite the pinned first defect, and a second declaration failing the same way renders one identical line yet must still get its own ledger entry, or it silently loses its nearest miss. Restates the contract in the filter docs, which promised a report per FeatureGroup and declared filter.
TKaltofen
force-pushed
the
codex/dedupe-filter-drop-messages
branch
from
August 11, 2026 14:00
d0de9df to
7c7cc1b
Compare
TomKaltofen
marked this pull request as ready for review
August 11, 2026 14:05
Collaborator
|
@breezeFur Thank you for your contributions! This really helps! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #1099. Defect-drop and falsy-match warnings now deduplicate on the fully rendered log line, so different reasons or returned types remain visible at WARNING while byte-identical repeats are DEBUG. The per-declaration dropped_filters ledger remains unchanged, and reset clears both message ledgers.
Validation
uff check on the changed module and tests -> passed.
uff format --check reports existing formatting differences in these files; no formatter rewrite was applied.
Generated by Codex.