# Batch 189 - land-animal lexical expansion after Rule 146

- Goal state before batch: 9,497 / 20,000 verified sentences.
- Batch type: lexical expansion after construction consolidation.
- Proposed rule: Rule 147 - source-backed land-animal lexical expansion after Rule 146.
- Batch size: 50 rows.
- Authoring mode: hand-authored in the main loop; no generator-authored rows.

## Source Scope

Rule 147 opens a narrow land-animal name field. It admits name rows only: size-state predicates, support-only
locative nominal clauses, and perception rows. It does not open hunting, killing, biting, chasing, spearing, cutting,
eating, meat, poison, fear, taboo, story, myth, totem, tracks, or animal-behaviour ecology.

Target heads:

- `bikibiki`: pig. Attested loan/contact animal; use the reduplicated dictionary form only.
- `kadar`: plains wallaby / wallaby.
- `julmbanu`: grey kangaroo.
- `kaya`: dog.
- `walkarr`: black scrub goanna.
- `jarba`: snake, generic snake only.
- `bajabaja`: blue-tongue lizard; animal sense only, not place or story-site use.

Supporting source/readback:

- Dictionary structured readback confirms all selected target senses except no `bulki` exact dictionary head, so
  `bulki` was excluded despite Patz grammar attestations.
- Patz grammar readback confirms `bikibiki` pig, `kadar` wallaby, `julmbanu` grey kangaroo, `kaya` dog, `walkarr`
  black goanna, `jarba` snake, and `bajabaja` blue-tongue lizard.
- Patz and current corpus readback support `yalbay` big, support locatives `madja-nga`, `ngalkal-ba`, `bayan-ba`,
  and `bubu-ngu`, and `nyaji-l` perception with past `nyajin` and nonpast `nyajil`.
- Current lexeme DB readback confirms all target heads exist as attested lexemes before authoring.

## Risk Controls

- No hunting, killing, spearing, shooting, chasing, catching, cutting, biting, licking, eating, meat, food, poison,
  sickness, fear, taboo, storm, story, myth, totem, track, or animal-behaviour rows.
- `Bikibiki` is admitted only as the source-backed pig loan/contact animal; `biki` is not used as a target surface.
- `Kadar` is wallaby only; no killing, eating, meat, or hunting row.
- `Julmbanu` is grey kangaroo only; no boss/metaphor, spear, meat, or hunt row.
- `Kaya` is dog only; no bite, chase, barking, possession, food, or dog-tail row.
- `Walkarr` is black scrub goanna only; no viciousness, teeth, germs, food, or contrast row.
- `Jarba` is generic snake only; no bite, fear, poison, dead-snake instrument, rainbow-snake, or myth row.
- `Bajabaja` is blue-tongue lizard only; no story-site, place, egg, myth, tongue-display, fear, or medicinal row.
- No target-head case forms: no target dative, locative, ablative, instrumental, comitative, possessive, or compound
  forms.
- Support locatives are limited to `madja-nga`, `ngalkal-ba`, `bayan-ba`, and `bubu-ngu`.
- Common-noun perception A must be ERG-marked.
- Pronoun A must remain bare.

## Planned Frame Mix

- Size-state rows with `yalbay`.
- Support-only locative nominal clauses with `madja-nga`, `ngalkal-ba`, `bayan-ba`, or `bubu-ngu`.
- Past perception rows with `nyajin`.
- Present perception rows with `nyajil`.

## Authoring Notes

- Exact duplicate preflight over planned surfaces found 50 rows and 50 unique planned surfaces before file creation.
- This lexical pass deliberately avoids all animal ecology and use claims; it only tests whether the selected nouns
  behave as bare absolutive targets in already-established state, location, and perception frames.
- The bank script refuses to proceed if any row opens animal-use/animal-danger semantics, target case morphology,
  unapproved support local forms, missing common-noun ERG, or an exact duplicate surface.

## Banking, Review, And Close

- Pre-bank compile: `python3 -m py_compile batch_scripts/bank_189.py batch_scripts/close_189.py` succeeded.
- Pre-bank lint: `lint: 9497 rows scanned, 0 issues flagged`; goal metric 9,497 / 20,000, 96,980 Kuku words.
- Pre-bank DB state: accepted 8,586; revised 911; verified total 9,497; Batch 189 rows 0; Batch 189 events 0.
- Exact duplicate preflight over planned surfaces found 50 rows, 50 unique planned surfaces, and no cross-corpus
  duplicates.
- Banking command: `python3 batch_scripts/bank_189.py`.
- Banking result: `banked batch-189: rows=50, under_review=50, verified_before_close=9497`.
- Under-review lint: `lint: 9547 rows scanned, 0 issues flagged`; verified total remained 9,497 before close.
- Row readback confirmed all 50 size-state, support-locative, past-perception, and present-perception surfaces were
  stored as authored.
- Independent row audit over the 50 banked surfaces reported `rows=50 targets=7 issues=0` for target uniqueness,
  forbidden target case morphology, `bikibiki` loan logging, and no unexpected loan rows.
- Close command: `python3 batch_scripts/close_189.py`.
- Close result: `closed batch-189: 50 accepted rows, 250 review passes, 25 lessons, 25 lexeme/source-log rows,
  11 process events, under_review=0, verified corpus=9547`.
- Post-close lint: `lint: 9547 rows scanned, 0 issues flagged`; goal metric 9,547 / 20,000, 97,131 Kuku words.
- Training export command: `python3 export_training.py`.
- Export result: 9,547 rows total; train/dev/synthtest split 8,009 / 770 / 768.

## Five-Lens Close Notes

- **Morphology:** all land-animal target heads stayed bare. No target dative, locative, ablative, instrumental,
  comitative, possessive, or compound forms appeared. `Bikibiki` and `bajabaja` were treated as whole lexical heads.
  The only support locatives were `madja-nga`, `ngalkal-ba`, `bayan-ba`, and `bubu-ngu`.
- **Lexicon:** target senses were restricted to pig, wallaby, grey kangaroo, dog, black scrub goanna, generic snake,
  and blue-tongue lizard. `Biki` and `bulki` stayed excluded; `bajabaja` stayed animal-only; `jarba` stayed generic
  snake-only.
- **Syntax:** size-state rows used `yalbay`; locative nominal clauses used one approved support locative; past
  perception rows used `nyajin`; present perception rows used `nyajil`. Common-noun A was ERG-marked; pronoun A stayed
  bare.
- **Fidelity:** English labels explicitly selected the intended land-animal senses. No hunting/killing/spearing/
  shooting/chasing/catching/cutting, biting/licking/barking, eating/meat/food, poison/sickness/fear/taboo/storm,
  story/myth/totem, track/egg/tail/teeth, or behaviour inference was imported.
- **Register:** rows stayed ordinary descriptions of animals being big, being at a place, or being seen.

## Living Books And Live Verification

- Reports patched:
  `reports/KUKU-YALANJI-CORPUS-OPERATOR-GUIDE.md`,
  `reports/SAMPLE-PRODUCTION-PAGES.md`,
  `reports/kuku-yalanji-mega-grammar-cheatsheet-2026-07-02.md`, and
  `reports/kuku-yalanji-dictionary-errata-2026-07-02.md`.
- Render command: `./render-docs.sh`.
- Render result: `operator-guide.html`, `sample-pages.html`, `grammar-cheatsheet.html`, `dictionary-errata.html`, raw
  `.md` copies, and `index.html` regenerated in `public-docs/`.
- Local generated-file marker check passed for 9,547, Rule 147, Rule 148, Batch 189, selected land-animal examples,
  and export split 8,009 / 770 / 768.
- Live verification used a browser-like user agent. Checks passed: `/docs` returned 301 to `/docs/`; `/docs/`
  returned 200; all four HTML pages returned 200; all four raw `.md` pages returned 200; Batch 189 markers were
  present.

## Next Handoff

- After close, the next batch should be `batch-190`, proposed Rule 148.
- Recommended cadence: construction consolidation after Rule 147, unless a targeted debt sweep is more urgent.
- Keep animal ecology closed unless a future batch deliberately sources it as its own field.
