# Batch 253 Process Log - Rule 211 Low-Coverage Bird Reference Lexical Expansion

Date: 2026-07-08
Operator: claude-main
Status: accepted

## Starting State

- Authoritative corpus state before banking:
  - accepted: 11,786
  - revised: 911
  - verified total: 12,697 / 20,000
  - Kuku words: 107,712
  - last completed batch: batch-252 / Rule 210
- Handoff source: `reports/KUKU-YALANJI-CORPUS-OPERATOR-GUIDE.md`, section 12.
- Rule 211 mandate: a fresh bounded lexical expansion after Rule 210, with Rule 149-210 traps kept closed.

## Construction Choice

Rule 211 uses the already sourced bare deictic/reference noun frames:

1. `TARGET yaluy.` = The TARGET is here.
2. `TARGET yinyay.` = The TARGET is there.
3. `Yinya TARGET yinyay.` = That TARGET is there.
4. `TARGET yinya yinyay.` = That TARGET is there.
5. `Yinya TARGET yaluy.` = That TARGET is here.

Grammar support reread:

- Patz section 3.7 gives Yalanji `yinya` "that/those", `yaluy` "here", and `yinyay` "there".
- Patz section 3.7 states that demonstrative pronouns imply singular or plural by context and may refer to animate or
  inanimate beings.
- Patz section 3.7 gives both preposed and postposed demonstrative-noun order, including `yinya karrkay` and
  `karrkay yinya`.
- Rule 211 keeps all support forms bare and uninflected.

## Source-Checked Target Nouns

Final targets are exact dictionary headwords in the `fauna-bird` semantic domain:

- `barinkan` noun, scrub bird, dark grey with white breast.
- `bilu-warra` noun, spoon bill.
- `bujil-yiran` noun, straw-necked ibis.
- `kalmbangarr` noun, black diver bird; selected after the initial `dawadawa` candidate failed the global
  unhyphenated-reduplication lint guard.
- `dijarrdijin` noun, willie wagtail.
- `dukunjuju` noun, golden whistler; dictionary gloss has a spelling typo "golder", but the definition is golden
  whistler.
- `jiwal-jiwal` noun, kingfisher; definition adds white-tailed, but Rule 211 uses only the kingfisher reference label.
- `karrmbil` noun, blue mountain parakeet; duplicate entry also glosses parakeet.
- `kujuway` noun, brown pigeon; duplicate entry gives brown-and-green pigeon, held as secondary detail.
- `yiki` noun, owl; duplicate entry gives night owl, held as secondary detail.

Support heads: `yinya`, `yaluy`, and `yinyay`.

## Rejected / Deferred Candidate Fields

- `place-name` was rejected categorically for this pass.
- `body-part` was rejected because the field would reopen possession, body-state, medical, healing, eating/butchery,
  emotion/cognition idiom, and privative traps.
- `fauna-fish` was rejected because earlier fish rules already carry dense catch, spear, bait, food, water/habitat,
  fish-body, taboo, storm, and event traps.
- `shelter-dwelling` was deferred because the clean low-coverage set is too small for a 10-head lexical batch without
  importing roof-making, material, place, ownership, or dwelling-use prose.
- Bird candidates with heavier secondary semantics were rejected for Rule 211: `dabway` messenger/totem bird,
  `dakwul-dakwul` dance/display prose, `dakwurr-dakwun` totem bird, `dirrmbay` warning/corroboree/death-message
  extensions, `jiway` messenger bird with fire-message prose, `jukujuku` portent/death-stranger omen, `kurri-kurri`
  stormbird/mythical/tall-person polysemy, `kurrujuwa` crocodile-warning/totem bird, `mulumu` sacred-corroboree wood
  secondary sense, and `walu-dalbaji` place/story/calling prose.
- `dawadawa` was rejected after the first under-review lint because the global lint guard treats unhyphenated
  reduplication as unsafe; the source-backed hyphenated `dawa-dawa` form was held back rather than reopening
  productive-reduplication pressure inside this batch.

## Duplicate Preflight

Exact duplicate preflight over all 50 planned Kuku surfaces returned no accepted, revised, or under-review collisions.

The clean final target set was:

`barinkan`, `bilu-warra`, `bujil-yiran`, `kalmbangarr`, `dijarrdijin`, `dukunjuju`, `jiwal-jiwal`, `karrmbil`, `kujuway`,
`yiki`.

## Five-Lens Review Commitments

- Morphology: all targets remain bare absolutive citation nouns; no case, possessive, comitative, locative,
  instrumental, number, derivation, compounding, productive reduplication, or target suffixing.
- Lexicon: each row uses only the selected bird label; no flying, singing, calling, warning, message, totem, moiety,
  sacred, story, place, nest, egg, feather, food, hunting, catching, dance, corroboree, storm, omen, death, or
  secondary-sense prose is imported.
- Syntax: only the five sourced deictic/reference frames above are used.
- Fidelity: English remains literal reference/location prose: "The X is here/there" and "That X is here/there".
- Register: rows are plain elicitation-style reference sentences, not bird-behavior reports, hunting/food narratives,
  omen statements, story-place statements, or ceremonial prose.

## Expected Count Movement

- Before close: 12,697 verified sentences.
- After close: 12,747 verified sentences.
- Remaining after close: 7,253.
- Expected Kuku-word movement: +130, because all 50 rows use one-token target nouns plus one or two one-token
  demonstratives/location words.

## Close and Export Evidence

- Initial under-review lint rejected the first `dawadawa` version:
  - `batch-253.04`, `.14`, `.24`, `.34`, `.44`: unhyphenated reduplication
  - The guard was preserved; `dawadawa`/`dawa-dawa` were removed from this batch and `kalmbangarr` was selected after
    duplicate preflight showed no collisions.
- Corrected rebank:
  - `python3 batch_scripts/bank_253.py`
  - rows: 50
  - under_review: 50
  - verified before close: 12,697
  - Kuku words before close: 107,712
- `python3 batch_scripts/close_253.py` closed Batch 253:
  - accepted rows: 50
  - review rows: 250
  - verified movement: 12,697 -> 12,747
  - Kuku-word movement: 107,712 -> 107,842
- Post-close lint:
  - `lint: 12747 rows scanned, 0 issues flagged`
  - goal metric: `12747 / 20000` verified sentences and `107842` Kuku words
- Inventory after close:
  - accepted: 11,836
  - revised: 911
  - verified total: 12,747
  - remaining to 20,000: 7,253
  - Batch 253 rows: 50
  - Batch 253 reviews: 250
  - Batch 253 lessons: 29
  - Batch 253 lexeme/source-log rows: 13
- Export refreshed with `python3 export_training.py`:
  - total rows: 12,747
  - train/dev/synthtest: 10,682 / 1,039 / 1,026
  - `wc -l export/train.jsonl export/dev.jsonl export/synthtest.jsonl`: 12,747 total
- Process ledger events:
  - `1787`-`1790`: first source, scope, duplicate preflight, and static guard pass
  - `1791`: failed `dawadawa` lint recorded and corrected
  - `1792`-`1795`: corrected source, scope, duplicate preflight, and static guard pass
  - `1796`-`1801`: lint, five-lens review, lessons, lexeme logs, and close
  - `1802`: export refresh

## Living Books and Render Evidence

- Source books updated for Rule 211 / Batch 253:
  - `reports/KUKU-YALANJI-CORPUS-OPERATOR-GUIDE.md`
  - `reports/SAMPLE-PRODUCTION-PAGES.md`
  - `reports/kuku-yalanji-mega-grammar-cheatsheet-2026-07-02.md`
  - `reports/kuku-yalanji-dictionary-errata-2026-07-02.md`
- Operator guide now names the last completed batch as Rule 211, gives the current count as 12,747 verified
  sentences and 107,842 Kuku words, and hands off to Rule 212 / Batch 254 with `bank_254.py` and `close_254.py`.
- Sample pages now show the Batch 253 / Rule 211 bird-reference examples:
  - `Barinkan yaluy.`
  - `Bilu-warra yinyay.`
  - `Yinya kalmbangarr yinyay.`
  - `Karrmbil yinya yinyay.`
  - `Yinya yiki yaluy.`
- Mega grammar cheatsheet now contains Rule 211 with source basis, target heads, safe frames, failed-lint correction,
  process traps, and lint/export counts.
- Dictionary errata now contains Batch 253 with all ten target heads, all five admitted forms per target, the
  `dawadawa` replacement note, and closed secondary readings.
- Stale-current scan over operator/sample source docs found no Batch 252 current-build note, no stale "Last completed
  Rule 210" marker, no stale "Recommended next Rule 211" handoff, no `bank_253.py`, no `close_253.py`, and no
  `12,697 verified` current marker.
- `./render-docs.sh` completed:
  - rendered `operator-guide.html`
  - rendered `sample-pages.html`
  - rendered `grammar-cheatsheet.html`
  - rendered `dictionary-errata.html`
  - wrote `index.html`
- Generated `public-docs/` HTML and Markdown artifacts contain Rule 211 / Batch 253 markers, 12,747 count, Rule 212
  handoff markers, and the Batch 253 example forms.
- Process ledger events:
  - `1803`: source books updated
  - `1804`: docs rendered

## Live Docs Verification

- Live route status checks:
  - `https://mobtranslate.com/docs` returns 301 to `https://mobtranslate.com/docs/`
  - `https://mobtranslate.com/docs/` returns 200
  - `operator-guide.html`, `sample-pages.html`, `grammar-cheatsheet.html`, and `dictionary-errata.html` return 200
  - `operator-guide.md`, `sample-pages.md`, `grammar-cheatsheet.md`, and `dictionary-errata.md` return 200
- Live body marker checks passed:
  - operator guide HTML/MD: `Rule 211`, `12,747`, `Rule 212`, `bank_254.py`, and `close_254.py`
  - sample pages HTML/MD: `Batch 253`, `Rule 211`, `12,747`, `Barinkan yaluy`, and `Yinya yiki yaluy`
  - grammar cheatsheet HTML/MD: `Rule 211`, `Barinkan yaluy`, `Yinya yiki yaluy`, and `dawadawa`
  - dictionary errata HTML/MD: `Batch 253`, `Barinkan yaluy`, `Yinya yiki yaluy`, and `Kalmbangarr`
- Live stale-marker checks over operator/sample HTML and MD found no stale Batch 252 current-build marker, stale
  Rule 210 current-completion marker, stale Rule 211 next-pick marker, `bank_253.py`, `close_253.py`, or
  `12,697 verified` current marker.
- Process ledger event:
  - `1805`: live docs verified

## Final Audit Evidence

- `python3 lint_corpus.py`:
  - `lint: 12747 rows scanned, 0 issues flagged`
  - `GOAL METRIC: 12747 / 20000 verified sentences  (107842 Kuku words)`
- Authoritative DB counts:
  - accepted: 11,836
  - revised: 911
  - verified total: 12,747
  - remaining to 20,000: 7,253
  - Kuku words: 107,842
  - last batch: 253
  - Batch 253 rows accepted: 50
  - Batch 253 review rows: 250
  - Batch 253 lessons: 29
  - Batch 253 lexeme/source-log rows: 13
  - Batch 253 process events after final audit: 20
- Export manifest and split line counts:
  - total rows: 12,747
  - train/dev/synthtest: 10,682 / 1,039 / 1,026
  - `wc -l export/train.jsonl export/dev.jsonl export/synthtest.jsonl`: 12,747 total
- Process ledger event:
  - `1806`: final audit
