bronte-corpus: gate lv-bronte for real — 0 of 365 with both controls green

The Brontë corpus's "0 of 203" was a HAND COUNT made before leak_gate.py
existed. On Yarros the automated instrument read 212 surviving where a hand
count said 86, so the hand count was never evidence. This runs the real gate,
and getting it to pass required fixing four defects the hand count could not
have seen.

CORPUS DEFECTS (repair_corpus_bronte.py, both measured):
  - 1,922 words of publisher back matter inside Shirley's last unit — a
    T. Nelson & Sons catalogue advertising Ainsworth, Marryat, Verne, Kingsley
    and Dickens, plus a Gutenberg transcriber's punctuation list. Not Brontë,
    and the source of the entity CHARLES. Same structural cause as the
    Hemingway run: a splitter cuts on headings, nothing follows the final one.
  - 1,368 Gutenberg italic spans. Two harms: they teach the adapter to emit
    underscores, and the underscore is a word character, so the gate's
    word-boundary scan cannot match inside an italicised name. An entity in
    italics is invisible to the gate — the same never-renamed-AND-never-
    reported shape as Yarros's possessive-only Afendra.

DETECTOR GAPS (phrase_map_bronte.json):
  - Blanche is 19 capitalised against ONE lowercase — ratio 0.0526, over the
    0.05 bar by a single token, so a named character with 19 mentions is
    dropped by a hair.
  - Grace (0.224) and Hollow (0.235) are refused correctly — both are common
    nouns — but Grace Poole and Hollow's Mill are Brontë's. Sampling all 21
    bare capitalised Grace found 20 are the character in direct address and
    exactly one is the theological noun.
  - Five compounds whose every component is non-renameable survive verbatim:
    Moor House, Marsh End, Vale Hall, Bigben Close, Royd Lane. The other 77
    audited phrases do not, because each has a renameable component.

GENDER (pin_known_gender.py): the inherited resolver put Jane MALE across 336
occurrences. Hemingway's base-rate resolver is strictly better here (1 wrong vs
4) but still fails on Jane, and the failure is structural, not tuning — Brontë's
three narrators are first-person, so their names appear almost only in dialogue
surrounded by other characters' pronouns. Ground truth is pinned separately from
the resolver's evaluation so the two are never conflated.

Also: min-cap lowered 8 to 3, which pulled Bertha, Ferndean, Rochesters and
Creemsvort in from below the old floor; corpus-scope rename so a name below
threshold in one novel is not printed verbatim there while renamed in another.

Gate: 0 of 365 surviving, positive control 365/365, negative control clean,
phrase audit 0 of 82. Floor stated: 3 capitals per work, 5 recurrences.
This commit is contained in:
vh
2026-09-16 20:51:11 -07:00
parent a5745dcf72
commit fc834a8a23
4 changed files with 300 additions and 0 deletions
@@ -0,0 +1,29 @@
{
"corpus": "lv-bronte (Charlotte Brontë — Jane Eyre, Villette, Shirley, The Professor)",
"why": "The unigram rename cannot reach an in-world compound built out of ordinary words, and it cannot reach a character whose given name is also an English noun. Both classes survive a gate that reads 0 of 203, for the same reason `Riders Quadrant` and `Fourth Wing` survived Yarros's: the cap/lowercase detector correctly refuses to call `Moor`, `Marsh`, `Vale` or `Grace` a name, so rename never sees them.",
"how_derived": "Measured, not guessed. Every capitalised 2-3gram recurring >= 5 times in the source (88 of them) was checked component-by-component against the renameable entity set; only the 5 whose EVERY component is non-renameable survive the rename verbatim, and those are the `phrases` below. The `tokens` are the two characters the ratio test drops and one given name the compound pass leaves bare. Every replacement was collision-checked against the whole corpus and occurs 0 times in it.",
"phrases": {
"Moor House": "Ashdene House",
"Marsh End": "Thurlby End",
"Vale Hall": "Kelmar Hall",
"Bigben Close": "Denholm Close",
"Royd Lane": "Crowmoor Lane"
},
"tokens": {
"Blanche": "Rosalind",
"Grace": "Millicent",
"Matthewson": "Everard",
"Hollow": "Sowerby"
},
"tokens_why": "`Blanche` (Blanche Ingram) has 19 capitalised occurrences against ONE lowercase, giving ratio 0.0526 — over the 0.05 bar by a single token, so a named character with 19 mentions is dropped by a hair. `Grace` (Grace Poole) is rejected honestly: `grace` the common noun runs at a 0.224 lowercase ratio in Jane Eyre. Sampling all 21 bare capitalised `Grace` found 20 are the character in direct address (`Too much noise, Grace`, `Good morning, Grace`) and exactly one is the theological noun (`children of Grace`), which this map will also substitute — a known and accepted cost of one occurrence against a character leaking 37 times. `Matthewson` is Rev. Helstone's given name; the surname renames, the given name does not. `Hollow` (Hollow's Mill, and `the Hollow` for the valley) is 85 capitalised against 20 genuinely lowercase (`rushing down the hollow`), ratio 0.235 — the detector refuses it correctly. The token map is capitalised-and-whole-word, so it reaches `Hollow’s Mill` and `Hollow’s Miln` without touching the common noun. Caught only because a positive control asserted `Hollow` should be an entity and the gate disagreed; the control was wrong, not the detector — the same way `Adèle` failed as `Adele`.",
"allow": [
"Good God",
"Thank God",
"Lord Wellington",
"Human Justice",
"Miss Smith",
"And Mrs"
],
"allow_why": "Real-world referents and generic English any novelist could write. `Lord Wellington` is the historical commander (Shirley is set during the Napoleonic wars). `Human Justice` is an allegorical personification in Villette built from two ordinary nouns. `Miss Smith` is the most generic surname in English and belongs to a minor Lowood teacher. `Good God` and `Thank God` are exclamations. `And Mrs` is a regex artefact of the audit's own 2-3gram pattern catching a sentence-initial `And Mrs.`, not a name.",
"deliberately_NOT_mapped": "`Rue Fossette`, `Thornfield Hall`, `Crimsworth Hall`, `Walden Hall`, `Sympson Grove`, `Nunnely Common`, `Grace Poole`, `Jean Baptiste`, `Meess Lucie`, `Cyril Hall` and `Margaret Hall` all LOOK like leaks in the audit listing and are not: each has at least one renameable component, so the phrase never survives verbatim into a copy. Mapping them would be double-substitution. `Moor` is mapped only inside `Moor House` — bare `Moor` is the Yorkshire moorland and renaming it would damage the prose for no leak benefit."
}