Marc Billow
4f3bdde6e5
Address review findings on the learned-modes store
...
Flatten the store to {href: [codes]}. One href carries one LEARNABLE
rule, so keying the codes by the rule's supported field too let the
write side (rule.supported_field) and both read sides (the module-level
SUPPORTED_FIELD) disagree the moment a rule used a different field --
codes learned and persisted, then never offered.
The options flow's reset step read the persisted value raw in the
entry-not-loaded branch, so malformed data aborted the one screen that
can clear it; route it through LearnedModes like every other reader.
For the same reason forget_learned_modes() now persists whenever the
entry carries a record, not only when the in-memory store had one: a
record _coerce rejected at startup exists only on the entry.
2026-08-08 19:42:20 +00:00
..
2026-08-07 16:38:09 +00:00
2026-08-08 19:42:20 +00:00
2026-06-30 16:32:37 -05:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00
2026-08-04 15:25:12 +09:00
2026-08-02 23:56:38 +00:00
2026-08-04 14:44:54 +09:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:14:58 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-07 15:52:46 +00:00
2026-08-08 19:42:20 +00:00
2026-08-07 16:38:09 +00:00
2026-08-07 16:38:09 +00:00
2026-08-03 19:07:03 +00:00
2026-08-08 19:42:20 +00:00
2026-08-07 16:38:09 +00:00
2026-08-04 14:47:42 +09:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-03 00:14:58 +00:00
2026-08-08 19:42:20 +00:00
2026-08-03 19:22:06 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 18:59:22 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 19:32:44 +00:00
2026-08-03 19:32:44 +00:00
2026-08-03 19:38:57 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-04 14:47:42 +09:00
2026-08-03 00:03:08 +00:00
2026-08-03 00:11:05 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 19:24:59 +00:00
2026-08-02 23:56:38 +00:00
2026-08-07 15:52:46 +00:00
2026-08-07 14:50:24 +00:00
2026-08-03 00:11:05 +00:00
2026-08-04 14:47:42 +09:00
2026-08-03 00:11:05 +00:00
2026-08-03 00:14:58 +00:00
2026-08-08 19:42:20 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:11:05 +00:00
2026-08-03 00:03:08 +00:00
2026-08-07 15:52:46 +00:00
2026-08-03 00:11:05 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-07 15:52:46 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:11:05 +00:00
2026-08-03 00:11:05 +00:00
2026-08-07 23:46:28 +00:00
2026-08-03 00:11:05 +00:00
2026-08-03 00:11:05 +00:00
2026-08-02 23:56:38 +00:00
2026-08-03 00:03:08 +00:00
2026-08-03 00:11:05 +00:00
2026-08-03 00:03:08 +00:00
2026-08-02 23:56:38 +00:00