at.kotoba.state
Single overwritten record: per-glyph SRS state + the directed confusion map. Read once at startup; overwritten on flush. rkey is literally `self`.
Details · record, key literal:self
| Kind | record |
|---|---|
| Record key | literal:self |
| Authority | kotoba.at |
| Indexed |
Showing version bafyreieds2qr7hj7c773e2trmm3etptdicr4gf5adaivmeg674xb3s6jhe. Show the latest
Record
record · key literal:selfProperties
Directed, single-kana only: shown glyph -> { answered-as romaji: count }. Counts are decayed (x0.9/session) so the app stores them as fixed-point ×10000 INTEGERS (no float type). `unknown` map; the app owns the value scaling at the record edge.
Map keyed by glyph -> { box:int, kanji:{box:int,seen:int}, lastSeen:str, modes:{ tap:{seen,missed,ewmaParseMs|null}, type:{seen,missed,ewmaParseMs|null}, meaning:{seen,missed,ewmaParseMs|null} } }. Per-mode success + latency; `box` is kana-reading recall and `kanji` is the separate ruby-bearing written-form recognition ladder (#171). `meaning` (word -> gloss) only ever accrues for glossed word glyphs. All-integer. A missing mode row reads as empty; a missing `kanji` lane reads cold; legacy flat records ({box,ewmaParseMs,seen,missed}) are migrated to tap on read. `unknown` because lexicons have no dynamic-key map type (see README).