# Batch 398 process log - Rule 356 linter-clean fish set-F non-singular past perception after Rule 355

## Scope and source audit

Rule 356 carries the frozen set-F fish labels into a Patz-controlled non-singular participant matrix. Each of
`kalngkan`, `mangkurr-mangkurr`, `dijarr`, `julaji`, `mawul`, `balarri`, `bayil`, `dalmbal`, `barrbal`, and
`jalkay` still has exactly two non-loan `fauna-fish` noun cards and zero exact Patz hits. Patz Table 3.6 controls
`ngali` 1du exclusive, `ngaliny` 1du inclusive, `yubal` 2du, `yurra` 2pl, `nganjin` 1pl exclusive, and `ngana`
1pl inclusive. The dictionary's `ngali` inclusive misgloss and exact-`ngaliny` omission remain recorded defects;
they are not flattened. `Ngana` remains grammatical and deliberately deferred.

## Matrix and baseline

- All 100 selected non-singular participant x target x deictic past-perception cells are absent.
- Frames are `Ngali...yaluy`, `Ngaliny...yinyay`, `Yubal...yaluy`, `Yurra...yinyay`, and
  `Nganjin...yaluy`.
- Baseline is 19,947 verified / 135,147 words / 19,036 accepted + 911 revised, with no open rows; 53 remain.
- Target counts are 15/15/16/16/18/34/31/31/36/36. Supports are `ngali`713, `ngaliny`655, `yubal`665,
  `yurra`650, `nganjin`378, `ngana`1115, `yaluy`4782, `yinyay`4954, and `nyajin`2850.
- The three-here/two-there orientation changes the deictic gap 172->162. Rule 357 must supply the exact complement.
- All Rule 354-355 whole-head, provisional-head, linter, sense, property, culture, source, use, and event boundaries
  remain closed.
- Script hashes: bank `214aff33260ab8f5e8bfead68f7967fc4fcba8fce2a3651b1064106a9a948779`, close
  `4bacdfd7b9dfab56219a26480e1325c263e1d07397721d629956263b78082bd8`.

## Planned rows

1. `Ngali kalngkan yaluy nyajin.`
2. `Ngali mangkurr-mangkurr yaluy nyajin.`
3. `Ngali dijarr yaluy nyajin.`
4. `Ngali julaji yaluy nyajin.`
5. `Ngali mawul yaluy nyajin.`
6. `Ngali balarri yaluy nyajin.`
7. `Ngali bayil yaluy nyajin.`
8. `Ngali dalmbal yaluy nyajin.`
9. `Ngali barrbal yaluy nyajin.`
10. `Ngali jalkay yaluy nyajin.`
11. `Ngaliny kalngkan yinyay nyajin.`
12. `Ngaliny mangkurr-mangkurr yinyay nyajin.`
13. `Ngaliny dijarr yinyay nyajin.`
14. `Ngaliny julaji yinyay nyajin.`
15. `Ngaliny mawul yinyay nyajin.`
16. `Ngaliny balarri yinyay nyajin.`
17. `Ngaliny bayil yinyay nyajin.`
18. `Ngaliny dalmbal yinyay nyajin.`
19. `Ngaliny barrbal yinyay nyajin.`
20. `Ngaliny jalkay yinyay nyajin.`
21. `Yubal kalngkan yaluy nyajin.`
22. `Yubal mangkurr-mangkurr yaluy nyajin.`
23. `Yubal dijarr yaluy nyajin.`
24. `Yubal julaji yaluy nyajin.`
25. `Yubal mawul yaluy nyajin.`
26. `Yubal balarri yaluy nyajin.`
27. `Yubal bayil yaluy nyajin.`
28. `Yubal dalmbal yaluy nyajin.`
29. `Yubal barrbal yaluy nyajin.`
30. `Yubal jalkay yaluy nyajin.`
31. `Yurra kalngkan yinyay nyajin.`
32. `Yurra mangkurr-mangkurr yinyay nyajin.`
33. `Yurra dijarr yinyay nyajin.`
34. `Yurra julaji yinyay nyajin.`
35. `Yurra mawul yinyay nyajin.`
36. `Yurra balarri yinyay nyajin.`
37. `Yurra bayil yinyay nyajin.`
38. `Yurra dalmbal yinyay nyajin.`
39. `Yurra barrbal yinyay nyajin.`
40. `Yurra jalkay yinyay nyajin.`
41. `Nganjin kalngkan yaluy nyajin.`
42. `Nganjin mangkurr-mangkurr yaluy nyajin.`
43. `Nganjin dijarr yaluy nyajin.`
44. `Nganjin julaji yaluy nyajin.`
45. `Nganjin mawul yaluy nyajin.`
46. `Nganjin balarri yaluy nyajin.`
47. `Nganjin bayil yaluy nyajin.`
48. `Nganjin dalmbal yaluy nyajin.`
49. `Nganjin barrbal yaluy nyajin.`
50. `Nganjin jalkay yaluy nyajin.`

## Gates

Fifty literal `row(...)` calls; unchanged fish source/card/Patz audit; explicit Patz pronoun and dictionary-conflict
ruling; 100-cell absence proof; exact tuple readback; whole-corpus lint; duplicate and SQLite-integrity checks;
explicit five-lens review; 35 lessons; 18 lexeme/source logs; non-destructive close; export parity; four-book render
and nine-resource live verification.

## Closeout

- Fish source hashes, two-card/type/domain/non-loan inventories, zero-Patz profile, Patz pronoun conflict ruling,
  100-cell absence proof, AST literal inventory, and all 50 ten-field database tuples passed exactly.
- Whole-corpus lint scanned 19,997 rows with zero issues. Exact Kuku and English-Kuku pair duplicate groups are
  zero; SQLite integrity is `ok`; the foreign-key check is empty.
- Morphology, lexicon, syntax, fidelity, and register each passed 50/50, storing 250 review decisions. Thirty-five
  lessons and 18 lexeme/source logs were entered non-destructively.
- Verified rows moved 19,947->19,997 and Kuku words 135,147->135,347. Targets moved to
  20/20/21/21/23/39/36/36/41/41; supports moved to `ngali`723, `ngaliny`665, `yubal`675, `yurra`660,
  `nganjin`388, `ngana`1115, `yaluy`4812, `yinyay`4974, and `nyajin`2900; the deictic gap is 162.
- Export parity is exact at 19,997=16,775/1,607/1,615. All four source books were refreshed and rendered; raw
  copies match canonical Markdown. Nine cache-busted live resources returned 200 and matched byte-for-byte;
  `/docs` returned 301 to `/docs/`, which returned 200. Structured evidence runs through process event 4668.
- The three-row numerical gap was not treated as permission to truncate the matrix. Rule 357 remains a required
  full 50-row exact complement.

## Handoff

If accepted, continue from **19,997 / 20,000**, with **3** remaining. Do not stop there: Rule 357 must complete the
exact non-singular complement as a full 50-row batch, bringing the corpus to 20,047.
