Skip to content

Knotensortierung unter „Meine Lernziele“

Generated artifact. Do not edit manually.

Generated by: scripts/build_compendia.py Regenerate with: python3 scripts/build_compendia.py --compendium dev-handbook --web-and-tex Source of truth: docs/dev/source/

Sprache / Language: Deutsch (DE) · English (EN) | PDF: Deutsches PDF · English PDF

Kompendium: §1 Dokumentationsrichtlinien · §2 Landscape-JSON-Referenz · §3 Minimales Schema & Fallback · §4 Autoreneditoren · §5 Graph-Editor · §6 Flashcard-Editor · §7 Knotensortierung · §8 Liquibase · §9 Auto-Update (SSE)


7. Knotensortierung unter „Meine Lernziele“

Im lernendenseitigen Kompetenzbaum (CompetenceTree.tsx) sortiert sortSiblingGoalsBalanced in goalSorter.ts Geschwisterknoten unterhalb eines Clusters deterministisch so, dass Voraussetzungen vor abhängigen Zielen erscheinen und didaktische Klammern gewahrt bleiben.

7.1. Harte requires-Topologiesortierung und sechsstufiger Tie-Breaker

Für Geschwisterknoten eines Elternclusters (zyklenfrei bezüglich requires) führt sortSiblingGoalsBalanced eine Kahn-Topologiesortierung über direkte requires-Kanten zwischen Geschwistern aus und entscheidet Gleichstände in der Bereit-Menge streng sechsstufig:

| Stufe | Kriterium | Exakte Entscheidungsregel | | –- | –- | –- | | 1. Manuelle Ordnung | Explizite Autorenvorgabe | Numerisches extendedData.{treeOrder,sortOrder,displayOrder,order,position} oder Tag order:<n>. | | 2. Didaktischer Bucket | Pädagogische Klammerung | why (Orientierung/Motivation) \(<\) tutorial / Fachkompetenzen \(<\) flashcards (Lernkarten) \(<\) exercises / Prüfungen. | | 3. Phasenfolge | Curriculare Progression | SekI / 5–10 \(<\) E \(<\) Q1 \(<\) Q2 \(<\) Q3 \(<\) Q4 \(<\) Abitur / GLOBAL. | | 4. Nachfahren-Support | Weiche Teilbaum-requires | softScore(v) aus Nachfahren-Voraussetzungen, geschützt durch minAbsoluteSupport = 2 und minRelativeSupport = 0.25, damit einzelne Randkanten große Themenblöcke nicht unerwartet umsortieren. | | 5. Lokalisierter Titel | Lesbare Rückfallordnung | Sprachsensitives localeCompare (de-DE, numeric: true). | | 6. Kanonische ID | Endgültige Deterministik | Lexikographischer Vergleich von goal.id für 100 % reproduzierbare Reihenfolge. | {cols="20%,24%,56%"}

Während die reine Inhaltsbaum-Inspektion (Sichtenprojektion) die explizite contains- bzw. treeOrder-Reihenfolge abbildet, steuert sortSiblingGoalsBalanced die didaktische Lernansicht überall dort, wo kein manuelles treeOrder gesetzt ist.