VA.2026.011 · Floor 01 · hall 11
“anyone can speak; staying in character for thirty-five turns is the exhibit.”
VA-Chat is the how of speech, nothing else. Who is meant arrives from an identity bridge, what happened stays in memory, how things connect lives in the graph — this room only turns a definition seed into a composed persona, runs it through a language model, and enforces that the reply stays in character. No persona is hardcoded here; every quirk — address terms, occupation, lore — is pulled dynamically per turn, so registering a new identity needs no change to the runtime.
The composition splits the persona into canon and improvisation: the canon declares personality, lore, and history that later replies may embody but never contradict, while improvisation is allowed only its momentary feeling. A scene string, opaque to this library, grounds every claim about place or activity — without it, the voice is forbidden from inventing a life. Speech-act hints steer gratitude, farewell, venting, and identity probes toward the last thing the visitor actually said.
Guarantees are preventive, not detective. Dynamic patterns built from the resolved name catch identity misses and force a retry; greeting and support-bot closings are rejected and recomposed; a two-detector taxonomy flags drift, collapse, and topic jumps across long conversations. The subject's voice is withheld from every seed in this hall — probes run against anonymized masks — because the exhibit studies how a voice holds, not whose voice it is.
VA.2026.011
VA-Chat
Chat Runtime · Persona Compose · LLM Orchestration · TypeScript Library
Library shell plus validated shapes; persona composed as natural prose where traits never glue themselves to job titles.
Chat service over a model client reads keys from environment; production compose body becomes the primary contract.
Unit, smoke, and gated live suites green; seven probes pass and thirty-five-turn conversations hold character with zero cross-mask leakage.
Long-conversation and grounding revisions land scene contracts, speech-act handling, and frozen compose boundaries — shipped as documented proof.
HTTP adapter and persistence wait as plan documents; the library stays framework-free until then.
An isolated memory bridge and composer layer let recall arrive as context without the chat library ever importing the memory engine.
Reasoning blocks are stripped from replies, and a compose path returning an error or non-JSON now falls back instead of surfacing a broken turn.
Assertiveness became structural: the persona may push back, complain, or refuse, with provoke and defend as declared speech acts rather than accidents of tone.
A shared time describer plus time-pattern guards, so a greeting at the wrong hour is caught before it leaves the room. Exported as part of the library barrel.
concepts — kept & discarded
kept — persona-agnostic runtime; zero hardcoded identity in the library
rejected — direct imports of identity or memory; only opaque bridges cross
held — HTTP route and persistence wait for phases 05–06
archive ref — VA.2026.011/CON
cross ref — timeline fig. 01
curator annotations
a runtime that names its personas has already failed — pull them, never keep them.
without a scene the voice may feel; it may not claim to have been anywhere.
detect the miss cheaply, pay for the retry gladly — vagueness costs more.
| materials | persona compose · identity bridge adapters · speech-act hints · auto-mustMatch retry · turn-flag detectors · live + long-convo harness | dimensions | phases — 04 core + 02 planned · contract guards — A1–F2 · live probes — 7/7 · long-convo — ~35/35 clean · cross-persona leak — 0 |
|---|---|---|---|
| condition | proven · 7/7 live probes · ~35/35 long-convo clean | acquired | 2026 |
| revision | Rev. A | archive location | DWG-011 · floor Floor 01 |
| internal reference | VA.2026.011/M | origin | split off where replies kept slipping into helpdesk tone, 2026 |
failed experiments
without scene grounding the voice claimed places and activities it never had. scenes are now mandatory for physical claims.
replies decayed into assistant closings over long runs. in-character asserts now reject and recompose them.
the evaluator punished echoed visitor facts as leaks. user-facts and subject-facts are now judged apart.
draft concepts
research notes
— canon versus improvisation is the only split that stops invented life facts without flattening tone.
— exact patterns beat blended scores for names — let the certain short-circuit first.
— evaluators need the same fairness as models: visitor facts are not leaks, only subject facts are.
The runtime owns no persona. Every turn resolves its mask fresh from the bridge — that is why a new identity costs the library nothing.
A guard that only reports drift is a critic; this room retries instead. The reply the visitor sees has already survived its own correction.
Emotion is always allowed its moment; facts are never allowed invention. The scene decides which claims the voice may make.
within the collection
future vision
VA-Chat stays a library until phases five and six: an HTTP adapter for consumers that want a route, persistence for those that want a record. Until then it keeps proving the same thing nightly — that a voice with a contract can hold itself for thirty-five turns without becoming anyone else.