---
id: SVC-PFM-DJE-membership-data-jobs
title: Membership Structure Data Operations
product_area: platform
module: data-job-engine
repository: services-membership
source_module: modules/data-jobs
revision: 1
status: draft
design_intent: proposed
implementation_evidence: partially-observed
inference: []
source_sha:
  services-membership: 5994c270e8a37a30f848e99ba5b5ee6b87c08893
owns: []
does_not_own:
  - 'Membership structure owns unit types, units and tree validity.'
  - >-
    The missing adoption foundation would need engine storage, execution routes,
    workers and keyed mappings.
operations: []
events: []
jobs: []
integrations:
  - system: Data runs (Platform)
    direction: inbound
    contract: >-
      Current migration ports support Platform and CRM; Membership crosswalk
      export reports that its dataset is not applicable.
consistency:
  - rule: >-
      Operation declarations connect future loads to structure persistence and a
      separate post-load tree rebuild; no hosted job execution exists yet.
    kind: transactional
    compensation: >-
      No compensation is declared, and missing adoption infrastructure supplies
      no runnable recovery guarantee.
evidence:
  - >-
    services-membership at 5994c270:
    modules/data-jobs/services/operations/structure-data-operations.ts;
    export/import-crosswalk.dataset.ts, import-crosswalk.reader.ts;
    tests/unit/structure-data-operations.spec.ts;
    tests/integration/services/operations/structure-data-operations.integration.spec.ts.
  - >-
    The module declares no HTTP routes, no engine tables and no worker at the
    pinned commit.
controls: [TC-AVL-001, TC-AVL-004, TC-AVL-005, TC-CHG-001, TC-CHG-002, TC-CHG-003, TC-CHG-004, TC-CHG-005, TC-CHG-006, TC-CHG-007, TC-DAT-001, TC-DAT-002, TC-DAT-003, TC-DAT-005, TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-LOG-001, TC-LOG-005, TC-PI-001, TC-PI-002, TC-PI-004, TC-TEN-001, TC-TEN-002, TC-TEN-003]
---

# Membership Structure Data Operations

## What This Service Is For

Membership declares insert and upsert behavior for organizational structure records. Type ordering, parent resolution and a separate tree rebuild describe the intended adoption contract.

## Boundary

These declarations do not provide a runnable engine service. Membership has no corresponding job tables, routes, worker or mapping store, and current migration ports do not target it. Structure record ownership remains in Membership.

## Operations in Words

There is no deployed job-operation catalogue or Submissions publication in this scope. Completing adoption requires an implementation decision before these declarations can support package loading.

## Events and Jobs

No engine worker or orchestration job is registered here. The existing crosswalk export explicitly reports nonparticipation.

## Consistency Guarantees

Declared persistence calls demonstrate record-level behavior without proving end-to-end job atomicity or mapping guarantees. No rollback is declared, and the post-load rebuild remains separate from per-item execution.
