# Batch 181 Process Log: Rule 139 Camp/Fire-Material Lexical Expansion After Rule 138

## Scope

- Goal: add 50 verified synthetic Kuku Yalanji rows after Rule 138.
- Batch type: lexical expansion after a source pass, not another Rule 137/138 handled-object consolidation.
- Target heads:
  - `jimal`: fire stick.
  - `ngunjil`: charcoal/hot coals.
  - `dumbul`: bark; shell/crust senses excluded.
  - `buyku`: paperbark.
  - `jikan`: grass.
  - `baya`: fire/firewood.
  - `kubu`: smoke.
  - `nganjirr`: grass tree.
- Reused support-only heads: `balji` bag/container, `bubu` ground/place, `wabarr` shade, `bayan` camp/house.
- Reused frames: state, rest-location, perception, placement, leaving, and getting/source.

## Source Readback

- Dictionary/source anchors retained:
  - `jimal`: dictionary fire stick; commentary links it to `jimal damal` make fire with a fire stick.
  - `ngunjil`: dictionary charcoal/hot coals; grammar ex.175 has wood turning into charcoal.
  - `dumbul`: dictionary bark/hard covering; Rule 139 selected bark only.
  - `buyku`: dictionary paperbark; grammar/Text 51 has paperbark sitting on top in an earth-oven sequence.
  - `jikan`: dictionary grass; grammar examples include grass location and grass objects.
  - `baya`: dictionary and grammar fire/firewood; grammar classifier note includes fire, firewood, smoke, matches, hot ashes.
  - `kubu`: dictionary smoke; grammar line has `baya kubu nyaji-nka` to see smoke.
  - `nganjirr`: dictionary grass tree; grammar ex.65 confirms root `nganjirr` grass tree(s).
- Rejected candidate:
  - `bajar`: dictionary entries gloss English "ash" only because the tree is Moreton Bay ash/white gum. The definitions and commentary specify a tree, not ash residue. No residue-ash sentence was admitted.
- `ngalku` was checked as bush fire/grassfire but kept out of this batch to avoid opening another fire-event subfield.

## Risk Controls

- No `bajar` residue-ash rows.
- No `ngalku` grassfire rows.
- No Rule 137/138 handled-object carry-over heads: `badur`, `karra`, `makarr`, `ngunyin`, `wangal`, `warrbi`,
  `kunjuri`, or `kalka`.
- No target-head dative, locative, ablative, instrumental, comitative, possessive, or compound forms.
- No instruments.
- No comitatives.
- No alienable possessive suffixes.
- No temporal clitics.
- No body-part traps: `waba`, `jandal`, `dakil`, or locational `jibarr`.
- No carry-over animal/body-flesh heads: `malbin`, `jiba`, `bangkarr`, or `minya`.
- No `jungkalu`, `juku`, `kulji`, or `kambi` drift.
- `Dumbul` remains bark only in this batch.
- `Baya` remains fire/firewood only; firewood is used only for the dry material state row.
- `Kubu` remains smoke only.
- `Nganjirr` remains grass tree only.
- `Baya`, `kubu`, and `nganjirr` are not treated as portable handled objects.
- Common-noun transitive/perception A must be ERG-marked.
- Pronoun A must remain bare.

## Authoring Notes

- Rows were hand-authored in the main loop.
- Exact duplicate preflight initially caught two candidates:
  - `Jikan marral.` duplicated Batch 145.
  - `Dingkar-angka kubu nyajin.` duplicated Batch 171.
- Final planned-surface scan found 50 planned rows, 50 unique within-batch surfaces, and zero exact cross-corpus
  duplicates.
- The bank script requires 50 rows, Rule 139 frame ids, JSON metadata, zero loans, selected-sense glosses, at least
  one target head in every row, no target case forms, no denied heads, approved local support forms only, ERG
  common-noun A, bare pronoun A, and no portable-object treatment for fire/smoke/grass-tree rows.
- The bank script performs an exact cross-corpus duplicate scan before insertion and refuses to overwrite
  accepted/revised rows.

## Banking, Review, And Close

- Compile command: `python3 -m py_compile batch_scripts/bank_181.py batch_scripts/close_181.py`
  - no output; compile succeeded.
- Pre-bank lint:
  - `lint: 9097 rows scanned, 0 issues flagged`
  - `GOAL METRIC: 9097 / 20000 verified sentences (95730 Kuku words)`
- Bank command: `python3 batch_scripts/bank_181.py`
  - `banked batch-181: rows=50, under_review=50, verified_before_close=9097`
- Under-review lint:
  - `lint: 9147 rows scanned, 0 issues flagged`
  - `GOAL METRIC: 9097 / 20000 verified sentences (95730 Kuku words)`
- Close command: `python3 batch_scripts/close_181.py`
  - `closed batch-181: 50 accepted rows, 250 review passes, 25 lessons, 31 lexeme/source-log rows, 12 process events, under_review=0, verified corpus=9147`
- Post-close lint:
  - `lint: 9147 rows scanned, 0 issues flagged`
  - `GOAL METRIC: 9147 / 20000 verified sentences (95902 Kuku words)`
- Export refresh:
  - total rows: 9,147
  - train/dev/synthtest: 7,667 / 741 / 739
- Process events:
  - 16 rows for `batch-181`: source pass, lexical scope, risk controls, duplicate preflight,
    process capture, bank success, under-review lint, five-lens pass, review detail, lesson inventory, lexeme/source
    log, close success, post-close lint, export refresh, docs render, and live-doc verification.

## Five-Lens Close Notes

- Morphology: target heads stayed bare; no dative, locative, ablative, instrumental, comitative, possessive, or
  compound target forms appeared. The only local support forms were `balji-nga`, `bubu-ngu`, `wabarr-ba`,
  `bayan-ba`, and `bubu-muny`. Common-noun A stayed ERG-marked, and pronoun A stayed bare.
- Lexicon: `jimal` stayed fire stick, `ngunjil` charcoal/hot coals, `dumbul` bark, `buyku` paperbark, `jikan`
  grass, `baya` fire/firewood, `kubu` smoke, and `nganjirr` grass tree. `Bajar` was rejected as residue ash because
  the dictionary entries specify a tree; `ngalku` stayed unopened.
- Syntax: state rows used simple noun-predicate clauses; rest rows were limited to portable material nouns;
  perception rows admitted fire, smoke, and grass tree without forcing them into handled-object frames; placement,
  leave, and get/source rows were reserved for fire stick, charcoal, bark, paperbark, and grass.
- Fidelity: English labels narrow the selected senses. `Baya marral` is firewood dry, while `baya` perception rows
  are fire. `Ngunjil` rows never say ash.
- Register: rows remained ordinary practical sentences about materials being good/dry/big, lying somewhere, seen,
  put, left, or taken.

## Living Books And Live Verification

- Updated source living books:
  - `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`
- Render command: `./render-docs.sh`
  - rendered `operator-guide.html`, `sample-pages.html`, `grammar-cheatsheet.html`, and `dictionary-errata.html`
  - copied raw `.md` sources alongside the HTML
  - wrote `public-docs/index.html`
- Live URL verification:
  - `/docs` returned 301 to `/docs/`
  - `/docs/` returned 200
  - all four HTML docs returned 200
  - all four raw `.md` docs returned 200
  - live markers present: `9,147`, `Rule 139`, `Rule 140`, `batch-181`, `Jimal ngulkurr`,
    `Ngunjil bubu-ngu wunan`, `Baya marral`, `Kami-ngka kubu nyajin`, `7667/741/739`,
    `Moreton Bay ash`, and `export/docs/live`.

## Next Handoff

- After close, the next batch should be `batch-182`, proposed Rule 140.
- Keep Rule 139 traps active: `bajar` is a tree-name trap, `ngalku` remains unopened unless a later source pass
  intentionally opens grassfire/bush-fire rows, and `baya`/`kubu`/`nganjirr` should not be treated as portable
  handled objects.
