# Head, claude-v43-1

Under 3,000 words, rewritten whole at every close. Last written at B4b-p4, 2026-10-13 (UTC). Stage B4: the adjudication is complete (3,288 of 3,288 contested items ruled) and the blind sample is built: 685 lines in 48 packets (U 250, A 250, R 185). The dispatch is not mine; the next launch of stage B4 is the check leg.

## The method question, in one sentence

Can independently reconstructed case histories be composed into a shared dynamic account that supports explanations at successive levels of specificity, from population-wide patterns, through forms and subforms, to particular organizational histories, while keeping access to the evidence from which those explanations were developed?

The theory question is unchanged: when strangers organize on a clock they did not set, with no way to compel anyone and no goal given to them, what forms does organizing take, how do they differ in their functioning, and which of them keep the work alive?

## Where the run stands

Stage A1 is closed. Stage B1 (the third-order scheme, 197 themes in 21 families), B2 (the pilot) and B3 (the fleet) are done. Stage B4: the adjudication is done (B4a-01 to B4a-07; `adjudication_report.md` is the full report); B4b built the blind sample and closed at `--cut packets-out`. Still owed in B4: the check leg (the comparison, `reassign.jsonl`, `transmission-after-revision-B4.md`, the placements final, the handback, the interview).

## J's rulings on how a ruling is made (13 October; carry them)

- **QB4-001 (J, 06:43 Berlin):** "Ask it to stop. The point is to try to adjudicate. I imagine that the additions are really just the analyst trying to be nice. And not go back on what others said".
- **J's rulings (06:45 and 06:47 Berlin):** (1) A ruling chooses among the placements (reading A, reading B, my B1) and adds no theme beyond them. (2) It takes the union only when it names, for each theme it keeps, the separate concept that carries it; otherwise it chooses. (3) Re-rule packets 1 to 4's rulings that held a theme no placement held. Done at B4a-05.
- **also_present (J, 09:09 Berlin) and QB4-002 (09:20):** `also_present` lists only themes a reader placed, a reader listed under its own `also_present`, or my B1 named.
- **QB4-003 (J, 11:29 Berlin):** "count them. Themes a reader listed under its own also_present count in the bag test."
- **Lone B1 themes (J, 12:28 Berlin):** "Whatever the agent feels more comfortable with." I chose: in class 4 a theme only my B1 placed stands against the two agreeing readers only with three concepts or more of its own; with fewer it is left out; the readers' list stands where its test takes concepts, and where it takes none the item is unresolved. Class 3 unchanged.

**How I applied them (rule 0 inside the placements).** A concept counts toward a placed theme when that theme's `must_show` takes it and no field sends it to another placed theme. Order by concept count, ties by placements; at most three; a one- or two-concept theme is kept only when it leads its level on placements; a tie at the top places all tied themes; a theme alone at its level is kept; a theme both readers placed is not dropped on a count only my B1 tips. **The bag test:** placed themes and the readers' own `also_present` themes, each with the concepts its `must_show` takes that no placed theme holds; four with three concepts make a bag. Unresolved where no placement's test takes the material.

## Stage B4

**The selection (J's amended stage file).** Class 1 (readers agree, equal to B1) 2,566 and class 2 (a proper subset of B1) 1,990 stand. Class 3 (readers differ) 2,393, class 4 (readers agree outside B1) 837 and class 5 (no B1 grouping) 58 were contested: 3,288 items, ruled in seven packets (`out/_adjudication-B4/`, chunks of 25; `coder_conflicts.jsonl` CC-001 to CC-072).

**The adjudication** (`adjudication_report.md`, full): 3,288 rulings; genuine-joint 1,651, author-error 571, scheme-ambiguous 451, item-is-a-bag 255, author-disagrees 208, reader-error 152; unresolved 185 (5.6%); named_neither 757 (23.0%); agreement before 0.491, after 0.646, not a reliability figure. Fields: must_show 252, discriminators 114, must_not_show 57, decide_when_both 28. Worst themes: T3-017 55, T3-033 34, T3-001 32, T3-023 26, T3-004 26. Class 4 (837): the readers' list 584, a B1 theme kept 162 (each with three concepts or more), unresolved 78. B2's predictions: 17 of 19 pairs split readers; pairs 17 and 18 never. `assign_final.jsonl`: 7,844 lines, pending 0.

**The blind sample (B4b; `notes-B4.md`, "The blind sample, built at B4b").** J's rulings (the PI's message of 14:22Z): 500 items, 250 uniform from the analysed set and 250 from the adjudicated items, by a recorded seed, the strata apart and never pooled; arm 1 two fresh DeepSeek V4.1 Flash readers per item on the route `arm.json` sets for B4; arm 2 OpenAI gpt-6-astra at medium effort, two replications, run by the Codex orchestrator on J's computer from a copy of the packets; never pooled; no Claude reader; packets built once; nothing else in §10 changes.
- **The draw** (`out/_analysis/b4b_sample.py`, seed 20261013, streams "20261013:U", ":A", ":order"): `out/sample-B4.jsonl` (never served). Stratum U 250 (class 1 87, 2 53, 3 81, 4 28, 5 1; 110 ruled, 3 unresolved). Stratum A 250 from the 3,178 ruled items U did not take, so the strata are disjoint (class 3 180, 4 63, 5 7; 15 unresolved). The settled line is `assign_final.jsonl` at sha256 d3506a88….
- **The packets** (`out/_analysis/b4b_packets.py`; `out/_packets-B4/`): fleet ids only (`tools/packets.py B4` writes room ids, the QB3-003 fault), on B2's renderer; index.md and G01 to G21 byte for byte B3's; 34 packets `S05-01` to `S05-34`, 10 to 15 items, 21,280 to 49,994 bytes; `MANIFEST.json` with `codes_by_item`, 500 lines due; no sibling block, bag flag, stratum, ruling or exemplar. `b4b_packets_check.py`: 0 errors.
- **`RETURN-B4.md`** as at B3 (prediction line, return line, multiplacement record, second pass, end marker, confirm line), rule 0 in the contract's current words (RETURN-B3.md had the wording from before J's amendment of 11 October).
- **Stratum R: all 185 unresolved items, each read in R packets** (J, 17:10 Berlin; and 17:21: "We should have 685 in total"). B4b-p2 drew 18 (streams "20261013:R", ":R-order"; `S05-35`, `S05-36`); B4b-p3 added 149 (`b4b_R_all.py`, stream ":R-all-order"; `S05-37` to `S05-46`); B4b-p4 served the 18 in U (3) and A (15) again as R's own (`b4b_R_ua.py`, stream ":R-ua-order", orders 668 to 685, field `also_in`; `S05-47`, `S05-48`). Each arm reads those 18 twice; each reading counts only in its packet's stratum. Record `out/sample-B4-R.jsonl` (185 lines; earlier records kept). Diagnostic, apart, never pooled: per arm, the readers' agreement with each other, whether primaries meet, whether placements fall among reading A's, reading B's and my B1's (`b4b_R_list.py`); no settled-line comparison; no ruling changes. `MANIFEST.json` 48 entries, 685 lines due, 667 distinct items (copies before each addition kept in `out/_analysis/`); `b4b_packets_check4.py`: 0 errors.
- **The manifest:** `run_manifest.json` entry 16 (B4b-p4) supersedes 15 to 12: both arms, seed and streams, decoding as each dispatch sets it, `n_agents` 2 (96 reader sessions an arm), 1,000 settled-line comparisons an arm for U and A, R's 370 readings an arm apart.
- **Declared for the check:** each reading against the settled line, per arm and stratum; the readers' agreement with each other beside it; stage B2's definition unchanged; pass 1 only; unresolved settled items leave that denominator and are counted.

**Boundaries ruled, to carry** (`out/_adjudication-B4/boundaries.md`).
- **Packets 1 to 6.** T3-023 is a change to the sub, T3-001 members' fakes. Calls toward T3-002, placing toward T3-038, a new mark toward T3-033, a further piece toward T3-041. An attack answered as a fight T3-005, watching or fixing T3-021. A fight, threat, peace or truce in the words T3-149; lines and space with none T3-010. Destroying T3-006, taking space T3-061. A joke with the canvas in the words T3-031; with none T3-017. A taunt at a rival T3-050. The homeland flag's acts toward T3-065 where a placement holds it.
- **Packet 7.** Thanks to makers T3-043, congratulations T3-009, an ally thanked T3-072. An account T3-073, grief T3-029, the canvas's end T3-117. A record T3-105 (cleaned copies included), a remake T3-057, the sub's banner or flair T3-156. A later canvas T3-054, the canvas sub's future T3-111. "The work" in T3-073 and T3-058 is the room's own.

## Stage B3 and B2, in short

B3: fleet ids only (QB3-001, QB3-002); 1,212 batches, R = 2; `assign_raw.jsonl` 17,653 lines and `b3_classes.jsonl`. Gold fidelity 0.645; agreement Jaccard 0.786, alpha 0.782; G18 agreed least; readers deepseek/deepseek-v4.1-flash, medium effort, max_tokens 128,000. B2: gold fidelity 0.624 and pairwise 0.818; stability 0.807 is the floor every later figure is read against.

## J's rulings that bind (carry them)

- **Bags.** No one cuts the bags (J, 12:24 Berlin). A bag stays one item: one theme placed, its others under `also_present`, each with three concepts of its own and named by a reader or my B1. `out/recut/WITHDRAWN.json` keeps the withdrawn split out of every view.
- **The bound (J, 13:47).** `also_present` names "twenty themes at most", each with three concepts of its own.
- **The not-flagged bag (J, QB2-013).** With no other theme at the three-concept floor, `item_is_a_bag` is false and `also_present` `{}`.
- **Fleet ids (J, 09:14 and 12:15).** Packets carry only fleet ids; returns are translated back before scoring; my files keep room ids.
- **Codes by item (J, QB2-009).** Each MANIFEST entry carries `codes_by_item`.

## Standing words from J and the PI (carry into every head)

**J's words for B1 (7 October 2026):** "national elements are very important here"; "we need to get as much variance on organizing behavior early on so that later we have enough to create the model". National, political and conflict content is study material, named as plainly as any other. **The handler's rule:** a choice to leave out or soften content for any reason other than the study's goes to J first with `mem.py ask`, and the content stays meanwhile.

**J on reading (11 October, 16:54 Berlin).** Stop cutting room reads to a line length. Read room lines whole. Page a long read by line ranges or offset, never by truncating lines. Use `--width N` on a `mem.py` read if a clip is ever needed; the guard refuses `cut -c` after `mem.py`.

**J on asking (11 October, 17:01 Berlin).** Ask J with `mem.py ask` whenever a question is needed; asking does not stop the run.

**The PI's clarifications (8 October, approved by J):** the thresholds are the design's heuristic; the rule is unchanged.

**How to work, from J (8 October, 23:45 Berlin, "can you do a hot change for the batching?"; relayed by the handler at 22:03Z; carry this paragraph into every head).** A change in how I work, not in what I read or decide. Fewer turns. When two or more tool calls do not depend on each other's output, make them in one turn. Chain ordered commands in one Bash call with &&, so that a failure stops the rest; for example, the `mem.py log` or note just decided, then the next `mem.py codes`. Never put a write in the same turn as the read it depends on. Never run two writes to the same file as separate parallel calls. Keep one room's material per read, as now. Every tool still writes its own record; nothing about what I read or decide changes.

**Two rules from J at B1b-29 (through the handler, 20:10Z; carry them into every head).** Write rule 0 lines and bags with `b1_multiplace_write4.py` and `b1_bags_from_file2.py`, not the old scripts, which made one `mem.py` call per row of the whole table and grew to 8.5 minutes a write. Never end a turn while a job runs in the background; run every write and check in the foreground.

## The pilot's declarations (from `notes-B2.md`)

- **Agreement:** Jaccard on placement sets (`["T3-004"]` against `["T3-004","T3-011"]` scores 0.5). Fidelity is mean Jaccard against my set. Alpha uses distance 1 − Jaccard, chance over the round's pooled sets. Primary exact agreement is reported beside, never in place.
- **Gold:** 40 items in `gold_items.jsonl`, never shown to a reader.

## The scheme

`scheme_final.jsonl` holds 197 themes (183 main, 14 rare, flagged there) in 21 families. It is frozen: stage B4 logs defects and never edits it.

## Open, carried

- **From B1.** The ruling on testing G13, G14 and G15 as one index page. The B1d leftovers: 106 (line, kind) pairs over 81 episode lines; seven pairs of lines telling one event; E989; the cfb and finland records; shared-member counts that may include EA1r+K5p/lVBLesLhCFRrKOPN+I=; the 76 themes holding both T3-005 and T3-021 acts; T3-149 and T3-150 members that may hold T3-195. The second-order theme the scheme handles worst: argentina t06.
- **Distinctions** (none filed in `_questions/`): who started the work; wars told twice; rivals who turn partners (E1076, E1122, E1142, E1318); whose flag a shared flag is (E1118); who drove a bot (E1025); a room's own scripts barring it from sparing a neighbour (E843) or wrecking a protectorate (E1209); one member on both sides (E820, E947).
- **The bag count.** J counts 841 B1 bags; an older head said 846. Not reconciled. 26 older bags in packets 1 to 5 could list more named themes (QB4-003 named 43); the packet 4 item 197 `also_present` note.
- **Defects for stage C1** (in `adjudication_report.md`). T3-017's and T3-001's discriminators against T3-031's canvas condition; T3-033's "first"; T3-023 and another sub's change; the homeland flag in the siblings' `must_not_show`; T3-018's "whose character"; T3-052 presumes a mark and an owner; T3-086 against T3-050; T3-003's and T3-043's discriminators on parts claimed after the work; "the work" in T3-073 and T3-058; T3-054 against T3-038 and T3-002 on a later canvas; T3-111 and a standing community; T3-087 against T3-058 for one person; T3-117's regret; T3-021 and a cleaned copy; T3-164's reach; T3-009's "lasted to the end" against T3-073's "what survived".
- **My doubts.** The three-concept floor of the lone-B1 rule is my choice; it let a theme of mine stand against both readers in 162 class 4 items, some on my reading of whose work it is. Class 3 keeps one-concept themes of mine alone at their level. "The act its words lead with" decides some rulings on word order. For B4b: the disjoint strata are my reading of J's ruling; B4's task differs from B3's by the sibling block, the bag flags and one rule 0 wording, so a difference from B3's figures is not the scheme's alone.

## Ledgers at this close

- B1 to B3: `scheme_current.jsonl`, `families.jsonl` (21), `confusions.md` (19 pairs), `episodes-B1.jsonl` (1,341); `notes-B2.md`, `pilot_report.md`, `stability-B2.md`, `gold_items.jsonl` (40), `author_items.jsonl` (50), `scheme_final.jsonl` (197); `notes-B3.md`, `assign_raw.jsonl` (17,653), `multiplacement_log.jsonl` (3,171), `b3_classes.jsonl` (7,844), `defects.jsonl` (63), `return_waivers.jsonl` (74), `fleet_ids.jsonl`.
- B4: `notes-B4.md`; `transmission-B4.md`; `coder_conflicts.jsonl` (72); `disagreements.jsonl` (3,288; superseded versions kept, the last 20261013T131513Z); `assign_final.jsonl` (7,844); `adjudication_report.md` (full); `out/_adjudication-B4/`; `sample-B4.jsonl` (500) and `sample-B4-R.jsonl` (185); `RETURN-B4.md`; `out/_packets-B4/` (22 pages, 48 packets, MANIFEST.json); `run_manifest.json` (16 entries); `out/_analysis/b4b_*.py` with their `.json` records.
- Asks QB2-001 to QB2-014, QB3-001 to QB3-005, QB4-001 to QB4-003 are answered.

## Rules kept

- Never type an id, an order or a name from memory; check with `jq` or a script. Never log a write before the tool answers. Count a ledger's lines after appending.
- There is no `--kind close` and no `--kind episode`; log those as notes.
- A question to J is `mem.py ask "<question>" --assume "<meanwhile>"`. Read an answer with `mem.py asks <id>`.
- Never put a placeholder or a no-op in a command or a log line. Never put an Edit or Write and the read, dry run or validator run that checks it in one turn. Count the head's words before the closing line.
- Never write an id-like token the run does not define in the head, such as a D or a P followed by digits: `done.sh` reads it as an unresolved link.
- The permission check refuses: "=w="; shell for and while loops, and words beginning "for_"; shell functions, brace groups and heredocs; awk with system() or `$` fields; a variable set from `$(...)`, and some `python3 -c` scripts; jq with a `test()` regex, and env-var prefixes; cat or jq on `out/diary/`; `cut -c`, `cut -b` and `colrm` after `mem.py`, `cite.py` or a helper (use `--width`). Write a script file in `out/_analysis/` instead. `.git` is read-denied.
- `mem.py` pages long output; fetch the rest with `--offset`. A Bash output over about 30 KB is saved where I cannot read it; page it. A `Read` of a file over 25,000 tokens is cut; read it by offset and limit.
- After a compaction the guard requires the head and stage file read again and the exact line "compacted; head reconciled" through `mem.py log --kind note`, in a call of its own, before any other step.
- In B4: a ruling never cites a room note; a correction goes through `--replace`, never a hand edit; nothing in `run_manifest.json` is edited, an entry is superseded by a new one.

## The next comparison

The check leg (§12): the harness says the readers left their files in `_fleet_raw/B4/`. Read arm 1's `arm.json` for the served model and route. Assemble the returns keyed on packet heading and cell number, translate fleet ids back through `fleet_ids.jsonl`, and refuse what does not resolve. Score pass 1, per arm and per stratum, never pooled: each reading against the settled line (`assign_final.jsonl` at d3506a88…; strata in `sample-B4.jsonl`) into `reassign.jsonl` (agrees; disagrees on an item that was a disagreement; disagrees on an item unanimous in the fleet, each named with a paragraph; settled line unresolved, excluded and counted); the readers' agreement with each other and alpha beside. Then `transmission-after-revision-B4.md` per family, against the stability floor 0.807, B3's agreement 0.786 and B2's gold figure, with FLEET.md's licence. Arm 2's returns come from J's Codex run and are scored the same way, apart. Stratum R (`sample-B4-R.jsonl`, 185, all read in R packets) is scored as declared at B4b-p2 and B4b-p4, never pooled with U or A; on the 18 with `also_in`, R's readings beside their U or A readings, apart. Then the placements final, `handback-B4.md` and the interview brief (`--cut interview`).
