Mawu · Guides & deep dives

V7 Community Data Portability — Realm Export Rights in Writing

A realm operator can take their community's world with them: their own resources and configuration in full, their realm's world and economy state, and — with each player's standing consent — their citizens' character records,

8sections12 minread1table

On this page

Status: V7 trust/policy design. Source: this is the contract artifact behind the "exit rights in writing" commitment of V7/docs/community-migration.md §2.1 and the export-rights carve-out cited by V7/docs/off-platform-monetization-policy.md §5 Stage 4. Grounded in V7/V7_features.md (features§"The Trust Boundary — Platform vs. Realm", features§"The Realm Model", features§"Nàná — Persistent Characters", features§"Hosting, Orchestration, and Who Pays", features§"Eunomia", features§"The Economy Firewall and Anti-Fraud") and the sibling regimes it composes with: V7/docs/operator-data-protection.md (realm-scoped pseudonymous identity, DPA, deletion fan-out), V7/docs/world-state-rollback.md (Nephthys PITR and the ledger), V7/docs/operator-economics.md (tiers and the BYOC services fee), V7/docs/ip-content-matching.md (ripped-asset hygiene). Market context: V7/V7_GAP_ANALYSIS.md Part A/C (the FiveM/Cfx.re revocable-license precedent). Owner: V7 product lead (Mawu) — guarantee and terms; Nephthys lead — export pipeline; Abundantia registry lead — bundle and licensing; DPO — consent mechanics; Kuanyin/Themis — enforcement-scenario interaction. Date: 2026-06-12. Counsel review required before the operator terms ship; assumptions labeled.

1. The Guarantee, in One Paragraph#

A realm operator can take their community's world with them: their own resources and configuration in full, their realm's world and economy state, and — with each player's standing consent — their citizens' character records, in an open, versioned, integrity-hashed format the operator can verify independently. The platform's identity, safety, Ori, and real-money planes are never exportable, because they were never the operator's (features§"The Trust Boundary"). The guarantee lives in the operator terms with a survival clause: changes adverse to export rights take effect no sooner than 24 months after notice (planning assumption adopted 2026-06-12, counsel to confirm enforceability per market).

This is a deliberate competitive wedge. FiveM communities operate under a license Rockstar can revoke at will — the team behind FiveM/RedM was acquired by Rockstar in Aug 2023 (gap§Part A row A1), and the unconfirmed "Project ROME" first-party platform (gap§Part C) is exactly the scenario in which those communities would face a forced migration with zero data rights: no export of their MySQL character tables, no license to their world, no recourse. community-migration.md §2.1 lists "zero IP ownership of the world they built" among flagship operators' standing grievances. V7's counter is not a promise — it is a signed bundle, an open format spec, a public verification tool, and a CI gate that proves round-trip fidelity every release (§8). A platform that structurally cannot hold communities hostage is the platform flagship communities can bet a decade on.

2. What an Operator May Export#

2.1 Their resources and configuration — full, content-addressed#

  • Every Ixchel resource (WASM modules, assets, data layers) owned by the operator or their realm's credited creators with export-licensed terms, as content-addressed objects exactly as the registry stores them (arch§"Dependency Resolution and Content-Addressed Storage"), plus the realm's pinned lock file, Nàná configuration, Eunomia charter and governance record, realm settings, and the operator's own admin/moderation audit log.
  • Third-party paid resources are not theirs to take. A dependency the operator merely licensed exports as its lock-file entry: content hash, version, and a signed license receipt — proof of what they ran and the right to re-acquire, not the bytes. Every resource carries an exportable flag in Abundantia metadata, set by its rights holder (default: exportable for the operator's own uploads, receipt-only for marketplace purchases). This keeps the export pipeline from becoming the leak channel that Tebex resources suffer (community-migration.md §2.3).

2.2 Realm world and economy state — their realm's ledgers#

The realm's Nephthys aggregates at the export cut: world mutations, property registry, vehicle/item instances with provenance lineage, the realm's double-entry play-currency ledger (the same journal the rollback tooling queries, world-state-rollback.md §3.1), job/institution state, and the realm-health metric history. The export source is a forked shadow materialization at the cut timestamp — the PITR machinery of world-state-rollback.md §2 — so exporting never disturbs the live realm and the cut is a well-defined, replayable point.

Characters are players' personal data processed by operators under the operator-data-protection.md regime; they are not the operator's asset. Consent mechanics, concretely:

  • Standing export-consent flag per character–realm pair, default off. Stored platform-side as export_consent(character_id, realm_id) ∈ {granted, denied}, default denied. Surfaced in the player's privacy settings and as a skippable, default-deny toggle at character creation. Revocable at any time; revocation takes effect at the next export cut (already-delivered exports are not recalled — stated honestly — but every export records the exact consent snapshot used, so liability is bounded and auditable).
  • Coerced consent is a violation. An operator may not condition membership, whitelisting, or any realm benefit on granting export consent (the GDPR Art. 7(4) bundling problem). Doing so is a DPA/terms breach → operator-data-protection.md §6 ladder. Operators cannot send consent prompts; only the platform prompts, and only at defined scenario events (§5).
  • With consent: the full Nàná character record as held by that realm — the realm-visible aggregate of operator-data-protection.md §2.2 (name, appearance ref, licenses, employment, inventory, balances, property, RP criminal/medical record), keyed by realm_player_id. Never anything from the platform plane.
  • Pseudonymized fallback without consent — realm continuity without the person: ledger entries, property, and inventory are retained (the double-entry books must still balance) but re-keyed to xport:HMAC-SHA256(realm_player_id, K_export) where K_export is generated per export and destroyed after manifest signing — forward-unlinkable even to the platform. Character name, appearance, backstory, licenses, RP records, player-authored free text, and relationship edges are dropped; edges survive only between two consented characters. The realm imports these as narrative tombstones ("a former resident"), matching the "character retired" posture of operator-data-protection.md §7.
  • Minors: characters on minor accounts take the pseudonymized path regardless of any flag — export of identified child data is off the table as a child-safety floor matter (features§"Child Safety and Age Assurance").

2.4 Explicitly NOT exportable — ever, for anyone#

Platform account identity (emails, credentials, age data, KYC, device attestation); Ori subjects — an export contains realm-scoped character projections, never the Ori event log, which stays platform-authoritative (V6/docs/ori-schema-evolution.md §3–§4 governs that store's own erasure and extension rules); cross-realm reputation and bans; platform economy state (Aje balances, purchases, entitlements, payout history beyond the operator's own statements); safety telemetry and moderation evidence held by Kuanyin/Sekhmet; any other realm's anything. These are the inviolable-plane items of features§"The Trust Boundary" — the same boundary that makes the guarantee credible is the boundary that limits it.

3. Export Format Spec — realm-export/1#

A zstd-compressed tar of content-addressed objects plus a signed manifest:

text
realm-export/
  manifest.json          # schemaVersion "realm-export/1"; realm id + registry
                         # lineage; export-cut timestamp + Nephthys sequence;
                         # scenario (voluntary|delisting|termination|sunset);
                         # object index (path → sha256 → bytes → class);
                         # consent census (counts only, no ids);
                         # license-receipt index; platform Ed25519 signature
  objects/sha256/<hash>  # content-addressed store: owned resources, assets
  lockfile.json          # the realm's pinned Ixchel lock file
  state/                 # Nephthys aggregate snapshots at the cut (JSONL,
                         # published Nàná aggregate schemas)
  ledger/                # double-entry economy journal, 24-month window
                         # (the retention of world-state-rollback.md §2)
  governance/            # Eunomia charter, proposal/vote record, admin audit log
  characters/consented/  # full records keyed by realm_player_id
  characters/pseudonymized/  # §2.3 fallback records keyed by xport:<hmac>
  MANIFEST.sha256        # flat digest list for offline verification
  • Deterministic: re-running an export at the same cut yields byte-identical objects and manifest (the golden-replay discipline of arch§"Testing, Eval Gates, and Golden Replays"); the §8 gate asserts it.
  • Independently verifiable: an open-source CLI, oshun-export-verify (proposed, ships with creator tooling — V7/docs/creator-dx-tooling.md owner), checks digests, the platform signature, and schema conformance with no platform connectivity. Trust artifacts beat trust assertions.
  • Sizing and delivery (planning assumptions adopted 2026-06-12): a busy Dedicated-256 realm ≈ 2–10 GB resources + ≈ 25 GB compressed 90-day event history + ledger ≈ 5–50 GB typical; delivered by signed URL, available 14 days per request, re-requestable. SLA: export ready ≤ 72 h from request for Dedicated tiers, ≤ 7 days for Meshed; max one full export per realm per 30 days (abuse/egress cap — incremental manifest-diff exports are uncapped).

4. The Self-Host Story — Where Platform Services Stop#

An export is data + code in open formats, not a turnkey server. Stated honestly, because a portability promise that implies the attested client and the safety stack come along is a lie:

Runs / usable from the bundle: the WASM resources target the published Moremi WIT interface, and state/ uses the published Nàná aggregate schemas — planning assumption adopted 2026-06-12: both specs are published under an open documentation license at GA, so the bundle is exercisable by (a) re-import into the platform (a new or restored realm — round-trip is supported and release-gated, §8), (b) any independent runtime that implements the published interface, or (c) plain data migration (the JSONL aggregates and ledger are self-describing).

Stops at the boundary (the features§"The Trust Boundary" never-delegated list, restated as exit consequences): platform identity (players on a third-party host need new accounts), the attested client and anti-cheat, Aje real-money economy and entitlements, the safety stack (Lilith, Kuanyin, Sekhmet scanning), Pheme voice infrastructure, managed Nephthys persistence, Abundantia distribution/discovery, and the Ori service. A departed realm keeps its world and its books; it does not keep the platform.

Sunset escrow strengthens this (§5): at platform sunset — and only then — the platform commits to releasing a reference headless realm-server build (or licensing it to the escrow agent) so sunset exports are runnable, not merely readable. Planning assumption adopted 2026-06-12; requires business + counsel sign-off before the operator terms promise it, and the terms say exactly what was signed off, no more.

5. Scenarios, Windows, and Notice Periods#

Planning assumptions adopted 2026-06-12 throughout this table.

Scenario Trigger Export window Scope
Voluntary departure Operator self-serve, any time Continuous right; post-archive, exports remain requestable for 12 months Full §2 set
Delisting (enforcement Stages 2–3, off-platform-monetization-policy.md §5; DPA enforcement, operator-data-protection.md §6) Kuanyin action 30-day export window from the delisting notice Full §2 set — delisting is a discovery sanction, not a data forfeiture
Termination for ToS/fraud (Stage 4) Kuanyin/Themis 30-day window; affected players notified at termination and given 14 days to revoke consent before the export cut Resources/config/state per §2.1–§2.2 honored (the Stage 4 commitment already in writing); character data per the re-confirmed consent snapshot; Aje reserves/holds follow economy rules and are never in any export
Termination for CSAM or other illegal content Sekhmet/Kuanyin + legal None for content No export. Content goes under law-enforcement preservation/legal hold (NCMEC reporting per the existing csam-hash pipeline); the operator receives only records the platform is legally required to provide. Nothing about portability creates a right to receive contraband back
Platform sunset Platform decision to wind down V7 90-day sunset escrow window from public announcement Full §2 set, auto-queued for every realm at Listed or above; exports delivered to operators and escrowed with an independent agent; §4 reference-runtime release; one platform consent-prompt broadcast — non-respondents after 60 days take the pseudonymized path (default stays deny)

Two cross-cutting rules: (1) the export pipeline runs the Sekhmet scan and IP-content matching (V7/docs/ip-content-matching.md) over every bundle — matched ripped assets are stripped and listed in the manifest as withheld, with the dispute path; an export must not launder what distribution would block. (2) Every export event (who, scenario, cut, consent census, withheld items) is recorded in the realm's compliance file and visible to the operator in the Operator Console — the same auditability posture as world-state-rollback.md §6.

6. Interaction with Federation and Migration#

  • Federated state: aggregates that traveled a character corridor or economy bridge (features§"Membership: Open, Whitelisted, Federated") export only the departing realm's side of the books; the counterparty realm's state is "any other realm's anything" (§2.4). Corridor treaties record this at signing (Themis template clause).
  • Inbound migration uses the same spec: the FiveM migration toolkit (community-migration.md §4) emits realm-export/1 bundles as its target format, so import tooling, verification, and the §8 gate are shared — one format, both directions. A community that joins V7 sees, on day one, the same bundle format it could leave with.

7. Why This Is a Wedge, Not a Cost#

The asymmetry: Rockstar cannot offer this for FiveM without unwinding its own acquisition logic (gap§Part A row A1 — the Cfx.re team was acquired Aug 2023 precisely to bring UGC in-house; gap§Part C — Project ROME, if real, is a first-party walled garden), and incumbent UGC platforms (Roblox) hold creator content in proprietary, non-exportable form. V7's trust boundary makes the guarantee nearly free: everything the operator may export was already theirs on the realm plane; everything they may not was never on it. The pitch to a flagship operator weighing a decade of community capital (community-migration.md §2.1): the downside of choosing V7 is bounded by a signed tarball you can verify today — the downside of staying is unbounded and has an Aug 2023 precedent. Sales enablement carries a live demo: export a demo realm, verify it with oshun-export-verify on the operator's own laptop, re-import it, diff the state hashes.

8. Evidence — The realm-export Gate and the Sunset Rehearsal#

What proves the pipeline works, in the V7/ADVERSARIAL_EVAL_GATES.md style (proposed addition to the inventory; owner: Nephthys + Abundantia; CI command pnpm exec vitest run --config vitest.config.ts -t "realm-export round-trip" plus a Rust state-hash harness in nephthys-replica-service):

  • Round-trip fidelity: a seeded fixture realm (owned + third-party-paid resources; world state; ledger with 10,000 journal entries; three characters — consented, non-consented, consent-revoked-mid-window) is exported, wiped, re-imported. Pass: re-imported state hash equals the export-cut shadow-projection hash (determinism guard); ledger debits/credits re-sum to the cent; deterministic re-export is byte-identical.
  • Consent enforcement: the non-consented and revoked characters appear only under characters/pseudonymized/; seeded personal-data canaries (name, record entry, free-text bio) occur 0 times anywhere in the bundle; the HMAC pseudonym is unlinkable after K_export destruction (linkage attempt must fail).
  • Plane isolation: platform-plane canaries seeded in the platform store (platform user id, email, Aje balance, cross-realm reputation field) occur 0 times in any bundle byte.
  • Licensing and abuse: third-party paid resource bytes absent, license receipt present and verifiable; a seeded IP-matched asset is stripped and manifest-listed; a seeded CSAM-hash fixture blocks the export entirely and routes to the preservation path.
  • Tamper-must-fail: disabling the consent check or the IP/Sekhmet scan in the implementation must turn the gate red (the inventory's standing adversarial-proof requirement).

Operational evidence: export SLA (§3) tracked as an Operator Console metric (target ≥ 99% of exports within SLA, quarterly report); one annual sunset rehearsal — the 90-day machinery run end-to-end against a 10-realm staging cohort on a compressed clock, including the consent broadcast, escrow delivery, third-party verification of every bundle, and one re-import — feeds the incident-response drill gate (features§"Launch Readiness"). First rehearsal is an entry requirement for the rollout stage that opens Verified listing at scale (features§"Region Rollout Strategy"); a failed rehearsal blocks that stage until re-run green, the same fail-closed footing as the other V7 gates.