Canonical Gymnasium Chemistry Sachsen-Anhalt Cutover Readiness Audit
Date: 2026-05-12
Decision
DE-ST Chemistry is cutover-ready on the canonical Gymnasium Chemistry route.
The operational learner route is the shared Gymnasium (DE) root with the canonical Chemistry child landscape and the matching DE-ST GK/LK composition view. The retained Sachsen-Anhalt source-extraction landscapes remain archive-only evidence surfaces.
Evidence
- Lower-secondary and upper-secondary source extractions are registered:
curricula/DE/Gymnasium/input/ST/lower-secondary/source-extraction/DE_ST_CHEMIE_SEKI_FACHLEHRPLAN_GYMNASIUM_2022.source-extraction.jsoncurricula/DE/Gymnasium/input/ST/upper-secondary/source-extraction/DE_ST_CHEMIE_SEKII_FACHLEHRPLAN_GYMNASIUM_2022.source-extraction.json- Reviewed source-to-canonical mappings are clean and now have runtime mapping files:
curricula/DE/Gymnasium/mapping/DE-ST/lower-secondary/st_chemistry_lower_secondary_to_canonical_chemistry.jsoncurricula/DE/Gymnasium/mapping/DE-ST/upper-secondary/st_chemistry_upper_secondary_to_canonical_chemistry.json- The canonical learner-facing views exist for both course profiles:
de-st-gym-chemistry-gkde-st-gym-chemistry-lk- Source-extraction landscapes are classified by runtime as compatibility-only archive surfaces through the source-landscape registry fence.
Runtime Notes
Sachsen-Anhalt does not currently expose an active committed legacy Chemistry learner route comparable to the Hessen or Bayern legacy trees. The required runtime cutover check is therefore the retained-source fence plus runtime mapping discovery:
- retained source landscapes load from the real source registry
- retained source landscapes resolve to
DE-ST - retained source landscapes are compatibility-only
GoalMappingServicediscovers the runtime mappings for both lower-secondary and upper-secondary source landscape IDs
Verification
Targeted backend coverage:
./gradlew test \
--tests com.skillpilot.backend.landscape.LandscapeServiceTest \
--tests com.skillpilot.backend.landscape.GoalMappingRepositoryFixtureTest
Additional rollout checks:
python3 scripts/render_canonical_chemistry_bundesland_status.py
python3 scripts/validate_schemas.py
(cd app && npm run validate:graph)
(cd app && npm run validate:composition-views)
git diff --check