> Full SurrealDB documentation index: https://surrealdb.com/docs/llms.txt

# Calgary 1912-1913 explorer

A walkable Calgary built from two volumes of Henderson's Calgary Directory in SurrealDB Agent Memory, showing fidelity tiers, fine-grained scopes, the record view and a report that can be rewound.

SurrealDB Agent Memory Explorer is a game set in the Canadian city of Calgary in October 1912 and again in 1913, either side of the city's land crash. Every door, name and trade in it is a line from *Henderson's Calgary Directory* for those two years, held in SurrealDB Agent Memory. You walk the streets, speak to the residents, and write a report on how the town changed between the two volumes.

[Play the game](https://surrealdb.com/agent-memory/game) in its own tab. The game uses the keyboard: the arrow keys move you, space speaks to or looks at whatever you face, and **Esc** closes a window. **I** opens a page on the other controls.

## As you play, note the following

- **Each answer comes from a scope.** A resident's own door, their block, their trade and the whole city are separate scopes, and a resident can read only the scopes that fit what they would know. Press **R** while speaking to somebody to see the record behind what they said, with the scope it came from.
- **The scopes are arranged in tiers of fidelity.** The game groups its scopes by how close they are to the resident, and the colour of each word tells you which tier it came from.
- **The report is a record of what you learned, and when.** Press **D** to open ("draft") it, and use the arrow keys to see it as it stood at any earlier point in your walk.
- **Nothing a resident says is generated.** The sentences are fixed wording, filled in with values from the memory. Claude writes only the closing paragraph of the report, and only from figures already on the page.

## Fidelity

Fidelity is how this game arranges its scopes, not a field Agent Memory stores. The narrower the scope, the more detail it holds, and every resident can read three tiers:

| Fidelity | Colour | What it covers |
| --- | --- | --- |
| Full | White | The resident's own entry in the directory: their name, trade, employer and door |
| Partial | Green | Their block, and others in the same trade: what somebody hears from neighbours and workmates |
| Vague | Pale blue | The city as a whole, with counts and no names |

The coloured words in an answer are the values taken from the memory, and the dimmer words around them are the fixed wording of the sentence. Every coloured word is a value from the directory, and the colour says which scope it was read from.

A vague answer also depends on the resident's position in the town. Somebody living with six or more roommates describes the city differently from a householder who keeps a whole house, and a builder who lost work when the permits stopped differs again.

![A conversation with John Law, a baker. White words give his own entry, and a legend at the top right names the three tiers: full at their own door, partial on their block, and vague for the whole city.](~/assets/img/spectron/calgary/conversation-fidelity.webp)

## The record view and scopes

Press **R** while speaking to a resident to replace their speech with the record it came from: the fields the canvasser filled in, with the scope and fidelity of the read. The scopes are fine-grained. A question about a resident's own household reads a scope such as `1913/house/thirteenth-avenue-east-303` at full fidelity:

![The record view for John Law at 303 Thirteenth Avenue East in 1913, showing his fields under the scope 1913/house/thirteenth-avenue-east-303 at full fidelity.](~/assets/img/spectron/calgary/record-view-house.webp)

A question about others in the same line of work reads `1913/trade/baker` at partial fidelity. Every baker in 1913 can read that scope, so each one can name others in the trade:

> "There are about 30 of us at that work in this part of town. John MacWalter at 512 First Avenue West, a baker; John MacWalter at 508 First Avenue West, a baker; John A Russell at 502 First Avenue West, a baker. You hear about each other."

![The record view for the same question, listing 29 bakers under the scope 1913/trade/baker at partial fidelity.](~/assets/img/spectron/calgary/record-view-trade.webp)

## The report

Press **D** at any time to draft your report. It sets down what you have established and what you have not, and every figure in it is a count of what you were told. A table compares 1912 with 1913 for the blocks described to you in both years.

Each fact carries the moment on your walk when you learned it, so the left and right arrow keys show the report as it stood at any earlier point, with its sums and gaps as they were then.

![The field report at an earlier point in the walk, with a slider for moving through the report's history and a table comparing the two years.](~/assets/img/spectron/calgary/report-rewind.webp)

Residents round their figures the way a person would, so the report carries a margin on each figure it adds up. "About twenty" stays "about twenty" in the report, while the notebook keeps the exact count.

## Everyone you have met

Press **N** to open the notebook. It is like the report, but it keeps to the people you have met: their trades, the blocks they described to you, and what changed on those blocks between the two years.

![The notebook listing four of the 7,499 people in 1912 by trade, and a table of what those blocks held in 1912 and 1913.](~/assets/img/spectron/calgary/people-met.webp)

## What you see walking

Walking along a block records what was on the screen: how many doors, how many with nobody about, and how many sign boards. The figures are rounded, the way somebody walking past would round them, so this is the least precise information in the game. It also covers ground nobody can tell you about, since a block where nobody lives has nobody to ask.

![Riding along the 300 block of Fourteenth Avenue East, with a caption noting a crowded block of more than 30 people at these doors.](~/assets/img/spectron/calgary/walking-block.webp)

The report draws what you have seen as a map of the town rather than a percentage, so you can see which blocks you walked and which looked busier:

![The report's map of every block face in the town. Shaded cells are blocks walked, darker cells looked busier, and a red line marks a block somebody counted door by door.](~/assets/img/spectron/calgary/report-walked-map.webp)

## Shops and firms

The directory prints a firm twice without connecting the two: the street section gives its door, and the alphabetical section names it in the occupation column of people living all over the town. The game joins the two, so an open door with a mat on the step is a firm you can enter, and the people on its books are behind the counter between eight and five.

![Inside the Dominion Cartage Company at 216 Ninth Avenue East, speaking to Bert Harris, a teamster, who says the book lists him here in its occupation column.](~/assets/img/spectron/calgary/shop-conversation.webp)

Each room has a day book on the counter. With people inside, it says who they are and where the joined record came from, which helps in a large firm. A room with nobody in it has a day book saying that nobody on the map names the firm, and whether the other year's volume does.

![The day book of the Dominion Cartage Company, listing two teamsters and a manager and explaining that the page joins two entries the directory never connects.](~/assets/img/spectron/calgary/shop-day-book.webp)

The directory describes no interiors, so every fitting in a room is placed for the period, chosen from the trades of the people who work there.

## Searching

Press **/** or click the search bar to find a place or a person. Try a kind of place such as `cafe` or `church`, a trade such as `stenographer` or `solicitor`, or your own surname. Choosing a result puts up an arrow for you to follow to the door.

![Search results for cafe, listing cafes on Eighth and Ninth Avenues, then the people who work at them.](~/assets/img/spectron/calgary/search-cafe.webp)

![Search results for macleod, listing residents with that surname and its spelling variants, with their addresses and trades.](~/assets/img/spectron/calgary/search-surname.webp)

## Looking at buildings and objects

Press space to look at anything in front of you: a building, a privy, a fitting in a shop. The description says whether the thing came from the directory or was placed for the period.

![The description of the Grain Exchange at 608 Tenth Avenue East in 1912, noting that nobody is recorded living there.](~/assets/img/spectron/calgary/building-description.webp)

Press **R** to see the record behind a building as well:

![The record view of the Grain Exchange, giving the object, its address and its source volume.](~/assets/img/spectron/calgary/building-record.webp)

## Related pages

- [Contexts and scope](/docs/agent-memory/mental-model/contexts-and-scope.md): how scopes are set on writes and reads.
- [Temporal validity](/docs/agent-memory/reasoning/temporal-validity.md): the known time that lets the report be rewound.
