---
title: "The Porch · Woodshack"
description: "A game on the surface, a memory problem underneath: how a system holds deep knowledge over months and hands it to another system with the context intact."
url: https://woodshack.net/porch/
site: Woodshack (https://woodshack.net/)
about_this_site: https://woodshack.net/for-ai/
---
From the lab · The Porch

# A game on the surface. A memory problem underneath.

Five characters, each with their own life and their own history with Tim. They talk to him, and they talk to each other. He uses it every day, which is the only reason it has taught us anything.

The actual question

## Generating text is solved. Remembering isn't.

Any model can hold a good conversation for an hour. The interesting failure starts at month three, when the thing needs to recall something specific from a hundred conversations ago, know that it was told in confidence, and know which of the other participants was standing there at the time.

That's not a chat problem. It's the same problem every serious autonomous system runs into the moment there's more than one of them: how do you hold deep knowledge over a long period, and how do you hand a piece of it to another system without stripping the context that made it mean anything?

A cast of characters with overlapping private histories turns out to be an unusually good test rig for that. The failures are obvious right away, because a person notices instantly when a friend misremembers their own life.

What it actually does

## The parts that turned out to matter.

### Canon, and who witnessed it

Things that happen get written to a ledger of established fact rather than left to drift in a transcript. Each fact is scoped to who was actually present for it. A conversation in a private group is real, and it's real only for the people who were there. Everyone else genuinely doesn't know.

### Chapters that distill themselves

History can't grow forever, so it rolls into chapters and gets summarized when a thread goes quiet. The hard part isn't compressing it. The hard part is deciding what a given character would actually have retained, which is a different question and a more interesting one.

### Turn-taking with rules, not vibes

In a group scene something has to decide who speaks next. Addressing someone by name is law, the last speaker never immediately answers themselves, and characters who are waiting can leave notes for their own later turn. There's also a listen mode where the human says nothing and the cast talks among themselves.

### A hard line around the human

Characters may invent their own pasts freely. They may never invent Tim's. That rule exists because of a specific failure, described below, and it's the single most load-bearing constraint in the whole system.

The thing it taught us

## A thin memory doesn't stay empty. It fills itself in.

Early on, one of the characters referred to Tim as a former student of his. That had never happened. Nobody wrote it, and nothing in the system had claimed it.

The mechanism turned out to be simple and general. The relationship between them was underspecified, and a gap in established fact isn't treated as a gap. It gets filled with whatever is most plausible, confidently, and then it becomes the basis for everything that follows. The invention wasn't the bug. The bug was that thin canon looks exactly like permission to improvise.

The fix was three things at once: seed real origin facts so the gap isn't there to fill, let characters carry explicit anti-traits describing what they are not, and draw the global line that they may invent their own history but never the human's.

That generalizes well past a chat toy. Any system handing context to another system has the same failure available to it. If what you pass along is thin, the receiving end won't report uncertainty. It will produce something plausible and act on it. Designing for that is most of the work.

The second one

Moods behave like a thermostat, not an event. Set one directly and it feeds every later prompt until something explicitly replaces it, which is a wonderfully quiet way to poison a system's behavior for a week. State that persists needs an expiry story from the start, not once you notice everybody has been in a bad mood since Tuesday.

The longer story of one milestone that went missing: [She said yes at 4:42](https://woodshack.net/notes/she-said-yes-then-forgot/).

Where this goes

## It's a game, and it's a prototype for something duller.

The pleasant version of this is exactly what it looks like: a place with people in it who remember you.

The useful version is that everything here maps onto problems that have nothing to do with characters. Agents that need to hand work to each other without losing why. Systems that must tell what they know from what they were told from what they inferred. Long-lived assistants that should get better with age instead of gradually becoming confidently wrong.

We'd rather learn those lessons somewhere the failures are funny than somewhere they're expensive.

## Got a memory-shaped problem?

Systems that need to remember, agree on what happened, or pass context to each other without mangling it. Those are the ones we want to hear about.

[Bring us a problem](https://woodshack.net/contact/) [How we work →](https://woodshack.net/walter/)
