# Batch 327 / Rule 285 - visible artefact/tool non-singular past pronoun perception after Rule 284

Status: planned for banking from 16,397 verified sentences.

## Scope

Rule 285 is a fresh lexical-field audit because the original phantom watchlist is resolved. It opens exactly one
construction: bare visible artefact/tool noun targets in non-singular past visual perception frames with already
sourced support morphology.

Frames:

- `Ngali TARGET yinyay nyajin.`
- `Ngaliny TARGET yaluy nyajin.`
- `Yubal TARGET yinyay nyajin.`
- `Yurra TARGET yaluy nyajin.`
- `Jana TARGET yinyay nyajin.`

## Source readback

Dictionary line readback:

- `badur` 256-268: noun, hook / hook and line; fishing action closed.
- `balji` 963-974: noun, bag / woman's dilly bag made from grass or black palm; making/material-source rows closed.
- `balur` 1154-1170: noun, spear thrower / woomera; empty duplicate entry confirms the same noun.
- `kaljan` 12560-12568: noun, outrigger canoe; canoe travel/rowing rows closed.
- `dajal` 4499-4509: noun, fighting spear; spearing/fighting action rows closed.
- `dakilji` 4665-4676: noun, cup / pannikin; post-contact expansion rows closed.
- `jidi` 8842-8851: noun, paperbark-tree-bark torch; fire/burning/making rows closed.
- `jindal` 9423-9433: noun, spear with three prongs; homophonous `jindal` bite verb closed.
- `jundi` 10846-10857: noun, pumice stone / carborundum stone; sharpening/rubbing use rows closed.
- `karra` 13534-13544: noun, rope/cord/string, synonym `ngarra`; tying/use rows closed.

Grammar line readback:

- Patz lines 2577-2586 and 2592-2603: personal pronoun paradigm and base forms. Rule 285 uses bare nominative
  `ngali`, `ngaliny`, `yubal`, `yurra`, and `jana`.
- Patz lines 2674-2686: non-singular source notes; `ngali` is first dual exclusive, `ngaliny` is first dual
  inclusive by increment, `yubal` is second dual, `yurra` is second plural, and `jana` is third plural.
- Patz lines 2838-2845: local demonstratives `yaluy` "here" and `yinyay` "there".
- Patz lines 2568-2571: `nyaji-ny` "see-PAST"; Rule 285 uses corpus-conventional `nyajin`.
- Patz section 3.8.3.2 lines 3043-3049: `nyaji-l` "see" is contrast only here; Rule 285 does not use nonpast
  `nyajil`.

## Preflight

The first Rule 285 target set retained `birungubay` paddle/oar, but exact duplicate preflight found:

- `Jana birungubay yinyay nyajin.` already exists in Batch 231, row 31.

Rule 285 therefore excludes `birungubay` and uses sourced `kaljan` outrigger canoe. The final planned 50 surfaces
are 50 unique strings and have 0 accepted/revised/under-review collisions.

Token-aware accepted/revised coverage before banking:

- Targets: `badur` 45, `balji` 194, `balur` 33, `kaljan` 3, `dajal` 0, `dakilji` 5, `jidi` 13, `jindal` 2,
  `jundi` 7, `karra` 103.
- Support: `ngali` 333, `ngaliny` 275, `yubal` 285, `yurra` 290, `jana` 953, `yaluy` 2942, `yinyay` 3244,
  `nyajin` 400.

## Planned rows

1. `Ngali badur yinyay nyajin.`
2. `Ngali balji yinyay nyajin.`
3. `Ngali balur yinyay nyajin.`
4. `Ngali kaljan yinyay nyajin.`
5. `Ngali dajal yinyay nyajin.`
6. `Ngali dakilji yinyay nyajin.`
7. `Ngali jidi yinyay nyajin.`
8. `Ngali jindal yinyay nyajin.`
9. `Ngali jundi yinyay nyajin.`
10. `Ngali karra yinyay nyajin.`
11. `Ngaliny badur yaluy nyajin.`
12. `Ngaliny balji yaluy nyajin.`
13. `Ngaliny balur yaluy nyajin.`
14. `Ngaliny kaljan yaluy nyajin.`
15. `Ngaliny dajal yaluy nyajin.`
16. `Ngaliny dakilji yaluy nyajin.`
17. `Ngaliny jidi yaluy nyajin.`
18. `Ngaliny jindal yaluy nyajin.`
19. `Ngaliny jundi yaluy nyajin.`
20. `Ngaliny karra yaluy nyajin.`
21. `Yubal badur yinyay nyajin.`
22. `Yubal balji yinyay nyajin.`
23. `Yubal balur yinyay nyajin.`
24. `Yubal kaljan yinyay nyajin.`
25. `Yubal dajal yinyay nyajin.`
26. `Yubal dakilji yinyay nyajin.`
27. `Yubal jidi yinyay nyajin.`
28. `Yubal jindal yinyay nyajin.`
29. `Yubal jundi yinyay nyajin.`
30. `Yubal karra yinyay nyajin.`
31. `Yurra badur yaluy nyajin.`
32. `Yurra balji yaluy nyajin.`
33. `Yurra balur yaluy nyajin.`
34. `Yurra kaljan yaluy nyajin.`
35. `Yurra dajal yaluy nyajin.`
36. `Yurra dakilji yaluy nyajin.`
37. `Yurra jidi yaluy nyajin.`
38. `Yurra jindal yaluy nyajin.`
39. `Yurra jundi yaluy nyajin.`
40. `Yurra karra yaluy nyajin.`
41. `Jana badur yinyay nyajin.`
42. `Jana balji yinyay nyajin.`
43. `Jana balur yinyay nyajin.`
44. `Jana kaljan yinyay nyajin.`
45. `Jana dajal yinyay nyajin.`
46. `Jana dakilji yinyay nyajin.`
47. `Jana jidi yinyay nyajin.`
48. `Jana jindal yinyay nyajin.`
49. `Jana jundi yinyay nyajin.`
50. `Jana karra yinyay nyajin.`

## Guardrails

- Keep all target labels as bare visible artefact/tool nouns with the selected literal target senses only.
- Keep `badur` as visible hook/hook-and-line only; do not open fishing, sitting-with-line, catching, bait, or water
  use rows.
- Keep `balji` as visible dilly bag only; do not open making, weaving, grass/black-palm material-source, gendered
  ownership, carrying, or use rows.
- Keep `balur` as visible spear thrower only; do not open throwing, defence, judgement, weapon-use, or euphemism rows.
- Keep `kaljan` as visible outrigger canoe only; do not open travel, rowing, paddling, sea/river route, or ownership
  rows.
- Keep `dajal` as visible fighting spear only; do not open spearing, fighting, killing, hunting, throwing, or
  material-source rows.
- Keep `dakilji` as visible cup only; do not open drinking, filling, washing, loan/post-contact expansion, or use
  rows.
- Keep `jidi` as visible torch only; do not open fire, burning, lighting, making, bark-source, or night-travel rows.
- Keep `jindal` as visible three-pronged spear only; do not open the homophonous `jindal` bite verb or any puncture,
  snake, dog, or wound rows.
- Keep `jundi` as visible pumice stone only; do not open sharpening, rubbing, grinding, abrasive-use, or material
  source rows.
- Keep `karra` as visible rope/cord/string only; do not open tying, binding, carrying, weaving, or use rows.
- Keep all subject pronouns as bare nominatives: no `ngalingan`, `ngalinyan`, `yubalan`, `yurrangan`, `janangan`, or
  other pronoun case forms.
- Keep `yaluy`, `yinyay`, and `nyajin` uninflected; do not import nonpast `nyajil`, purposive `nyaji-nka`, or
  `nyaji-l-nyaji-ny` watching/reduplicated forms into Rule 285.
- Do not import target case, demonstrative case, compounds, productive reduplication, support inflection, source
  prose, object-use predicates, place names, stories, ownership, danger, route/travel, body-state, illness,
  post-contact loan objects, or fauna/flora ecology from any target head.

## Execution checklist

- Bank 50 explicit hand-authored rows as `under_review`.
- Run corpus lint before close.
- Read back all 50 rows from SQLite.
- Close only after morphology, lexicon, syntax, fidelity, and register lenses pass.
- Record lessons and lexeme/source logs.
- Refresh export.
- Update the four living books.
- Render docs.
- Verify local rendered docs and live `https://mobtranslate.com/docs/`.
- Final lint and count audit.

## Closeout

- Banked: `python3 batch_scripts/bank_327.py` inserted 50 explicit hand-authored rows as `under_review`.
- Readback: all 50 stored rows matched the planned visible artefact/tool non-singular past `nyajin` frames, and the
  post-bank duplicate scan found 0 collisions outside Batch 327.
- Lint before close: `lint: 16447 rows scanned, 0 issues flagged`; goal metric remained 16,397 while the new rows
  were under review.
- Close: `python3 batch_scripts/close_327.py` accepted 50 rows, wrote 250 five-lens reviews, 36 lessons, and 18
  lexeme/source-log rows; verified count moved 16,397 -> 16,447 and Kuku words moved 120,947 -> 121,147.
- Export refresh: `python3 export_training.py` wrote 16,447 total rows: train 13,791, dev 1,332, synthtest 1,324.
- Living books: operator guide, sample pages, grammar cheatsheet, and dictionary errata were updated for Batch 327 /
  Rule 285, including the `birungubay` duplicate rejection, sourced `kaljan` replacement, and Rule 286 handoff to
  `bank_328.py` / `close_328.py`.
- Render/local docs: `./render-docs.sh` regenerated the four HTML documents, the four raw Markdown copies, and the
  docs index in `public-docs/`; marker checks found Batch 327 / Rule 285 examples and no stale Batch 326 handoff
  markers in rendered operator/sample files.
- Live docs: `https://mobtranslate.com/docs` returned 301 to `/docs/`; `/docs/`, the four HTML documents, and the
  four raw Markdown documents returned 200 and carried the Batch 327 / Rule 285 markers.
- Final audit: `python3 lint_corpus.py` returned `lint: 16447 rows scanned, 0 issues flagged`; SQLite audit returned
  verified_total 16,447, under_review 0, batch327_accepted 50, batch327_reviews 250, batch327_lessons 36,
  batch327_lexeme_logs 18; `wc -l export/*.jsonl` returned train/dev/synthtest 13,791/1,332/1,324, total 16,447.
- Process events are continuous from 3166 `source-readback` through 3183 `final-audit-green`; this log finalization
  is recorded next.
