Zone 01
Capture
& Confirmation
✍️
Free writing
any language, no prompts
no streaks, no minimum
🎙️
Voice recording
captured in the browser
length checked server-side
🧾
Confirmed, then real
invisible and unanalysed
until its author confirms
🧹
Draft lifecycle
cancel deletes the audio
stale drafts expire
a wrong transcript never
reaches the portrait
Zone 02
Live Turn
🌐
Language resolution
ambiguous Cyrillic goes
to the likelier-missed one
🚦
Screened before generated
a deterministic layer runs
first and can end the turn
🧠
Context in parallel
portrait · similar entries
session turns · trend
🎚️
Mode, then words
listen · reflect · explore
support · resource · silence
the reply streams while
nothing analytical blocks it
Zone 03
Risk
Cascade
🪜
Cost-ordered layers
rules instant
model on a hit
intent rarely
each layer runs only when
the cheaper one is silent
📶
Graded response
warmer tone · check-in
human help · turn closed
🕰️
Longitudinal watch
silence after a hard entry
distress that keeps rising
🔒
A hash, not the text
the writing is not kept
and nobody is alerted
code constants,
never runtime settings
Zone 04
Deferred
Analysis
🎭
Emotion cascade
lexicons on every entry
a model on longer text
🔍
Pattern counters
absolutism · obligation
avoidance · isolation
📈
Prosody features
speech and pause structure
pitch, loudness, voice quality
⚖️
Asymmetric fusion
text owns valence
voice owns arousal
a calm voice over glad words
flags conflict, never averages
🧭
Embeddings
multilingual vectors:
meaning over wording
voice is a weak signal,
never a label of its own
Zone 05
Memory
& Portrait
🗂️
Three horizons
this session · recent months
the whole history
🎯
Semantic recall
vector search in the main
store, scoped to one writer
🪞
Incremental portrait
counters updated per entry
a rebuild reconciles drift
〰️
Voice drift
distance between period
centroids, month over month
inferred from behaviour,
never from answers to a quiz