General Goal System and Incremental Migration
Generated artifact. Do not edit manually.
Generated by:
scripts/build_compendia.pyRegenerate with:python3 scripts/build_compendia.py --compendium skill-graph-architecture --web-and-texSource of truth:docs/concept/skill-graph/architecture-source/
Language / Sprache: English (EN) · Deutsch (DE) | PDF: English PDF · Deutsches PDF
Compendium: §1 General Goal System · §2 Node Types · §3 View Projection · §4 Source & Resource Links · §5 Content Integration · §6 Source Rationales · §7 Goal Visualizations · §8 Learning-Goal Book · §9 Gymnasium Rollout · §10 MEM/FWU Plan · §11 Dual Package Releases
1. General Goal System and Incremental Migration
SkillPilot's long-term goal model follows two governing principles: "As much semantics as necessary, as little ontology as possible" and "Goals are stable. Structure is contextual." The formal mathematical graph core is specified in Graph Definition; projection rules live in 3, and runtime fallback mechanics live in Minimal Schema & Runtime Fallback.
1.1. Four Semantic Layers Plus One Composition-View Layer
Rather than mixing subject competencies, school-year containers, and process taxonomies into one undifferentiated hierarchy, the target architecture separates four semantic layers plus one learner-facing projection layer:
| Layer | JSON / Artifact Carrier | Role and Invariants | | –- | –- | –- | | Goal layer | goals[], contains, requires | Durable assessable atomic goals and subject-matter clusters; owns mastery, frontier eligibility, and canonical IDs. | | Program layer | programUnits[] (id, kind, label, order, parentUnitId) | Contextual structural units such as year, semester, module, phase, track, or exam; never mastered directly. | | Placement layer | goalPlacements[] (goalId, unitId, relation, context) | Attaches unchanged canonical goals (primary, secondary, assessed) to program units under explicit scope contexts. | | Competency-axis layer | competencyCatalog[] (id, label, dimension), competencyRefs[] | Orthogonal capability taxonomies (for example K1–K6 process competencies); never main content parents unless assessable. | | Composition-view layer | *.view.json (structure, canonicalSubtree, goalEntry) | Scope-specific learner-facing upper trees referencing reviewed canonical subtrees without duplicating goal payloads. | {cols="22%,32%,46%"}
Interpretation invariants:
- Year, semester, module, and phase containers are not the durable semantic backbone of the skill graph;
phaseis retained as compatibility/badge metadata rather than canonical parentage. - Broad capability families (
K1–K6) are taxonomy axes, not program units; only concrete, assessable process skills become actualLearningGoalnodes. - Initial learner narrowing (jurisdiction, school form, stage, duration model, course profile) acts as entry scope over program units, placements, composition views, and compiled
applicability(Levels of Personalization), never as duplicated canonical goals.
1.2. Recursive Learning Units and Incremental Migration
Recursive educational units (Graph Definition §11, Learning Units; §12, Optional Planning) compose over the same stable canonical goals:
- Within one resolved course, each planned atomic acquisition has one directly owning unit; ancestor units aggregate child targets without re-owning them.
- Competence mastered or recognized in a child unit is globally effective immediately, even while a broader parent integration exam remains open; local recognition applies only to directly owned ordinary targets inside units that satisfy the validity rules R1–R5 of 11 November 2026 (Graph Definition §13.3).
- Passing a parent unit's integration exam never marks protected child exams or memorization decks as passed; explicit whole-unit progression (Unit Progression) is validated separately from atomic
requiresacyclicity.
[!NOTE] Implementation boundary: This chapter defines the target semantic split and incremental 6-phase migration path (additive optional schema fields \(\to\) projection-first UI with
phasefallback \(\to\) pilot slice \(\to\) subtree adoption \(\to\) composition-view cutover \(\to\) legacy retirement) without forcing a big-bang rewrite or claiming an already implementedLearningUnitruntime compiler.