Seed packs at a glance
Layers
| Layer | Provides |
|---|---|
| Platform | Universal reference data — countries, currencies, languages |
| Common | Universal entity types — person, organization, place |
| Vertical | Industry types, terminology, roles, consent types, tuned profiles |
A preset installs a whole stack in one step. Choose the vertical closest to your domain — extending a close fit is far less work than assembling from parts.
Configuration only
| Installed | Not installed |
|---|---|
| Entity types and attributes | Entity records |
| Match profiles: blocking, ladders, thresholds | Crosswalks |
| Standardization, validation, masking rules | Relationships between records |
| Reference data and hierarchies | Interactions |
| Relationship types and resolution rules | Consent records |
| Roles, groups, ABAC policies |
Installing a pack shapes a tenant; it does not populate it.
Idempotent
Every step looks up before creating, so re-running converges rather than duplicating. Safe after a partial failure, or to pick up pack changes.
It will not duplicate rows, but several steps converge by updating a row that differs — a locally-edited standardization rule is rewritten to the pack's configuration.
Record local deviations and re-check them after a pack update.
Fails loudly
A pack whose configuration the platform rejects fails the install. A pack that installed partially and reported success would leave a tenant configured in a way nobody could describe.
Shipped matching is conservative on purpose
Packs under-merge rather than over-merge. Under-merging leaves work in a review queue; over-merging corrupts golden records and needs unpicking.
But a pack cannot know your data's value distributions. Load records, then tune thresholds against your own labelled pairs.
Next
Last verified against commit 1e1de1ad (2026-08-03)