# Batch 285 - Rule 243 Process Log

Theme: dwelling/household perception pronoun expansion after Rule 242.

Starting state:
- Verified sentences before batch: 14,297 / 20,000.
- Under review before batch: 0.
- Latest completed rule before this batch: Rule 242 / batch-284, bird-reference perception construction
  consolidation.
- Process ledger before banking: events complete through 2352.

Field audit:
- Rule 243 returns to the Rule 238-239 dwelling/household field because those ten target heads are already
  dictionary-backed and heavily trapped against source-prose drift.
- The first plan was a simple complementary dwelling/household perception grid after Rule 239. It was rejected before
  banking because exact surfaces collided with older accepted rows: `Nyulu TARGET yinyay nyajil` collided across the
  Rule 238 targets, and `Ngayu jakway/yulal/bilangkurr yaluy nyajil` collided with earlier rows.
- The second plan used underrepresented bare nominative pronouns from Patz Table 3.6. `Ngana TARGET yaluy/yinyay
  nyajil` and `Yundu TARGET yaluy/yinyay nyajil` each collided on `jakway`, `yulal`, and `bilangkurr`, so those full
  bands were rejected.
- The final planned grid uses five sourced, zero-collision bare nominative-pronoun bands: `Yulu TARGET yaluy nyajil`,
  `Ngali TARGET yinyay nyajil`, `Ngaliny TARGET yaluy nyajil`, `Yubal TARGET yinyay nyajil`, and
  `Nganjin TARGET yaluy nyajil`.

Source basis:
- Patz section 3.1.2 supports `bayan` as camp/house/shelter and the dwelling/object noun class used in Rule 238.
- Dictionary entries source the retained target labels: `bakarr` ridge pole, `bayan` house, `bira` windbreak, `jiji`
  roof, `kilili` windbreak, `wurun` humpy, `jakway` door, `yulal` board, `bilangkurr` blanket.
- `Kararr` is the Patz-backed grammar-added blanket/sheet/grass-bedding head already admitted in Rule 238; Rule 243
  selects only the blanket label and does not open sheet, grass bedding, spreading, sleeping, or warming.
- Patz section 3.5 Table 3.6 sources bare nominative `yulu` as a less common free variant of `nyulu`, plus `ngali`
  first dual exclusive, `ngaliny` first dual inclusive, `yubal` second dual, and `nganjin` first plural exclusive.
- 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 243 uses only nonpast `nyajil`.

Selected target heads:
- `bakarr` - ridge pole; no building, pole material, or source-material claim.
- `bayan` - house; no camping, building, possession, locative house row, opium, particle, or `yamba-kari` none.
- `bira` - windbreak; no making, setting, rain/cold shelter, weather, or material-source row.
- `jiji` - roof; no top-of-anything extension or roofing-material prose.
- `kilili` - windbreak; no construction, weather, or source-material row.
- `wurun` - humpy; no halfway translation, building, sleeping, rain-shelter, or locative row.
- `jakway` - door; no front sense and no open/close/shut predicate.
- `yulal` - board; no plank wording, round-stick contrast, nailing, or building prose.
- `kararr` - blanket; no sheet, grass bedding, spreading, sleeping, covering, warming, or year-counting extension.
- `bilangkurr` - blanket; no clothing, sleeping, covering, warming, or ownership row.

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

Preflight:
- Rejected complementary Rule 239 grid collisions: `Nyulu TARGET yinyay nyajil` across the Rule 238 targets, plus
  `Ngayu jakway/yulal/bilangkurr yaluy nyajil`.
- Rejected `ngana` and `yundu` full bands because both local-demonstrative values collided on `jakway`, `yulal`, and
  `bilangkurr`.
- Exact planned-surface collision scan over the final 50 Rule 243 surfaces returned 0 accepted, revised, or
  under-review collisions.
- Token-boundary corpus coverage before banking after Rule 242: `bakarr` 10, `jiji` 10, `kilili` 10, `bira` 11,
  `jakway` 20, `yulal` 20, `bilangkurr` 27, `kararr` 27, `wurun` 33, and `bayan` 436.
- Pronoun coverage before banking: `ngaliny` 13, `yubal` 24, `nganjin` 28, `ngali` 78, `ngana` 858, and `yundu`
  1174; Rule 243 intentionally gives the low-count dual/exclusive forms more training signal and uses `yulu` because
  it is source-backed and zero-collision.
- Static guards in `bank_285.py`: 50 explicit hand-authored rows; exactly one Rule 243 dwelling/household target noun
  per row; exactly one selected bare nominative pronoun per row; no loans; no target morphology; no excluded
  homograph/action/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_285.py batch_scripts/close_285.py`.
- Run `python3 batch_scripts/bank_285.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_285.py`.
- Run whole-corpus lint again.
- Run `python3 export_training.py`.
- Update all living books with Rule 243 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_285.py batch_scripts/close_285.py` passed before execution.
- `python3 batch_scripts/bank_285.py` banked 50 hand-authored Rule 243 rows as `under_review`.
- Under-review lint scanned 14,347 rows with 0 issues while the goal metric remained 14,297 verified sentences.
- SQLite row readback reviewed all 50 rows and confirmed the intended five-band grid:
  `Yulu TARGET yaluy nyajil`, `Ngali TARGET yinyay nyajil`, `Ngaliny TARGET yaluy nyajil`,
  `Yubal TARGET yinyay nyajil`, and `Nganjin TARGET yaluy nyajil`.
- `python3 batch_scripts/close_285.py` accepted all 50 rows, inserted 250 five-lens review passes, 33 lessons, and
  18 lexeme/source-log rows. Verified count moved 14,297 -> 14,347; Kuku word count moved 112,547 -> 112,747.
- Post-close lint GREEN: 14,347 rows scanned, 0 issues flagged; goal metric 14,347 / 20,000.
- `python3 export_training.py` regenerated the export with 14,347 rows: train 12,027, dev 1,165, synthtest 1,155.
- Living books were updated for Batch 285 / Rule 243: 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 285 / Rule 243,
  14,347, Rule 244, `bank_286.py`, `close_286.py`, sample rows, and export split markers 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 285 markers; `/docs` without slash returned 301 to `/docs/`.
- Final audit remained green after process-log finalization: 14,347 verified rows, 13,436 accepted rows, 911 revised
  rows, 0 under-review rows, 50 accepted Batch 285 rows, 250 review records, 33 lessons, 18 lexeme/source-log rows,
  and whole-corpus lint at 14,347 rows scanned with 0 issues flagged.
- Process ledger events through final audit: 2353-2372.
