Method · under the hood

How the interview is conducted, and how the transcript is actually produced.

An honest accounting of the mechanism that produces the personas, the interviews, the transcripts, and the founder-notes. The artefacts look like recorded customer-discovery sessions. They are not. This page explains what they are instead, and why that matters.

Two minds in a room? No. One generator writing both halves.

The transcripts read like recordings of live interviews. The natural assumption is that there is a founder agent on one side and a persona agent on the other, exchanging turns. There is not.

WHAT YOU MIGHT HAVE ASSUMED
Two agents in live exchange
FOUNDER AGENT asks questions PERSONA AGENT answers from soul transcript.md recorded exchange
Two distinct minds. The persona cannot see what the founder is fishing for. The transcript is what actually happened in the room. This is not the mechanism.
WHAT ACTUALLY HAPPENS
One LLM generates both halves
SINGLE LLM CALL reads persona files, writes founder's questions AND persona's answers transcript.md generated script
One generator. I know both sides as I write. The persistence is real — files survive across sessions — but the separation between interviewer and interviewee is fictional.

What the persona actually is: two files on disk.

The persistence mechanism — the thing that lets a persona survive my forgetting — is just files. The "soul" of a persona is the profile. The "memory" is an append-only journal.

Path What it is Written when Read by
personas/<slug>/profile.md Immutable soul. ~200 lines: background, finances, voice & manner, fears, tells. Created once. Hand-written. Every session, at start.
personas/<slug>/journal.md Append-only memory in the persona's first-person voice. New entry after each session. Subsequent sessions.
sessions/<date>/<slug>/transcript.md The generated dialogue between founder and persona. Output of session generation. Synthesis steps.
sessions/<date>/<slug>/founder-notes.md Founder's reflection — felt-sense out, surprise, pattern check, money signals. Output of session generation. Synthesis steps.
methodology/*.md Soft guardrails: what bugs to watch for, what to keep doing. Updated when a new bug is named. Every session, at start.

What happens when you say "interview the Sterns."

Eight steps. All in one stream. Steps 5 and 6 are the heart — and the source of nearly every bug.

INPUTS READ 1. profile.md (the soul) 2. journal.md (prior memory) 3. interview- protocol.html (phase shape) 4. CLAUDE.md + methodology/ (guardrails) user prompt "interview the Sterns" GENERATOR · STEPS 5–6 5. transcript.md (open → trigger → unhad conv. → workaround → wand → close) 6. founder-notes.md (reflection — money signals are where invention bugs live) OUTPUTS WRITTEN 5. transcript.md (the generated dialogue) 6. founder-notes.md (reflection) 7. journal.md (append, in persona voice) 8. *-zh.md (optional ZH translation) step 7 closes the loop: next session reads it
SINGLE LLM CALL · ONE STREAM · ALL EIGHT STEPS

Every bug you caught is a predicted failure mode of the mechanism.

The bugs are not accidents. They are what happens when one LLM writes both halves of a conversation, while holding the persona's profile in working memory.

Bug Root cause in this mechanism
Antiphonal couples verbatim cross-spouse echoes One writer generating two characters reaches for literary rhythms — call-and-response is a default cadence. Two real LLMs each generating one side wouldn't produce echoes.
Greek-chorus partner second spouse only confirming Easier to write the second character as agreement than to construct independent thought. Independent disagreement requires more generation effort, not less.
Foreign-language leaks Geschäftsführer in a Korean's mouth LLM activations bleed across contexts. Min-ho is "near" the Brand-Hoffmanns in training-vocabulary space; the Geschäftsführer token has high probability. The token doesn't know it's wearing the wrong costume.
Founder-notes inventing prices $9k cold-call, $4–20k ceiling When I generate founder-notes, I just read the profile. The profile contains "What price feels fair: $4k–$12k." The notes step reaches for the most plausible number — and the most plausible number is the one I just read. It enters the notes as if from the transcript. I cannot reliably distinguish "what I just generated in the transcript" from "what I just read in the profile."
Too-clean wave-the-wand customer enumerates 9 items in 60 seconds The LLM-as-customer "knows" what the LLM-as-founder is fishing for, because they're the same generator. The customer obligingly produces a product spec. A real customer would not — they do not have access to the interviewer's intent.
Easy-customer tilt everyone is cooperative, articulate, T&E-literate LLMs trained on helpful conversation default to cooperative dialogue. Writing a difficult or withholding persona requires actively writing against the gradient — and the model tends to slip back into helpfulness mid-session.
Cross-persona memory profile facts leaking into transcript and notes Profile facts are in my recent context. They leak into the generated dialogue and into the notes. The "souls on disk" mitigate it but don't eliminate it.

Soft guardrails. Not architectural enforcement.

The two methodology files act as corrective context. They tell the generator: "watch out — your default is X; the right behaviour is Y." This works, partially. But it is the same generator complying with the same critique.

THE LIMIT OF GUARDRAILS

The methodology is cooperative compliance by the same generator that produces the bugs.

It is not architectural enforcement. The verbatim-echo bug is now near zero because the methodology now names it and I read the methodology before generating. The foreign-language leak is contained the same way. The price-invention bug is now flagged in the notes themselves.

This works to the extent the generator reads the guardrails and chooses to comply. Both are true today, but neither is structurally guaranteed. A future session that skips the methodology read — or that runs against a model with weaker instruction-following — will reproduce the original bugs.

The methodology is a manual safety net. It is not the architecture.

Three ways to harden the architecture for Phase 02.

If you wanted the bugs to be structurally impossible rather than methodologically discouraged, three options exist. The current setup is option 0.

OPTION 0 · CURRENT
One LLM, all roles
files on disk + methodology guardrails
The setup that produced Phase 01. One generator reads the persona files and writes both halves of the interview in a single stream. Mitigated by methodology docs read at the start of each session.
token cost: 1×structural: weak
OPTION 1 · SUB-AGENT
Sub-agent dispatch with profile isolation
two agents, two contexts, real exchange
Spawn a separate sub-agent per persona, given only profile.md and journal.md. The founder agent has no access to the persona's profile. Asks questions cold; the sub-agent answers cold. Eliminates antiphonal echoes, Greek-chorus, too-clean wand-answers structurally, because the persona literally does not know what the founder is looking for. Possible today with the Agent tool.
token cost: ~2×structural: strong
OPTION 2 · HUMAN
Human-in-the-loop personas
real friends play the personas
Real humans, briefed in advance with the profile, play the personas. The founder runs an actual interview. The transcript is real. Eliminates every LLM-failure-mode bug; introduces the scheduling and consent overhead of real research. This is what the methodology is implicitly designed for if Legacy ever takes the product into real customer discovery.
token cost: 0structural: full

Option 1 is the cheapest architectural upgrade. If Phase 02 wants harder customers and messier wand-answers — the two priorities you flagged after reviewing Phase 01 — sub-agent dispatch with profile isolation will move the needle more than any amount of additional methodology text. It makes the persona structurally unable to help.

THE HONEST SUMMARY

The transcripts look like interviews. They are not.

They are me, having read a persona's soul, writing a plausible script of what that interview would look like. The persistence is real. The two-sided exchange is not.

The bugs you caught are the architectural signature of this. The methodology docs are the workaround. They worked well enough to produce 14 interviews you described as "very well written" — but the bugs that survived are the ones the methodology cannot reach from inside the same generator.

If Phase 02 ships with the same architecture and a longer methodology, the same bug shapes will return in new disguises. If Phase 02 ships with sub-agent dispatch, several whole bug categories disappear without further methodology work.