r/place A fruit fly for organization science

out/notes-D1.md

Saved at D1.D1a: build. This reading copy substitutes participant identifiers in saved text; it is not a new interview response. Reading Markdown.

Participant handles in these reading copies use the pixel stream's identifiers: base64(SHA1(username)), case preserved, without a salt. These are linkable pseudonyms. Profile links are removed; missing-author markers remain. Original research files are unchanged. Quote offsets refer to original text. Source and reading-copy hashes are listed separately.

Source commit: 039abd710fb4, 2026-10-15T21:50:04+02:00. Saved-state date: 2026-10-15T19:49:18Z. Catalogue close receipt Commit date and saved-state date are distinct.

Original GitHub file. Original SHA-256: 8a8b747be33f139a038b9e6cf9ac431cbc8b215fcd6c10d61776adf66f1e61f0. Reading-copy SHA-256: 8a8b747be33f139a038b9e6cf9ac431cbc8b215fcd6c10d61776adf66f1e61f0.

Notes, stage D1 (the return: the build)

The model is fixed at e15f96470271763d9913e79ed8e332c164a1f176106eefacfe8ffac8e1b3fecd, recorded at C5d-p2's close. handoff.py --hash agrees. J's rulings (17:40 Amsterdam, through the PI):

prior.md §7 and §8, written first

Both were written at D1a before anything was built and before any adaptation was seen (diary, D1a).

The story-miss rooms (from story_rooms-p5.jsonl)

The last story (C2, pass 5) told 16 of its 35 rooms with nothing left unexplained. It told 19 with a residue and left none untold. These 19 are the first rooms to watch at D3. Each is listed with the residue the story could not tell:

The ceiling for MODEL.md, and what it cut from account.md

The ceiling is 6,000 words for MODEL-D1.md, the global part that every task carries. handoff.py appends per task the entries for the elements the room's themes were placed under. MODEL-D1.md holds 3,591 words (_analysis/d1_model.py, which refuses to write over the ceiling).

What it holds. It is written from account.md's structure and the frozen ledgers:

What it cut from the account:

What remains and why:

A defect for the handback. handoff.py serves candidate elements in the vocabulary with no status mark: it drops only withdrawn entries and marks only tentative ones. MODEL-D1.md therefore names the five candidates (K03, K04, P06, P19, R02) as standing outside the model.

The rules for the expectations, written before they were generated

One line per room of the analysed set (705), from implications-C5.md (its thirteen expectations), propositions.jsonl and the room's placements (assignments_final.jsonl and the order tests' element themes, _analysis/c2_elements_c5c2.json). The script is _analysis/d1_expectations.py.

R1. Carried. An element is carried in a room when one of the room's second-order themes is placed on a third-order theme of that element. P15 and C01's form-pass tiers lift from no theme, so placements never carry them.

R2. Expected to instantiate:

The tentative entries and the candidates are expected nowhere: the model makes no claim for them.

R3. Expected to be absent. This applies only in a room above the concept floor (10 concepts) that calls for hands (carries P01), and only for an element the room does not carry:

R4. Not testable here (rule 6). These are listed in not_testable_here, never in expect_absent:

R5. The residue. Expectation 13 (colour factions and hosts ruling on guests compose with a residue) names no element. For those rooms it is written in why, so stage E1 can read it beside the verdict. This departs from a plain reading of the implications only in where the line carries it.

R6. Why. Each line gives one clause per element and arrow listed, in the model's terms.

The folder

Folder hash: 61b03bbf67bc8f010774eadd364e8bf0f4e577e0b6608185893845229e508a5c (handoff-D.sha256, the same in RUN.json under handoff_D.first). _analysis/d1_payload.py recomputes it the way handoff.py does and gets the same value. VERSION: e15f96470271763d9913e79ed8e332c164a1f176106eefacfe8ffac8e1b3fecd, equal to vlib.model_hash in the folder and in every task.

The payload, measured (§3)

I wrote these figures after the hash, not before: handoff.py prints the distribution only once it has written the folder, and it will not write the folder twice. The figures come from tasks/index.tsv and verdict-D/ (_analysis/d1_payload.py).

Rooms too large for one labeler session. No stage file or run document states a labeler's context. I declare one session at about 1,000,000 bytes served, which is about 250,000 tokens at about 4 bytes a token. Four rooms exceed it:

The last three are near the figure, and a session may hold them. In each, the largest files are codes.jsonl and forest.md. In all, 33 rooms exceed 500,000 bytes and one exceeds 2,000,000. I cut, split and read none of them. The handler returns each whole, or marks it unreturned with the reason.

The checks (§4)

These checks ran on the built folders, through validate.py D1 and _analysis/d1_payload.py.

Two defects for the handback. I edit neither the model nor the built folder.

  1. The candidates carry no status. VOCABULARY.json serves the five candidates (K03, K04, P06, P19, R02) with no status mark, beside the standing elements. Only MODEL.md says they stand outside the model.
  2. The dimension check failed on lists (QD1-001, answered). validate.py D1 gave 30 errors of the shape vocab:dim. handoff.py copies each element's dimension as the frozen model/elements.jsonl holds it, a list: 28 elements hold one id, one holds two and one holds an empty list, and every id is in dimensions.jsonl. tools/checks/stage_D1.py read the field as one value. Stage C2's check (stage_C2.py, line 236) accepts the list, and validate.py C5 passed on the same ledger. I asked the PI as QD1-001 and changed nothing meanwhile.
    • The answer (J's ruling, 21:19 Berlin, through the PI): an element may sit in two or more dimensions, so the list is right and the check was wrong. The check now reads one id or a list, as stage C2's does.
    • validate.py D1 now gives 0 errors and 0 warnings. The model, the vocabulary and the folder hash are unchanged; the hash still recomputes to the value above.

Two limits of the expectations, found after the build

I found both while checking the story-miss rooms and the ids that no line expects. The expectations were sealed and hashed before any return, so I change neither (diary, D1a).

  1. C02 is expected in no room. R1 finds an element carried through the order tests' theme file, and that file has no line for C02, a standing claim on T4-020, T4-021, T4-022 and T4-004. This is my omission, not a rule; E1 reads C02 as unpredicted. A12 is expected nowhere for a different reason: its end P15 is never carried by a placement.
  2. Expectation 13 misses the host rooms. The residue clause reaches the four colour-faction story-miss rooms but none of the four host rooms (catalunya, placeDE, smashbros, sweden), because their themes are not on P19's host themes. catalunya's line expects C01 absent.

Every packet states the room's concept count and off-platform pointers exactly as rooms.jsonl holds them (705 of 705).