{ "$schema": "https://breakpilot.app/schemas/policy-set-v1.json", "version": "1.1.0", "description": "Policy Sets fuer alle deutschen Bundeslaender - Abitur 2025 + Zeugnisse", "last_updated": "2025-01-09", "defaults": { "zk_visibility_mode": "full", "eh_visibility_mode": "shared", "allow_teacher_uploaded_eh": true, "allow_land_uploaded_eh": true, "require_rights_confirmation_on_upload": true, "require_dual_control_for_official_eh_update": false, "third_correction_threshold": 4, "final_signoff_role": "fachvorsitz", "quote_verbatim_allowed": false, "export_template_id": "default" }, "zeugnis_defaults": { "require_klassenlehrer_approval": true, "require_schulleitung_signoff": true, "allow_sekretariat_edit_after_approval": false, "konferenz_protokoll_required": true, "bemerkungen_require_review": true, "fehlzeiten_auto_import": true, "kopfnoten_enabled": false, "versetzung_auto_calculate": true, "export_template_id": "zeugnis_default" }, "policies": { "DEFAULT-2025": { "bundesland": "DEFAULT", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Fallback Policy fuer alle nicht spezifizierten Konfigurationen", "inherits": null, "overrides": {} }, "BW-2025-ABITUR": { "bundesland": "baden-wuerttemberg", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Baden-Wuerttemberg Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "baden-wuerttemberg-abitur", "flags": { "pruefungsamt_integration": false, "notes": "Zentrale Pruefungsaufgaben vom Kultusministerium" } } }, "BY-2025-ABITUR": { "bundesland": "bayern", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Bayern Abitur 2025 - Semi-blinde Zweitkorrektur", "inherits": "DEFAULT-2025", "overrides": { "zk_visibility_mode": "semi", "export_template_id": "bayern-abitur", "flags": { "isb_integration": false, "notes": "ZK sieht Annotationen, aber nicht die vorgeschlagene Note des EK" } } }, "BE-2025-ABITUR": { "bundesland": "berlin", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Berlin Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "berlin-abitur", "flags": { "senbjf_integration": false } } }, "BB-2025-ABITUR": { "bundesland": "brandenburg", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Brandenburg Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "brandenburg-abitur" } }, "HB-2025-ABITUR": { "bundesland": "bremen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Bremen Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "bremen-abitur" } }, "HH-2025-ABITUR": { "bundesland": "hamburg", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Hamburg Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "hamburg-abitur", "flags": { "bsb_integration": false } } }, "HE-2025-ABITUR": { "bundesland": "hessen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Hessen Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "hessen-abitur", "flags": { "hkm_integration": false } } }, "MV-2025-ABITUR": { "bundesland": "mecklenburg-vorpommern", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Mecklenburg-Vorpommern Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "mecklenburg-vorpommern-abitur" } }, "NI-2025-ABITUR": { "bundesland": "niedersachsen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Niedersachsen Abitur 2025 - Hauptpilot", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "niedersachsen-abitur", "flags": { "mk_integration": true, "is_pilot_land": true, "notes": "Niedersachsen ist Hauptpilot fuer Breakpilot" } } }, "NW-2025-ABITUR": { "bundesland": "nordrhein-westfalen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Nordrhein-Westfalen Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "nrw-abitur", "flags": { "msb_integration": false, "notes": "Groesstes Bundesland nach Schuelerzahlen" } } }, "RP-2025-ABITUR": { "bundesland": "rheinland-pfalz", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Rheinland-Pfalz Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "rheinland-pfalz-abitur" } }, "SL-2025-ABITUR": { "bundesland": "saarland", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Saarland Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "saarland-abitur" } }, "SN-2025-ABITUR": { "bundesland": "sachsen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Sachsen Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "sachsen-abitur", "flags": { "smk_integration": false } } }, "ST-2025-ABITUR": { "bundesland": "sachsen-anhalt", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Sachsen-Anhalt Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "sachsen-anhalt-abitur" } }, "SH-2025-ABITUR": { "bundesland": "schleswig-holstein", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Schleswig-Holstein Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "schleswig-holstein-abitur" } }, "TH-2025-ABITUR": { "bundesland": "thueringen", "jahr": 2025, "fach": null, "verfahren": "abitur", "description": "Thueringen Abitur 2025", "inherits": "DEFAULT-2025", "overrides": { "export_template_id": "thueringen-abitur" } } }, "role_permission_matrix": { "description": "Standard-Berechtigungsmatrix fuer alle Rollen. Kann durch Policies ueberschrieben werden.", "erstkorrektor": { "exam_package": ["read", "update", "share_key", "lock"], "student_work": ["read", "update"], "eh_document": ["read", "upload", "update"], "rubric": ["read", "update"], "annotation": ["create", "read", "update", "delete"], "evaluation": ["create", "read", "update"], "report": ["create", "read", "update"], "grade_decision": ["create", "read", "update"], "export": ["create", "read", "download"], "audit_log": ["read"] }, "zweitkorrektor": { "exam_package": ["read"], "student_work": ["read", "update"], "eh_document": ["read"], "rubric": ["read"], "annotation": ["create", "read", "update"], "evaluation": ["create", "read", "update"], "report": ["create", "read", "update"], "grade_decision": ["create", "read", "update"], "export": ["read", "download"], "audit_log": ["read"] }, "drittkorrektor": { "exam_package": ["read"], "student_work": ["read", "update"], "eh_document": ["read"], "rubric": ["read"], "annotation": ["create", "read", "update"], "evaluation": ["create", "read", "update"], "report": ["create", "read", "update"], "grade_decision": ["create", "read", "update"], "audit_log": ["read"] }, "fachvorsitz": { "tenant": ["read"], "namespace": ["read", "update"], "exam_package": ["read", "update", "lock", "unlock", "sign_off"], "student_work": ["read", "update"], "eh_document": ["read", "upload", "update"], "rubric": ["read", "update"], "annotation": ["read", "update"], "evaluation": ["read", "update"], "report": ["read", "update"], "grade_decision": ["read", "update", "sign_off"], "export": ["create", "read", "download"], "audit_log": ["read"] }, "pruefungsvorsitz": { "tenant": ["read"], "namespace": ["read", "create"], "exam_package": ["read", "sign_off"], "student_work": ["read"], "eh_document": ["read"], "grade_decision": ["read", "sign_off"], "export": ["create", "read", "download"], "audit_log": ["read"] }, "schul_admin": { "tenant": ["read", "update"], "namespace": ["create", "read", "update", "delete"], "exam_package": ["create", "read", "delete", "assign_role"], "eh_document": ["read", "upload", "delete"], "audit_log": ["read"] }, "land_admin": { "tenant": ["read"], "eh_document": ["read", "upload", "update", "delete", "publish_official"], "audit_log": ["read"] }, "auditor": { "audit_log": ["read"], "exam_package": ["read"] }, "operator": { "tenant": ["read"], "namespace": ["read"], "exam_package": ["read"], "audit_log": ["read"] }, "teacher_assistant": { "student_work": ["read"], "annotation": ["create", "read"], "eh_document": ["read"] }, "exam_author": { "eh_document": ["create", "read", "update", "delete"], "rubric": ["create", "read", "update", "delete"] }, "fachlehrer": { "fachnote": ["create", "read", "update"], "schueler_daten": ["read"], "zeugnis_entwurf": ["read"], "bemerkung": ["create", "read", "update"], "audit_log": ["read"] }, "klassenlehrer": { "zeugnis": ["create", "read", "update"], "zeugnis_entwurf": ["create", "read", "update", "delete"], "zeugnis_vorlage": ["read"], "schueler_daten": ["read", "update"], "fachnote": ["read", "update"], "kopfnote": ["create", "read", "update"], "fehlzeiten": ["read", "update"], "bemerkung": ["create", "read", "update", "delete"], "versetzung": ["read", "update"], "audit_log": ["read"] }, "stufenleitung": { "zeugnis": ["read", "update"], "zeugnis_entwurf": ["read", "update"], "schueler_daten": ["read"], "fachnote": ["read"], "kopfnote": ["read", "update"], "fehlzeiten": ["read"], "bemerkung": ["read", "update"], "versetzung": ["read", "update", "approve"], "konferenz_beschluss": ["read", "create"], "audit_log": ["read"] }, "zeugnisbeauftragter": { "zeugnis": ["read", "update", "approve"], "zeugnis_entwurf": ["read", "update"], "zeugnis_vorlage": ["create", "read", "update", "delete"], "schueler_daten": ["read"], "fachnote": ["read"], "kopfnote": ["read"], "fehlzeiten": ["read", "update"], "bemerkung": ["read"], "versetzung": ["read"], "konferenz_beschluss": ["read"], "audit_log": ["read"] }, "schulleitung": { "zeugnis": ["read", "sign_off"], "zeugnis_entwurf": ["read"], "zeugnis_vorlage": ["read", "approve"], "schueler_daten": ["read"], "fachnote": ["read"], "kopfnote": ["read"], "fehlzeiten": ["read"], "bemerkung": ["read"], "versetzung": ["read", "sign_off"], "konferenz_beschluss": ["read", "sign_off"], "audit_log": ["read"] }, "sekretariat": { "zeugnis": ["read", "export", "print"], "schueler_daten": ["read", "update"], "fehlzeiten": ["create", "read", "update"], "audit_log": ["read"] } }, "visibility_rules": { "blind": { "description": "ZK sieht keine EK-Outputs (Note, Gutachten)", "zk_can_see_ek_annotations": false, "zk_can_see_ek_evaluation": false, "zk_can_see_ek_report": false, "zk_can_see_ek_grade": false }, "semi": { "description": "ZK sieht Annotationen, aber keine Note/Gutachten", "zk_can_see_ek_annotations": true, "zk_can_see_ek_evaluation": false, "zk_can_see_ek_report": false, "zk_can_see_ek_grade": false }, "full": { "description": "ZK sieht alles vom EK", "zk_can_see_ek_annotations": true, "zk_can_see_ek_evaluation": true, "zk_can_see_ek_report": true, "zk_can_see_ek_grade": true } }, "key_share_scopes": { "full": { "description": "Voller Zugriff auf alle verschluesselten Inhalte", "permissions": ["read_original", "read_eh", "read_ek_outputs", "read_zk_outputs", "write_annotations"] }, "original_only": { "description": "Nur Zugriff auf Original (Schuelerarbeit)", "permissions": ["read_original"] }, "eh_only": { "description": "Nur Zugriff auf Erwartungshorizont", "permissions": ["read_eh"] }, "outputs_only": { "description": "Nur Zugriff auf Korrekturergebnisse", "permissions": ["read_ek_outputs", "read_zk_outputs"] }, "blind_zk": { "description": "Zugriff fuer blinde Zweitkorrektur", "permissions": ["read_original", "read_eh", "write_annotations"] } }, "workflows": { "standard_correction": { "description": "Standard-Korrekturablauf", "steps": [ { "name": "upload", "actor": "erstkorrektor", "actions": ["upload_student_work", "upload_eh"] }, { "name": "first_correction", "actor": "erstkorrektor", "actions": ["annotate", "evaluate", "create_report", "set_grade"] }, { "name": "share_to_zk", "actor": "erstkorrektor", "actions": ["share_key", "assign_role"] }, { "name": "second_correction", "actor": "zweitkorrektor", "actions": ["annotate", "evaluate", "create_report", "set_grade"] }, { "name": "grade_agreement", "actors": ["erstkorrektor", "zweitkorrektor"], "actions": ["agree_final_grade"] }, { "name": "third_correction", "condition": "grade_deviation >= third_correction_threshold", "actor": "drittkorrektor", "actions": ["annotate", "evaluate", "create_report", "set_final_grade"] }, { "name": "sign_off", "actor": "fachvorsitz", "actions": ["review", "sign_off"] }, { "name": "final_approval", "actor": "pruefungsvorsitz", "actions": ["final_sign_off", "export"] } ] }, "zeugnis_halbjahr": { "description": "Workflow fuer Halbjahreszeugnis", "verfahren": "halbjahreszeugnis", "steps": [ { "name": "noten_eingabe", "actor": "fachlehrer", "actions": ["create_fachnote", "update_fachnote"], "deadline_days": -14, "description": "Fachlehrer tragen Noten ein" }, { "name": "entwurf_erstellen", "actor": "klassenlehrer", "actions": ["create_zeugnis_entwurf", "add_bemerkung", "add_kopfnote", "update_fehlzeiten"], "deadline_days": -7, "description": "Klassenlehrer erstellt Zeugnisentwurf" }, { "name": "entwurf_pruefen", "actor": "zeugnisbeauftragter", "actions": ["review_zeugnis", "update_zeugnis", "approve_zeugnis"], "deadline_days": -5, "description": "Zeugnisbeauftragter prueft formale Korrektheit" }, { "name": "schulleitung_signoff", "actor": "schulleitung", "actions": ["review_zeugnis", "sign_off_zeugnis"], "deadline_days": -3, "description": "Schulleitung unterschreibt" }, { "name": "druck_ausgabe", "actor": "sekretariat", "actions": ["print_zeugnis", "export_zeugnis"], "deadline_days": 0, "description": "Sekretariat druckt und gibt aus" } ] }, "zeugnis_jahresende": { "description": "Workflow fuer Jahreszeugnis mit Versetzungsentscheidung", "verfahren": "jahreszeugnis", "steps": [ { "name": "noten_eingabe", "actor": "fachlehrer", "actions": ["create_fachnote", "update_fachnote"], "deadline_days": -21, "description": "Fachlehrer tragen Jahresnoten ein" }, { "name": "versetzung_vorbereiten", "actor": "klassenlehrer", "actions": ["calculate_versetzung", "prepare_konferenz"], "deadline_days": -14, "description": "Klassenlehrer bereitet Versetzungsentscheidung vor" }, { "name": "zeugniskonferenz", "actor": "stufenleitung", "actions": ["create_konferenz_beschluss", "approve_versetzung"], "deadline_days": -10, "description": "Zeugniskonferenz tagt und entscheidet" }, { "name": "entwurf_erstellen", "actor": "klassenlehrer", "actions": ["create_zeugnis_entwurf", "add_bemerkung", "add_kopfnote", "update_fehlzeiten", "set_versetzung"], "deadline_days": -7, "description": "Klassenlehrer erstellt finalen Zeugnisentwurf" }, { "name": "entwurf_pruefen", "actor": "zeugnisbeauftragter", "actions": ["review_zeugnis", "update_zeugnis", "approve_zeugnis"], "deadline_days": -5, "description": "Zeugnisbeauftragter prueft formale Korrektheit" }, { "name": "schulleitung_signoff", "actor": "schulleitung", "actions": ["review_zeugnis", "sign_off_versetzung", "sign_off_zeugnis"], "deadline_days": -3, "description": "Schulleitung unterschreibt Zeugnis und Versetzung" }, { "name": "druck_ausgabe", "actor": "sekretariat", "actions": ["print_zeugnis", "export_zeugnis", "archive_zeugnis"], "deadline_days": 0, "description": "Sekretariat druckt, archiviert und gibt aus" } ] }, "zeugnis_abschluss": { "description": "Workflow fuer Abschlusszeugnis (Abitur, MSA, etc.)", "verfahren": "abschlusszeugnis", "steps": [ { "name": "pruefungsnoten_eintragen", "actor": "fachlehrer", "actions": ["create_fachnote", "update_fachnote"], "deadline_days": -14, "description": "Pruefungsnoten werden eingetragen" }, { "name": "gesamtqualifikation", "actor": "stufenleitung", "actions": ["calculate_gesamtnote", "verify_zulassung"], "deadline_days": -10, "description": "Berechnung der Gesamtqualifikation" }, { "name": "pruefungsausschuss", "actor": "pruefungsvorsitz", "actions": ["create_konferenz_beschluss", "approve_abschluss"], "deadline_days": -7, "description": "Pruefungsausschuss bestaetigt Abschluss" }, { "name": "zeugnis_erstellen", "actor": "zeugnisbeauftragter", "actions": ["create_zeugnis", "add_abschluss_bemerkung"], "deadline_days": -5, "description": "Abschlusszeugnis wird erstellt" }, { "name": "schulleitung_signoff", "actor": "schulleitung", "actions": ["review_zeugnis", "sign_off_zeugnis"], "deadline_days": -3, "description": "Schulleitung unterschreibt" }, { "name": "aushändigung", "actor": "sekretariat", "actions": ["print_zeugnis", "create_beglaubigte_kopie", "archive_zeugnis"], "deadline_days": 0, "description": "Feierliche Uebergabe und Archivierung" } ] }, "zeugnis_abgang": { "description": "Workflow fuer Abgangszeugnis bei Schulwechsel", "verfahren": "abgangszeugnis", "steps": [ { "name": "aktuelle_noten", "actor": "fachlehrer", "actions": ["create_fachnote"], "deadline_days": -3, "description": "Aktuelle Noten werden ermittelt" }, { "name": "zeugnis_erstellen", "actor": "klassenlehrer", "actions": ["create_zeugnis_entwurf", "add_bemerkung"], "deadline_days": -2, "description": "Abgangszeugnis wird erstellt" }, { "name": "schnell_pruefung", "actor": "zeugnisbeauftragter", "actions": ["review_zeugnis", "approve_zeugnis"], "deadline_days": -1, "description": "Verkuerzte Pruefung" }, { "name": "signoff_ausgabe", "actor": "schulleitung", "actions": ["sign_off_zeugnis", "export_zeugnis"], "deadline_days": 0, "description": "Unterschrift und sofortige Ausgabe" } ] } }, "verfahren_types": { "description": "Unterstuetzte Verfahrenstypen", "exam": { "abitur": { "label": "Abiturpruefung", "workflow": "standard_correction" }, "vorabitur": { "label": "Vorabiturklausur", "workflow": "standard_correction" }, "klausur": { "label": "Regulaere Klausur", "workflow": "standard_correction" } }, "certificate": { "halbjahreszeugnis": { "label": "Halbjahreszeugnis", "workflow": "zeugnis_halbjahr" }, "jahreszeugnis": { "label": "Jahreszeugnis", "workflow": "zeugnis_jahresende" }, "abschlusszeugnis": { "label": "Abschlusszeugnis (Abitur, MSA)", "workflow": "zeugnis_abschluss" }, "abgangszeugnis": { "label": "Abgangszeugnis", "workflow": "zeugnis_abgang" } } } }