Skip to content

Data Definition Document: Unified Identity

Domain: Unified (audit, communications, identity, library, notifications, search, signals, vault, workflow) Logical Sub-Domain: Identity & Access (IA) Physical Packages: @sd/mod-unified-identity Related Documents: Process Blueprint Context: This document defines the Data Structures for Access Requests and the Lifecycle Extensions applied to the User entity. Source: packages/modules/unified/identity/src/types.ts

0. Entity Relationship Diagram (ERD)

erDiagram
    %% Core Framework
    USER ||--o{ ACCESS_REQUEST : "makes"
    USER {
        string id PK
        string[] roles
        json lifecycle "Extended State"
    }

    ACCESS_REQUEST {
        string id PK
        string requestedRole
        string[] documentUrls
        enum status "submitted, resolved"
    }

    FORENSIC_PROOF {
        string id PK
        string url "WORM Storage"
    }

    ACCESS_REQUEST ||--|{ FORENSIC_PROOF : "contains"

1. Data Structures

Entity: AccessRequestData

The payload submitted by an unverified user to claim an identity.

Field Type Required Description
fullName string Yes Legal Name.
email string Yes Contact Email.
requestedRole string Yes Enum: Owner, Tenant, Guest, Vendor, Staff.
unitNumber string No Required if Resident (Regex: ^[A-Z]\d{3}[A-Z]?$).
documentType string No Proof type (deed, lease, passport).
documentUrls string[] No Paths to files in Forensic Vault.
lfpdpppAck boolean Yes Data Privacy Law Acceptance (Required).

Entity: LifecycleState (Enum)

The security state of a User account.

Value Description
unverified Initial state. No permissions.
identity_verified Documents checked, but access not granted.
provisioned Full access granted. Active.
expired Time-bound access ended (e.g., Lease finished).
revoked Banned for violations.
emergency Temporary override.

Entity: User.lifecycle (Extension)

Object merged into the root users collection document.

Field Type Required Description
state LifecycleState Yes Current state.
lastTransitionAt Timestamp Yes Audit time of last change.
transitionReason string Yes Why the state changed (e.g. "Approved by Admin").
nextRecertificationAt Timestamp No When this identity needs review (Default: +1yr).

4. Changelog

Date Author Description Reference
2026-01-24 Antigravity Initial creation Implementation Plan