Beat extraction records the GM's table admin as story events #596
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What happens
Run 3 of the dev replay (Gemma 4 26B, 2026-09-11 03:28 UTC, run
a0784433, at6533fa1) verified 83 events. Several of them are the GM running the table, not anything that happened in the story:They verify because they're true. The GM did say those lines, so the validator (which checks that the speaker and cited lines exist) passes them. Most stay in the event log (#568), which is noise. At least one reached the prose summary: "the group received an explanation regarding what a thresher is".
Related but not the same: #584's answer-shaped check catches a short GM reply to a player's question. These are mostly long GM lines, and nobody asked a question.
Why it matters
Options
tablekind (ormeta), which the extraction prompt is told to use for rules calls, token moves, sheet admin and term explanations. Compose selection skips it, and the event log shows it folded by default. This needs no correct judgement from code. The model only has to label, not decide to omit, and labelling held up better than omission under #584's prompt change.othergets marked table admin. Report it on the run record first, as #584's check does, before it's allowed to change anything.Recommend 1 with 2 as a report-only check, measured on this replay before and after.
Picking this up (2026-09-11) with option 1, plus option 2 as a check that only reports. The owner agreed the order: #595 and #588 land and are measured first, then this one, measured on its own. It changes what the model produces, and Gemma's run-to-run variance (59, 81 and 83 verified events across the last three runs) would hide its effect if everything moved at once.
table_adminkind in the extraction prompt, the json_schema enum, validation, and the event log. The model labels these events; it doesn't drop them, so a mislabel costs one folded row, never a lost event.table_adminevents out before stratifying, so they don't take time buckets from story events.otherevents that start "The GM asks, explains, …" and logs the count without changing anything. That shows whether the model is using the label.Merged (PR #599, main
504f446) and measured on dev over two summary-only reruns of the replay session (Gemma 4 26B), against run 4 (6d3e6f54), which had #598 but not this.ace1414f)03b3acfa)table_adminThe event log is the clear win. 35 to 42 table-side events per run are folded now, and the labels are good.
The prose improves, but not cleanly. Run 6 is the best summary so far: it has the opening, the fall and the rope catch, the skeleton credited correctly, the circus rumour, the mid-sized city, and a real hook. Run 5 lost the opening from its prose, although the waking-up events were stored as story events.
What still reaches the prose is table admin given a story label, not missed labels:
The report-only check only looks at
otherwith a fixed verb list, so it counts 1 of these, not 4 or 5.Ironroot is unchanged. Both runs labelled "The GM reveals the party's current location is Ironroot Hold" as
reveal. Run 5 then built its hook on it ("navigate their way through Ironroot Hold"). That's the GM slip described on #424: only a GM correction fixes it.Possible follow-ups, not filed yet: