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
193 lines
14 KiB
Markdown
193 lines
14 KiB
Markdown
# Lorimer reference set and advice-book pilot: *Letters from a Self-Made Merchant to His Son* (1902)
|
|
|
|
A hand-made reference set for the story-to-pack pipeline, a sibling of the Jacobs set in `../jacobs/`
|
|
and the Lawson set in `../lawson/`. It is also the first **advice book** the pipeline has read, so it
|
|
carries a pilot the story sets do not. The pilot asks whether an advice book can supply options for the
|
|
catalogue's situations and justify their effect directions from the text. Stories supply that part of a
|
|
pack weakly.
|
|
|
|
Claude read every scene and wrote each summary, predicament, advice item, group and option. **No
|
|
inference of any kind was used.** Do not treat it as ground truth: it is one careful reading.
|
|
|
|
| File | What it is |
|
|
| --- | --- |
|
|
| `corpus/letters-from-a-self-made-merchant.txt` | Project Gutenberg text, eBook #21959 (public domain) |
|
|
| `split_gutenberg.py` | → `stories.json` (20 letters, each titled by its contents synopsis) and `chunks.json` (186 scenes, same paragraph rule as `../chunk.py`). 48,101 words |
|
|
| `dump.py` | `python3 dump.py A B` prints scenes A..B for reading |
|
|
| `claude/batches/sNN.json` | per letter: `{chunk, story, summary, predicament, advice}`. `advice` is a list of `{move, outcome, quote, stance}` |
|
|
| `claude/groups_src.py` | the groups, options and per-letter standing of the son |
|
|
| `claude/options_src.py` | **the pilot**: each advice item mapped to a catalogue v2 entry or a proposed new one, with its moves and the `stated` judgement |
|
|
| `claude/build.py` | checks everything, then writes `claude/records.json`, `claude/groups.json` and `claude/options_by_entry.json`, and prints the pilot numbers |
|
|
| `claude/build.log` | that printout, as last run |
|
|
| `claude/page.py` | → `claude/REFERENCE.html`, the readable page: groups, scenes with their advice, and the pilot by entry |
|
|
|
|
Rebuild: `python3 split_gutenberg.py && cd claude && python3 build.py > build.log && python3 page.py`.
|
|
|
|
`build.py` checks the following. Every scene appears once, in order. Every predicament is one sentence
|
|
of 12 to 26 words. Every quote appears verbatim in its scene (whitespace aside) and runs to 30 words
|
|
at most. No scene sits in two groups. Every group has 3 to 5 options and spans at least three letters,
|
|
and no letter supplies more than half of any group's members. Every move is a spine path with a
|
|
direction. Every pilot option points at a real advice item, and no item is used twice. Every
|
|
`options_by_entry.json` key is a catalogue v2 id or a defined `new:` entry.
|
|
|
|
## What is in it
|
|
|
|
- **186 predicaments**, one sentence each (median 19 words, 15 to 23), written to the `redescribe.py`
|
|
rules: no names, jobs, places or story-only objects. Packer, drummer, clerk and broker become
|
|
generic roles: someone at work, a seller, a superior, a person with a little to stake. The
|
|
`topic_words` leak check flags 25 of 186. 22 are for role words kept on purpose (partner, customer,
|
|
newcomer, employer, rival, manager, owner, employee, author). Two are for "judge" used as a verb, and
|
|
one is for "court" in scene 160, also a verb ("court one person after another"). One place word,
|
|
"office", was caught and rewritten.
|
|
- **Advice**: 202 items in 127 scenes (87 `do`, 115 `avoid`). Each item has a generic move, what the
|
|
text says the move leads to, and a verbatim quote of at most 30 words. Only advice the text gives is
|
|
recorded. Two items give a move with no consequence at all (133, 166), and their outcome reads
|
|
`not stated`. 52 book scenes carry none: the anecdotes' middles, where the father is telling the
|
|
story and not yet drawing the lesson.
|
|
- **18 groups**, each a situation that recurs in **three or more letters** (13 span 3 and 5 span 4).
|
|
Every group has 4 to 8 scenes, and no letter supplies more than half of any group, so all pass the
|
|
Lawson recurrence rule except that two groups (G07, G17) have only 4 scenes. **106 scenes are
|
|
assigned and 80 are not**, and 7 of the 80 are not the book (see Known defects). All 20 letters feed
|
|
at least one group.
|
|
- **Options**: 90 in all, 5 per group. **81 cite the book's own advice (`advice:N`)** and 9 cite
|
|
what someone in a scene did (`scene:N`). There are no archetypes and no filled gaps: the book had a
|
|
move for every slot. 9 options cite a scene outside their own group, and `groups.json` marks each
|
|
one `in_group: false`. Most of these are advice given in one letter that answers a situation
|
|
grouped from another.
|
|
- **Moves**: spine paths with a direction only (`+`, `-`, `risk`, `set`). Relationships are moved 65
|
|
times, `money` 39, `standing` 29, the skills 32 and flags 15. The roles are the ones a workplace
|
|
has: `boss`, `staff`, `peers`, `customer`, `rival`, `partner`, `family`, `friend`, and `schemer`
|
|
for the man with a sure thing. `other_side` is used where one side's gain is the other's loss.
|
|
- **Skills** proposed for this corpus: `judgment`, the sizing up of goods, prices, claims and men
|
|
(the father's "one-part talk and nine-parts judgment"), and `hustle`, the drive to do the second
|
|
half of the work. Jacobs' `cunning` and Lawson's `grit` do not fit. Lorimer's people are rarely
|
|
scheming or enduring. They are either sizing things up or not trying hard enough.
|
|
- **Stage** comes from the son's standing, judged **per letter**, in `STANDING` in `groups_src.py`.
|
|
Letters 1 to 9 are low (student, then mailing and billing clerk), 10 to 14 middle (travelling
|
|
salesman) and 15 to 20 high (assistant manager, the top of this book's ladder). The groups come out
|
|
11 low, 4 middle and 3 high. The son is staged even when a scene is an anecdote about someone else,
|
|
because the letter is written to him at that rung. **This is the first corpus whose protagonist
|
|
climbs a ladder, so stage carries real information.** It is uneven all the same: the advice about
|
|
money and effort is given early, and the advice about managing people late.
|
|
|
|
## How this corpus differs
|
|
|
|
**It is not fiction.** Each "story" is a letter: a paragraph of maxims, then an anecdote, then the
|
|
moral, and often a second anecdote. The anecdotes are one-off tales (a quack's button-hook trick, a
|
|
pet pig, an heir engaged to three girls at once), so their middles recur nowhere and account for most
|
|
of the unassigned scenes. The heir's tangle in Letter 19 fills 12 scenes, and none of them joins a
|
|
group. The
|
|
situations that recur are the maxims', and they recur because the father returns to his themes
|
|
across the whole year of letters.
|
|
|
|
**It is the game's premise.** Earlier corpora needed their situations translated into work. This one
|
|
is about work already: starting at the bottom, doing just enough, a hard boss, spending ahead of pay,
|
|
selling to a buyer who does not want it, managing people, and the pull of the fast set. It has almost
|
|
nothing about danger, the supernatural, crime or grief, which fill much of the catalogue.
|
|
|
|
**It speaks from the top.** The father owns the firm, so much of his advice is an employer's: whom to
|
|
hire, when to fire, how to read a clerk. For a player climbing the ladder, some of it has to be turned
|
|
round ("the owner passes over the one who comes in late" becomes the option *come in late*). The new
|
|
entry `in_charge`, 17 options, is advice for the rung the player reaches last.
|
|
|
|
## Pilot result
|
|
|
|
The question: can an advice book supply options for the catalogue's existing situations, and justify
|
|
their effect directions from the text?
|
|
|
|
**Coverage.**
|
|
|
|
- **127 of 186 scenes carry advice**, or 127 of the 179 that are the book. There are **202 advice
|
|
items**, and every one became an option.
|
|
- **24 of the 82 catalogue v2 entries receive at least one sourced option**, 73 options in all:
|
|
`pretence` 11, `power_over_you` 7, `mistook_them` 5, `overlooked` 5, `newcomer` 4,
|
|
`not_who_they_seem` 4, `sure_thing` 4, `called_to_account` 3, `family_against_your_path` 3,
|
|
`plea_for_help` 3, `self_betrayal` 3, and 1 or 2 each for `after_your_money`, `bow_for_your_living`,
|
|
`caught_out`, `compromise_for_money`, `cover_up_spiral`, `gone_missing`, `habit`,
|
|
`outside_looking_in`, `outmatched`, `owning_up`, `peace_at_home`, `used` and `warning`.
|
|
- **129 options (64%) fit no existing entry** and sit under **19 `new:` entries**. The biggest are
|
|
`in_charge` 17, `just_enough` 15, `difficult_customer` 11, `fast_set` 9, `sizing_up_a_match` 9,
|
|
`learning_that_pays` 8 and `between_two_sides` 7. The full list is in `options_by_entry.json`
|
|
under `_new_entries`. Most are the work and money situations that the fiction-built catalogue never
|
|
needed. Twelve of them are the same situations as groups found here (`spending_ahead` is G01,
|
|
`just_enough` G03, `in_charge` G12, and so on). `spending_ahead` also sits beside the two debt
|
|
groups Lawson reported as new.
|
|
|
|
**The share with `stated: true`.** `stated` is true only when the quoted words say what the move leads
|
|
to, for every direction in `moves`. The rules applied are in `options_src.py`: an outcome in the next
|
|
sentence does not count, and "it pays" or "a safe rule" with no path named does not count. The moves
|
|
were written first, as a pack author would want them, and no direction was dropped to make an option
|
|
count as stated.
|
|
|
|
| | options | stated | share |
|
|
| --- | --- | --- | --- |
|
|
| On existing catalogue entries | 73 | 29 | 40% |
|
|
| On `new:` entries | 129 | 53 | 41% |
|
|
| **All** | **202** | **82** | **41%** |
|
|
|
|
16 of the 24 covered entries have at least one stated option, and all 19 new ones do. Two patterns
|
|
hold across the set:
|
|
|
|
- **Warnings state their cost; recommendations mostly do not.** 47% of `avoid` items are stated
|
|
(54 of 115), against 32% of `do` items (28 of 87). "He'd punch my bank account as full of holes"
|
|
names a path. "It pays" and "that's what counts" do not.
|
|
- **The text rarely justifies more than one path.** 54% of one-path options are stated (60 of 111),
|
|
against 25% of two-path options (22 of 88) and none of the three three-path options. A typical
|
|
sentence names one consequence, so an option that moves money *and* the boss's regard usually has
|
|
one direction sourced and one inferred.
|
|
|
|
**Against the story packs.** Every option in a story pack has an inferred direction. A scene shows
|
|
what someone did, and sometimes what happened to that one person, never what the move generally leads
|
|
to. So their `stated` share is effectively 0.
|
|
|
|
| Pack | options | `scene:N` | `archetype` | `filled` | stated |
|
|
| --- | --- | --- | --- | --- | --- |
|
|
| Lawson, *While the Billy Boils* | 142 | 118 | 12 | 12 | ~0% |
|
|
| Bierce | 128 | 96 | 15 | 17 | ~0% |
|
|
| **Lorimer, pilot** | 202 | (advice) | 0 | 0 | **41%** |
|
|
| Lorimer, groups | 90 | 9 + 81 `advice:N` | 0 | 0 | not scored |
|
|
|
|
**Verdict: yes, run it on other advice books, but as a second source beside the stories, not in
|
|
place of them.** It did what the stories cannot. Two options in five come with a textual warrant for
|
|
every direction, and every option comes from a move the text itself recommends or warns against.
|
|
The groups needed no archetype or filled option at all. It did not do what the pilot mainly hoped for, which was
|
|
to fill the *existing* catalogue. Only 24 of 82 entries got anything, and two thirds of the advice
|
|
went to situations the catalogue lacks. That is less a failure than a finding: the story-built
|
|
catalogue is thin on exactly the situations a career game runs on, and an advice book supplies those
|
|
situations along with their options. Pick advice books whose subject is the game's (work, money,
|
|
standing, getting on with people) and expect them to extend the catalogue as much as to feed it.
|
|
|
|
**What went wrong or was hard.**
|
|
|
|
- **The 30-word quote cap splits move from outcome.** Lorimer often states the move in one sentence
|
|
and the consequence in the next, or lets an anecdote end a scene later. Several items had to be cut
|
|
to a quote that holds the outcome and not the move, or the move and not the outcome. The strict rule,
|
|
where the evidence must carry the outcome, cost the stated share several points. Allowing two short
|
|
quotes per option would raise it honestly.
|
|
- **Figurative language.** The father speaks in hogs, mules, hams and horse races. Deciding whether
|
|
"it's bankruptcy to tell about them" moves money (no) or "they'll bite" moves money (yes) is a
|
|
judgement on every item. The stated share rests on those calls, and a second reader would move some.
|
|
- **Stated is not the same as right.** A stated direction is the father's claim, argued from one
|
|
anecdote or none. The pilot measures whether the text gives a warrant, not whether the warrant
|
|
holds.
|
|
- **Mostly one side of each situation.** The advice comes from the man at the top. Turning it into
|
|
options for a climber is routine but constant work. Some entries, `in_charge` above all, fit a
|
|
late stage only.
|
|
- **The anecdotes are not advice.** 52 book scenes are anecdote with no lesson yet. As story material
|
|
they recur nowhere, so this book yields fewer grouped scenes per word than Lawson.
|
|
|
|
## Known defects
|
|
|
|
- **Scenes 179 to 185 are the publisher's back-matter advertisements**, left inside Letter 20 by
|
|
`split_gutenberg.py`. They are recorded with a "No situation" predicament and no advice, and are
|
|
unassigned. The split was not changed, so `chunks.json` stays the corpus as split. A production
|
|
splitter should cut at the last letter's sign-off.
|
|
- Scenes 7, 24, 31, 38, 62, 70, 99, 107, 118, 125, 147, 157 and 171 end with the next letter's boxed
|
|
heading (the Gutenberg text's framed synopsis). They are harmless to reading but inflate those
|
|
scenes' word counts.
|
|
- **G07 and G17 have only 4 scenes.** They pass this set's rule (three letters, none over half) but
|
|
not the catalogue's recurrence rule of at least 5 scenes.
|
|
- The `stated` judgements and the entry mapping are one reader's. Some mappings stretch an entry.
|
|
The Widow's "wait until you know" is filed under `gone_missing`, and Old Abe the Judas steer under
|
|
`used`. Each is recorded, not rounded.
|