The format draws one line, and it is drawn in the schema rather than in a licence. The file carries what the generator decided. It never carries how it decided.
What travels
A description for each moment. themes. An emotionalWeight and a sensitivity, each a number. Focal coordinates. Transcripts. segments and a narrativeSummary. A role for each person and a coarse roleGraph with a closeness band. The presentation hints: pace, order, sections, the soundtrack. The owner’s declared emotion, redacted in the open tier. A resolved order when the author meant it. Every one of these is a value a reader can act on without knowing how it was produced.
What stays with the generator
The scoring and its weights. The rule that assigns a viewer their version. The viewer-conditioned rendering method. The enrichment model and its prompts. The tuned closeness matrix the bands were cut from. Real-world names in the portable tier. None of these ship in any .mem, any tier, or any SDK.
Why it protects the family
A file that depends on a particular engine to be readable is not a file, it is a cache. Carrying values means any reader can play, narrate or lay out the memory today and in twenty years. And because names never travel in the open tier, a memory can be handed to a stranger’s software without carrying anyone’s identity.
Why it protects the format
Reading a million finished .mem files reveals the scoring no more than reading a million PDFs reveals the layout engine that made them. That is what lets the spec be fully open: the thing worth protecting is the authorship, and it is not in the file.
What it means for your player
You get a good generic play: emotion-weighted, with the hints honored. The per-person version comes from Memoresse’s renderer. In practice, when you read emotionalWeight: 0.82, trust it as a value. Do not try to recompute it; the file does not give you enough to, by design.