# 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.