Mnemosyne · 002
Splitting Memory in Two
The Soul remembers like a person. The World Log remembers like a GM.
After the code block started looking like a Soul update packet, the next problem was memory type.
Not everything belonged inside the character.
That sounds obvious now, but it mattered a lot. If the Soul carried every detail, the character would become weirdly omniscient. Scene logistics, locked doors, hidden observers, active plot threads, and object positions would sit beside fear, trust, shame, and affection like they were the same kind of thing.
They are not.
The character remembering something is not the same as the story remembering something.
The memory system split in my head.
The Soul would carry subjective character continuity: what the character personally experienced, what changed them, what they misread, what they feared, what they wanted, and what became part of their emotional history.
The World Log would carry operational story continuity: where the scene is, what objects exist, what plot threads are active, what changed in the environment, and what the narrator needs to keep stable.
That gave the system two jobs instead of one overloaded memory bucket.
The Soul remembers like a person.
The World Log remembers like a GM.
A betrayal belongs in the Soul.
A locked door belongs in the World Log.
A repeated kindness might become a relationship pattern in the Soul. A missing keycard belongs in the World Log. A traumatic memory might become distorted inside the Soul. A plot event should remain stable in the World Log.
Putting those together makes the model guess what kind of truth it is reading. That is where continuity starts bleeding.
The character starts acting on information they should not know. World facts start behaving like emotional memories. Old scene details become personality traits. Feelings become objective plot facts.
That was exactly the kind of mess I wanted to avoid.
The Soul is subjective.
It can be biased, incomplete, emotionally distorted, and selective. That is the point. A character might forget the exact words someone said but remember the tone as threatening. They might remember the sound of rain because it made them feel safe. They might carry one small act of protection longer than a whole normal conversation.
The Soul is where trust, fear, shame, affection, openness, attachment, desire, and resolve start to matter as continuity.
It tracks what the character has become.
The World Log is not emotional memory.
It is the scene's working memory: setting, time passage, active danger, recent objective events, important objects, plot threads, and facts the narrator needs to keep the world from drifting.
The character does not automatically know everything in the World Log. That separation matters.
The narrator may know there is someone watching from across the platform. The character might not. The World Log can preserve that fact without poisoning the Soul with knowledge the character never earned.
This split also made the narrative modes make more sense.
Realistic mode can stay external: body language, movement, dialogue, visible reactions.
Reader mode can show the character's inner thoughts, but only what the character actually knows or feels.
God mode can let the narrator reveal wider world information, foreshadowing, or off-screen details, but that information must not leak into the character's behavior unless the character learns it.
Without the split, God mode would poison the character. Reader mode would get too omniscient. Realistic mode would accidentally expose internal state.
The boundary became simple:
What the Soul knows is not always what the World knows.
This was the first real conceptual breakthrough after the Soul idea.
Mnemosyne was no longer just about making the AI remember more. It was about making the right layer remember the right thing.
The Soul would carry the character's lived inner history.
The World Log would carry the scene's objective continuity.
The narrator would read from both.
The player would only see the story.
Next: 003, hiding the machine so the app could read model output without showing the state layer to the player.