You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EPIC-25 gains §4a as the canonical spec: the three slots a complete card
fills, where each gloss actually lives, and why every reader has to go through
stored_russian and usable_example rather than reading the fields directly.
Both defects behind those helpers - a predicate disagreeing about where a
translation was written, and a generation prompt stored as an example - were
invisible until they reached a learner, so the reasoning is recorded next to
the rule.
AGENTS.md carries the invariant, architecture.md records that enrichment runs
off the delivery path so a slow model cannot delay a slot, and the user guide
says plainly that curated content is never overwritten.
The consistency suite now asserts the spec exists and that the scheduler job
count in the diagram matches build_scheduler - it claimed three long after
there were five. Also refreshed the architecture header: ADRs 0002-0012, not
0002-0008.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: tests/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -58,7 +58,7 @@ and stubs the Telegram client and AI providers — no real network calls.
58
58
|`test_epic25_wordbank.py`| Word-bank validation, deterministic starter selection, and idempotent seeding. |
59
59
|`test_epic25_onboarding.py`| The `/setup` wizard state machine end to end. |
60
60
|`test_epic25_qwen_provider.py`| Provider selection, model routing, gateway attribution, and DeepSeek back-compat. |
61
-
|`test_epic25_word_cards.py`|Card enrichment: what counts as missing, curated content never overwritten, wrong-language glosses refused, and unwrapping a schema-shaped model answer. |
61
+
|`test_epic25_word_cards.py`|The EPIC-25 §4a card rules: what counts as missing, curated content never overwritten, wrong-language glosses refused, a leaked prompt rejected as an example, and unwrapping a schema-shaped model answer. |
62
62
|`test_docs_consistency.py`| Documentation claims checked against the code: keyboard buttons, both command catalogs, quiz slots and sizes, slot defaults, practice groups, and the SAVEPOINT rule. |
0 commit comments