Files
TheLadder/tools/story-to-pack/probe/chekhov
JesseMarkowitzandClaude Opus 5.5 3a4758172d story-to-pack: add the corpora and the catalogue v2/v3
Fourteen corpora split and classified: aesop, bierce, chekhov, holmes,
keefe, lawson, lorimer, maupassant, nobody, plaintales, poe, torchy,
wallingford and winesburg, each with its splitter and the hand-written
groups and pages; catalogue v2 and v3; and the shared splitters
gutenberg_chunks.py, se_split.py and se_build.py.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019rwKTmug58sEsJ72AuWsEi
2026-10-07 06:05:51 -04:00
..

Chekhov reference set: The Schoolmistress, and Other Stories (tr. Garnett, 1918)

A hand-made comparison baseline for the story-to-pack pipeline, the fourth beside O. Henry (../v2/claude/), Wharton (../wharton/) and Jacobs (../jacobs/). Claude wrote every summary, predicament, group and option after reading the scenes. No local or hosted inference was used. Compare the local-model runs against it, but do not treat it as ground truth. It is one careful reading.

File What it is
corpus/schoolmistress-and-other-stories.txt Project Gutenberg #1732, plain text (public domain)
split_gutenberg.py → stories.json (21 stories, split on the contents titles) and chunks.json (228 scenes, same 320-word paragraph rule as ../chunk.py)
dump.py python3 dump.py A B prints scenes A..B for reading
claude/batches/sNN.json per story: {chunk, story, summary, predicament}, the same schema as ../jacobs/claude/batches/
claude/groups_src.py the groups, options and per-story protagonist standing
claude/build.py checks everything, then writes claude/records.json and claude/groups.json. It is Jacobs' build.py unchanged, because its paths are already relative.
claude/page.py → claude/REFERENCE.html, the readable page

Rebuild: python3 split_gutenberg.py && cd claude && python3 build.py && python3 page.py.

What is in it

  • 228 predicaments, one sentence each (median 20 words, min 15, max 23). They follow the redescribe.py rules: no names, jobs, places or story-only objects. The topic_words leak check flags 24 of 228. Twenty of those are role or relationship words (father, guest, servant, customer, newcomer, rival, neighbour …), kept on purpose because the design's cast is made of roles. The other four are list words used in another sense: "flat" (as in dull), "station" (as in rank), "room" and "dinner".
  • 17 groups, each a situation that recurs in two or more stories. Each scene sits in at most one group. 129 are assigned and 99 (43%) fit nothing that recurs. That unassigned share is three times Jacobs' 13%, and it is the corpus, not an oversight (see below).
  • Under the catalogue's single recurrence rule (../catalogue/recurrence.log: at least 5 scenes, at least 3 stories, no story over 50%), 6 of the 17 pass: G01, G04, G05, G10, G11 and G13. Three groups span only two stories (G08, G12, G16). The other eight are held back by one story holding more than half their members.

Options

3 to 5 per group, 73 in all. 61 come from what someone in a scene did (scene:N), 6 are archetypes and 6 fill gaps. 8 scene options cite a scene outside their own group, and groups.json marks each one in_group: false. As in Wharton, most of these come from the scene next to a member, where the character acts (105 and 96 for G06, 146 and 150 for G07, 130 for G16).

Moves

Moves are spine paths with a direction only (+, -, risk, set). There are no magnitudes, as the design requires. Skill labels proposed for this corpus: patience and tact. Jacobs' nerve and cunning do not fit. Almost nobody in these stories dares or schemes. What people do is endure (the old ferryman, the old messenger, the schoolmistress) or handle their betters (the cattle dealer's tips, the clerk's holiday letter, the craftsman rehearsing his grovelling). Two directions are unusual here: patience + often goes with standing - or relationships.* -, because enduring costs something, and several options set a flag (resigned, hardened, grief_unspoken) rather than move a number.

Stage

Stage comes from protagonist standing, judged per story, not per scene, as in Jacobs (STANDING in groups_src.py). The corpus leans low and middle: 8 low, 9 middle, 4 high. Three calls are judgement: Champagne's narrator is a poor noble in a low post (middle); On Official Duty is read from the young official's side, not the old messenger's (middle); The Head-Gardener's Story is read from the gardener, not the buyers (low).

How this corpus differs

Much of it is plotless, and that shows in the unassigned count. Chekhov gives whole stories to a mood or a line of thought. A Nervous Breakdown is 33 scenes of one young man's night out and collapse, and 30 of them fit no recurring group. The other large blocks are After the Theatre (4 of 4, a girl's causeless joy), The Bet (8 of 10, a single contrived wager), The Head-Gardener's Story (6 of 7, a told legend) and The Cattle-Dealers (15 of 25, a journey with long passages of nothing happening). Forcing these into groups would have produced mood groups ("a young man broods at night"), which is exactly what the pipeline is supposed to reject.

Where it does recur, the situations are mostly new to the catalogue. The existing 36 entries come from courtship, secrets and schemes. Chekhov's recurring material is endurance, grief and being small:

Group Catalogue entry
G01 Stuck in a life that has stopped meaning anything new
G02 A grief nobody will hear new (not unspoken, which is about lovers)
G03 A glimpse of the life you are missing new
G04 On the outside of other people's warmth new
G05 Talked down to by those above you overlaps power_over_you
G06 Nothing moves without a little something new (not compromise_for_money: the payment is expected, not a betrayal of standards)
G07 Your work goes unrecognised overlaps overlooked
G08 A marriage gone numb overlaps home_unseen
G09 Too late to make it right new (next to owning_up, but there is nobody left to own up to)
G10 Drawn to someone of another rank overlaps station
G11 Want nothing and nothing can hurt you new
G12 Racing to save someone who is slipping away new
G13 At odds with a parent over the life you chose new (partly peace_at_home)
G14 Frightened by something you cannot explain overlaps dread
G15 Far from home and your own people new (the reverse of homecoming; partly newcomer)
G16 A stranger's death lands on you new
G17 Covering up a disgrace overlaps hiding_from_close and past_comes_back

That is 11 new situation types and 6 overlaps. The predicaments are written to move to other settings. G06 needs only someone who controls an ordinary service, and G04 only a crowd that is celebrating without you.

The groups are thinner and broader than Jacobs'. Several (G02, G07, G14) are one story plus two or three scenes from others, so a story holds more than half their members. G05 is the broadest group in the set, with members from 7 stories, and is closer to a register than the others are: in this corpus almost everyone is talked down to by somebody. A tool should expect a Chekhov-like corpus to give fewer, looser situations per story, and it will need more stories than the design's 20-30 to fill a pack.