out/RETURN-B2.md
Saved at B2.B2b-r3-p3: check round. 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: 0697df5d8499, 2026-10-12T14:45:26+02:00. Saved-state date: 2026-10-12T12:45:14Z. Catalogue close receipt Commit date and saved-state date are distinct.
Original GitHub file. Original SHA-256: c82b05eeae32436cc621ef87dbad3b0c5a362f029ea804c2f2b485b170ba679f. Reading-copy SHA-256: c82b05eeae32436cc621ef87dbad3b0c5a362f029ea804c2f2b485b170ba679f.
RETURN-B2: the return specification for the stage B2 pilot
Frozen with the stage file. The packet builder serves it, the brief cites it, and the validator's schema is read from it.
Rule 0, in the contract's words
Rule 0. Single placement, exception on the record. A
second-order theme carries one third-order theme: the one whose gate its
material satisfies best; where more than one gate is satisfied, the
theme's decide_when_both field decides. A second placement
only where one cannot carry the material, and never silently: it needs
its own distinct supporting concept, a written why_not_one
in terms of what the single placement would fail to carry, a named
dispensable one, and a line in multiplacement_log.jsonl.
Three at most; beyond three, place one and record
item-is-a-bag. An unjustified extra is a defect. The log is
a measurement: recurring (primary, additional) pairs are
boundaries the scheme has not drawn, and stage C1 reads that table
first.
What you return
One JSON line per item in the packet, in packet order, and nothing
else between the lines. Read the index page whole first. Open a family's
page before you place anything into it, and list the families you opened
in families_opened.
sub,theme_id: the item's heading,<sub>/<theme_id>, copied exactly: the room's name, then the item's id (T2-and five digits, such asT2-08479).batch: the packet name (the name on the packet's title line, such asP03-r3-1).agent: your reader id as given to you.replicate: 1.position: the item's number in the packet.third_order: the theme ids you place the item on, primary first. One id, unless rule 0's exception holds; never more than three.multi: true whenthird_orderholds more than one id.why: for each id inthird_order, what about THIS item put it there rather than its nearest neighbour.confidence:clearorarguable.read:whole(you read the label, the note and every concept) ortheme-block(the label and note, and the concepts in part).exemplar_read: null. No exemplar is served at this stage.families_opened: the family ids whose pages you opened for this item.t_start,t: when you began and finished the item (ISO time, as you can tell it).support: the concept ids your placement rests on, copied exactly from the item's own concept lines (Cand seven digits, such asC0781518). Cite only concepts listed under the item you are placing; an id from another item, or one you do not see in the packet, is an error.multiplacement_log: null whenmultiis false. Whenmultiis true, this is the line rule 0 owes tomultiplacement_log.jsonl:{"primary": "T3-…", "additional": ["T3-…"], "codes": ["C…"], "why_not_one": "what the single placement would fail to carry", "dispensable": "T3-…"}. The check leg copies it into the pilot's record. It never enters the run's ownmultiplacement_log.jsonlfrom stage B1.item_is_a_bag: true only when more than three themes would be needed and at least one theme beyond the one placed has three concepts of its own. Thenthird_orderholds one id andwhynames the others. A bag with no other theme at the three-concept floor is not flagged a bag:item_is_a_bagfalse,also_present{}.also_present:{}unlessitem_is_a_bagis true. For a bag, the themes beyond the one placed that have at least three concepts of its own, twenty themes at most, each with those concept ids:{"T3-…": ["C…", "C…", "C…"]}. Twenty is a bound, not a goal: name only the themes you find at the floor; you need not reach twenty. A theme with fewer than three concepts of its own is not listed.supportholds the concepts behind the placed theme; a theme inalso_presentnever repeats the placed one.
{"sub": "...", "theme_id": "T2-.....", "batch": "P03-r3-1", "agent": "...", "replicate": 1, "position": 23, "third_order": ["T3-007"], "multi": false, "why": {"T3-007": "what about THIS theme put it here rather than its nearest neighbour"}, "confidence": "clear|arguable", "read": "whole|theme-block", "exemplar_read": null, "families_opened": ["G03", "G09"], "t_start": "...", "t": "...", "support": ["C0781518"], "multiplacement_log": null, "item_is_a_bag": false, "also_present": {}}
END-OF-RETURNAfter your last line, write the end marker END-OF-RETURN
on a line of its own. Confirm that you reached the end of the packet by
writing that marker; a return without it is a partial return and is
reissued.