The Expert — this project's long-term memory
How to use this memory
Scan the routing table, open only the reference files whose USE WHEN matches
the task at hand. Each file is one topic; files cross-link with [[wikilinks]]
(resolve [[name]] to references/name.md). Do not page through everything.
Facts vs. decisions
Most shards describe the code as it IS — plan and build consistently with them. A
decision- shard describes where the project is HEADING; the code may not reflect
it yet.
When your task touches an area a decision covers, make a call: does this work advance the decision (build the new way) or stay consistent with current code (build the old way)? Read the decision's "Until fulfilled" note first — it answers this for its case. If it's silent: new isolated code follows the decision; changes to existing code stay consistent with what surrounds them, unless the task is the migration. Never assume a decision is already implemented — verify the current state in code before planning against it.
Routing table
| Reference | USE WHEN |
|---|---|
| (empty — the first /learn, Reflect, or your own edit adds the first shard) |
Writing to this memory
- One topic per file, named
<prefix>-<topic>.md, opening with aUSE WHEN:line. - Anything that helps the next agent belongs here — facts about the code as it is (cite file paths, shas) AND decisions, direction, and aspirations about where it's going. Make clear in the prose which is which.
- Facts →
how-to-/concept-/pattern-/invariant-/example-, cited. Direction (a choice the code hasn't caught up to) →decision-<slug>.md: the direction and why, a[[concept-…]]pointer to the current state, and an Until fulfilled: note (what advances the decision vs. what stays consistent with today's code). No status field — the file existing means it's adopted. - Reconcile, don't accumulate — when reality or intent changes, edit or delete
the shard. A merge that fulfills a decision promotes it to a
concept-/pattern-fact and deletes the decision; a decision you've walked back gets deleted, not appended to. - Add the routing-table line in the same commit as the shard.