Intent: Témata hodiny + per-student přiřazení
Status: Implemented · Updated: 2026-05-13
Problém
Učitel po hodině potřebuje rychle zaznamenat, co se učili a kterých žáků se to týkalo. Smíšené ročníky (Kentaur = 4. + 5., Phenix = 6. + 7.) ve stejném slotu znamenají, že téma se týká vždy jen části třídy. Bez evidence „kdo dostal kterou látku" rodič a budoucí Sofie chatbot nemají z čeho stavět souhrny. Učitel ale musí mít minimální klikací zátěž — jinak nebude evidovat.
Kdo to chce + jak ho poznáme
- Primární role:
teacher - Sekundární: budoucí konzument — Sofie chatbot (Feed pro rodiče), ředitel (přehled co se ve škole učí)
- Stakeholder: Tomáš (PO)
- Kontext použití: na konci hodiny (1 minuta), nebo večer při doplňování (5 minut)
Definice úspěchu
- Téma je krátký text (max ~500 znaků), volitelně s grade hintem (4./5./6./7.).
- Při zakládání tématu klik na ročník → předvyplní všechny žáky daného ročníku v dané třídě. Manuální toggle pro výjimky.
- M:N vazba téma ↔ žák přes
student_slot_topics. Žák může mít víc témat za hodinu, téma víc žáků. - Po uzavření docházky (
attendance_done_at) se z přiřazení odstraní absenti — fair credit. - Po uzavření docházky nelze editovat přiřazení (UI disabled).
- Soft delete neexistuje — odbrání žáka z tématu mazne řádek.
Out-of-scope
- Mastery levels (úroveň zvládnutí: novice/proficient/expert) — schema bez atributu, UI bez ovládání. Pro MVP stačí „dostal/nedostal téma". Mastery je layer 2 (Sofie evaluace).
- Reuse témat napříč hodinami (každé téma žije pod jedním
slot_topicszáznamem; copy-paste z předchozí hodiny neexistuje). - Štítky / kompetence / Montessori vazba (docs/curriculum/) — schema ready zatím není, propojení s kurikulem je layer 3.
- Učební plány / sylaby (oddělená feature, Fáze 2+).
- Hromadné mazání témat (jen jednotlivá).