Skip to content

DOM-PFM-DJE-004Source Key

Markdown

DOM-PFM-DJE-004

Source Key

Markdown
  • DocumentDraft
  • ImplementationObserved

Planning

Specified by
CON-PFM-DJE-004

Design

Owned by
SVC-PFM-DJE-engine

KindDomain objectProduct areaPlatformModuleData Job EngineRevision1

Read atmacroservice-libraries 54536a44services-crm a8d1364fservices-platform ad3f6a65services-membership 5994c270

Relationships

ToCardinalityOwnershipCrosses a serviceOn archive or delete
DOM-PFM-DJE-001many-to-many: successive jobs can write the same mappingThe mapping keeps first and last job identifiers without job foreign keys.no
DOM-PFM-DJE-005many-to-many: run reconciliation looks up mappings for multiple datasetsServices own their mappings; workspace reset removes the mappings associated with the load.yes

Invariants

InvariantProtectsEnforced atProvenance
INV-DOM-PFM-DJE-004-01
The domain write and producer mapping share a transaction, so refusing an item rolls back its mapping too.
service, databasetest
macroservice-libraries:packages/data-jobs/src/tests/integration/keyed-data-jobs.integration.spec.ts#writes no crosswalk row for an item it refused, so the corrected delivery of that key is a create
INV-DOM-PFM-DJE-004-02
Existing mappings are locked, but an unseen key can be created by concurrent jobs because insertion replaces the mapping on conflict.
service, databaseobserved
INV-DOM-PFM-DJE-004-03
The mapping retains the destination version written by its producer rather than adopting an unrelated staff edit.
servicedocumented
macroservice-libraries:packages/data-jobs/README.md#Keyed writes and the ID crosswalk
INV-DOM-PFM-DJE-004-04
Whole-record deliveries skip equal revisions as duplicates and lower revisions as stale, while an equal-revision patch can still apply.
serviceobserved
INV-DOM-PFM-DJE-004-05
Key resolution is confined to the current workspace and registered record category.
database, servicetest
services-crm:modules/data-jobs/tests/integration/services/jobs/records-by-source-key.integration.spec.js#looks a key up under its own object type only: a contact key is not an organization
INV-DOM-PFM-DJE-004-06
Record deletion removes its mappings, merge repoints them to the survivor, and reset clears the load’s mappings.
service, databasetest

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.