# Batch 287 - Rule 245 Process Log

Theme: body-part perception pronoun expansion after Rule 244.

Starting state:
- Verified sentences before batch: 14,397 / 20,000.
- Under review before batch: 0.
- Latest completed rule before this batch: Rule 244 / batch-286, landform/geography perception pronoun expansion.
- Process ledger before banking: events complete through 2392.

Field audit:
- Rule 245 returns to the Rule 234-235 body-part field because those ten target heads are already dictionary-backed
  and already trapped against possession, body-state, pain, illness, medical, event, and homograph drift.
- This is a construction consolidation, not a new lexical field. It keeps the Rule 234 target inventory and changes
  only the bare nominative subject pronoun and local demonstrative distribution in simple perception frames.
- The final planned grid uses five sourced, zero-collision bare nominative-pronoun bands: `Ngali TARGET yaluy
  nyajil`, `Ngaliny TARGET yinyay nyajil`, `Yubal TARGET yaluy nyajil`, `Nganjin TARGET yinyay nyajil`, and
  `Yurra TARGET yaluy nyajil`.

Source basis:
- Patz section 3.1 supports nouns as nominal semantic content and includes corporeal objects in the noun domain.
- Dictionary entries source the retained target labels: `bandin` love handles, `bari` chin, `bibar` shin, `birri`
  fingernail, `jiba` liver, `jandal` leg, `jibar` stomach, `kangkul` cheek, `kuwinyu` posterior, and `waba` thigh.
- Patz section 3.5 Table 3.6 sources bare nominative `ngali`, `ngaliny`, `yubal`, `nganjin`, and `yurra`.
- Patz section 3.7 Table 3.12 and Table 3.14 source Yalanji local demonstratives `yaluy` "here" and `yinyay`
  "there".
- Patz section 3.8.3.2 sources `nyaji-l` "see"; Rule 245 uses only nonpast `nyajil`.

Selected target heads:
- `bandin` - love handles; lexical plural English only, no possession, body-state, pain, or medical row.
- `bari` - chin; no jaw extension from the source entry.
- `bibar` - shin; no ankle extension from the source entry.
- `birri` - fingernail; no toenail extension from the source entry.
- `jiba` - liver; no insides, guts, organs, emotion, butchery, eating, medical, or compound row.
- `jandal` - leg; no walking, movement, injury, possession, or event row.
- `jibar` - stomach; no locational `jibarr`, emotion, sickness, eating, or possession row.
- `kangkul` - cheek; no `kangku` valley drift and no `kangkul kulbal` slap row.
- `kuwinyu` - posterior; neutral reference only, no rude-register, ritual, taboo, sitting-event, or possession row.
- `waba` - thigh; no hip extension from the source entry.

Planned frame grid:
- Rows 1-10: `Ngali TARGET yaluy nyajil`.
- Rows 11-20: `Ngaliny TARGET yinyay nyajil`.
- Rows 21-30: `Yubal TARGET yaluy nyajil`.
- Rows 31-40: `Nganjin TARGET yinyay nyajil`.
- Rows 41-50: `Yurra TARGET yaluy nyajil`.

Preflight:
- Exact planned-surface collision scan over the final 50 Rule 245 surfaces returned 0 accepted, revised, or
  under-review collisions.
- Token-aware coverage before banking after Rule 244 was low enough for the retained body-part heads to justify
  consolidation: `bandin` 10, `bari` 14, `bibar` 20, `birri` 18, `jiba` 51, `jandal` 34, `jibar` 52, `kangkul`
  14, `kuwinyu` 10, and `waba` 14.
- Pronoun coverage before banking remained useful for the selected dual/exclusive and second-plural support:
  `ngali` 101, `ngaliny` 35, `yubal` 49, `nganjin` 51, and `yurra` 94.
- Static guards in `bank_287.py`: 50 explicit hand-authored rows; exactly one Rule 245 body-part target noun per
  row; exactly one selected bare nominative pronoun per row; no loans; no target morphology; no excluded possession,
  body-state, pain, illness, medicine, body-fluid, taboo, event, homograph, or source-prose tokens; no pronoun case;
  no perception compound; five sourced pronoun-perception bands only.

Closeout requirements:
- Run `python3 -m py_compile batch_scripts/bank_287.py batch_scripts/close_287.py`.
- Run `python3 batch_scripts/bank_287.py`.
- Run whole-corpus lint while rows are under review.
- Read back all 50 rows and run five-lens review.
- Run `python3 batch_scripts/close_287.py`.
- Run whole-corpus lint again.
- Run `python3 export_training.py`.
- Update all living books with Rule 245 and rerender docs with `./render-docs.sh`.
- Verify `/docs`, `/docs/`, all four rendered HTML docs, and all four raw Markdown docs from `mobtranslate.com`.

Execution closeout:
- `python3 -m py_compile batch_scripts/bank_287.py batch_scripts/close_287.py` passed before execution.
- `python3 batch_scripts/bank_287.py` banked 50 hand-authored Rule 245 rows as `under_review`.
- Under-review lint scanned 14,447 rows with 0 issues while the goal metric remained 14,397 verified sentences.
- SQLite row readback reviewed all 50 rows and confirmed the intended five-band grid:
  `Ngali TARGET yaluy nyajil`, `Ngaliny TARGET yinyay nyajil`, `Yubal TARGET yaluy nyajil`,
  `Nganjin TARGET yinyay nyajil`, and `Yurra TARGET yaluy nyajil`.
- `python3 batch_scripts/close_287.py` accepted all 50 rows, inserted 250 five-lens review passes, 32 lessons, and
  18 lexeme/source-log rows. Verified count moved 14,397 -> 14,447; Kuku word count moved 112,947 -> 113,147.
- Post-close lint GREEN: 14,447 rows scanned, 0 issues flagged; goal metric 14,447 / 20,000.
- `python3 export_training.py` regenerated the export with 14,447 rows: train 12,115, dev 1,168, synthtest 1,164.
- Living books were updated for Batch 287 / Rule 245: operator guide handoff, sample production pages, mega grammar
  cheatsheet, and dictionary errata.
- `./render-docs.sh` regenerated the public static docs. Local `public-docs/` verification found Batch 287 / Rule
  245, 14,447, Rule 246, `bank_288.py`, `close_288.py`, body-part sample rows, export split markers, and this
  process-log path in the rendered artifacts.
- Live `mobtranslate.com/docs/` verification passed: `/docs/` and all four HTML pages plus all four raw Markdown files
  returned 200 with Batch 287 / Rule 245 markers; `/docs` without slash returned 301 to `/docs/`.
- Process-log closeout was recorded as event 2411.
- Final audit remained green after process-log finalization: 14,447 verified rows, 13,536 accepted rows, 911 revised
  rows, 0 under-review rows, 50 accepted Batch 287 rows, 250 review records, 32 lessons, 18 lexeme/source-log rows,
  and whole-corpus lint at 14,447 rows scanned with 0 issues flagged. Local rendered-doc, source-report, and
  process-log marker checks all matched Batch 287 / Rule 245 / 14,447.
- Process ledger events through final audit: 2393-2412.
