Skip to content

SCRUM-1058-Entity matching strips table-name suffixes and layer prefixes - #298

Merged
marcociav-exmergo merged 4 commits into
mainfrom
SCRUM-1058-issue-208
Aug 19, 2026
Merged

SCRUM-1058-Entity matching strips table-name suffixes and layer prefixes#298
marcociav-exmergo merged 4 commits into
mainfrom
SCRUM-1058-issue-208

Conversation

@emnarahmouni-exmergo

Copy link
Copy Markdown
Contributor

Closes : #208
Relationship inference matched a foreign key to a parent by comparing the singularized column stem to the parent table's name (layer prefix stripped), so a CDC history suffix, a landing-zone suffix (_data/_raw/_stg), or a versioned table name defeated the match entirely.
Adds a new, lower-confidence match tier that strips a small configurable set of prefixes/suffixes (entity_affixes in .dex/config.yml) plus a table-version suffix, and retries the entity-name comparison.
A stripped match never outranks an exact match to the same key, and explore relationships/explore map's notes say when a join relied on it. Where stripping resolves more than one candidate parent, both are proposed and --verify decides.
Before :
image
After:
image

@marcociav-exmergo marcociav-exmergo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@marcociav-exmergo
marcociav-exmergo merged commit 0666cd0 into main Aug 19, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Entity matching is defeated by table-name suffixes and layer prefixes

2 participants