Forward-deployed / Learning zone
Memory & contexta Generative AI module
Lesson 01

Memory as a product decision

TL;DR

A model has no memory of its own. Every time it seems to remember something — what you said five minutes ago, a preference from your last visit — your product engineered that by putting the relevant information back in front of it. Memory, in an AI product, is never free infrastructure that comes with the model. It is a feature your team builds, with a real engineering cost, a real ongoing storage and privacy cost, and a real promise made to the user about what will and won't be carried forward. Framing it this way changes the first question a product leader should ask about any AI feature: not "does it have memory?" but "have we decided, on purpose, what this feature should remember, for whom, and for how long — and does our product actually deliver on that decision?"

🎯 For the product leader

Why it matters — Memory is one of the few AI capabilities that reads as "magic" to users when it works and as a genuine trust violation when it works in a way nobody intended. Both outcomes come from the same underlying mechanism; only the product decision around it differs.

What it changes in your decisions — You treat "should this feature remember anything, and what" as an explicit product spec, with an owner and a written answer — not an emergent property of whatever the engineering team happened to wire up.

Ask yourself — "If a user asked us, in plain language, 'what do you remember about me, and for how long,' could we give them a true, specific answer today?"

Risk if ignored — A feature either frustrates users by forgetting things they reasonably expected it to keep, or unsettles them by remembering things they assumed were forgotten — and nobody on the team can say which behavior was actually intended.

The mental model: a promise, not a switch

"Memory" is not a single feature you turn on. It's closer to a set of specific promises: this detail will carry forward within a conversation, that detail will carry forward across visits, this other detail never leaves the current session. Each promise has a cost (engineering to build it, storage to hold it, a burden to keep it accurate) and a risk (privacy exposure, staleness, the discomfort of being remembered too well). Treating memory as a bundle of specific promises, rather than one on/off capability, is what turns a vague feature request into something a team can actually design and test.

The decision

Should this be remembered? · answer on purpose, not by default

The user controls what's kept — every stored item is a promise the product now owes them.

A user's information appears in a conversation
Should this be remembered?
No · session only
Discarded at session end

The default when nothing is decided

Yes · for this user
Stored as a promise

What · how long · visible to whom

User controls the whole loop
See · retrieved on future requests
↔
Correct · edit or delete

Why this needs a deliberate answer, not a default

Two default failure patterns show up constantly, and both trace back to memory being treated as an afterthought rather than a spec. The goldfish product — nothing is ever remembered, so a user re-explains their situation every single time, and a feature that could feel personal instead feels indifferent. The oversharing product — everything a user ever said gets stored and resurfaced indiscriminately, including things the user would never have expected to persist, and the first time that surfaces at the wrong moment, the trust cost is far larger than the convenience the memory ever bought. Neither extreme is a technical failure. Both are the predictable result of nobody deciding, on purpose, what should be remembered.

The question that actually scopes the feature

Before any engineering work starts, a memory feature needs an honest answer to four parts of one question: what specifically gets remembered (a preference, a fact, a whole transcript), for whom (this user only, everyone on their team, no one — session only), for how long (forever, until explicitly cleared, on a rolling expiry), and who can see or edit it (only the user, an admin, nobody but the system). A feature that can answer all four specifically is ready to build. A feature where the answer to any of them is "we'll figure that out later" is not — and "we'll figure it out later" is exactly how oversharing and goldfish products both get built.

Why users notice this more than most AI behavior

Most AI quality problems are graded on a curve — a slightly awkward summary or an imperfect answer is forgiven as "the AI being the AI." Memory failures are graded differently, because they read as personal. Being remembered correctly feels like being understood; being remembered incorrectly, or having something resurface that felt private, feels like a violation, not a bug. This asymmetry is why memory deserves more product rigor per feature than most AI capabilities get, even though the underlying engineering — covered in full in Context engineering and Context & memory — is the same discipline behind any AI feature's context management.

Failure modes

Practitioner checklist