diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index f6e7b9e73..aa04b99fa 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -197,7 +197,7 @@ fixtures and authoring examples only. The normative details are in [adr/0007-mastery-driven-tutor-progression.md](adr/0007-mastery-driven-tutor-progression.md), [ssot_function_definition_LearningQuestions.md](../ssot/ssot_function_definition_LearningQuestions.md), and the deterministic quality gates in -[ssot_function_definition_TutorQuality.md](../ssot/ssot_function_definition_TutorQuality.md). +[ssot_function_definition_TutorQualityGates.md](../ssot/ssot_function_definition_TutorQualityGates.md). ### Dynamic Course Content selection diff --git a/docs/README.md b/docs/README.md index a3e6ec360..de395804c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -64,4 +64,6 @@ in der Git-Historie. Dateien im Wurzelverzeichnis heißen `THEMA_INHALT.md` in Großbuchstaben. Das Präfix gruppiert zusammengehörige Dokumente (`INSTALL_`, `CAPACITY_`). ADRs -liegen unter `adr/` als `NNNN-titel.md`. +liegen unter `adr/` als `NNNN-titel.md`. Fachliche SSOTs unter `../ssot/` +heißen `ssot_function_definition_.md` mit `` in PascalCase; +nur die Agenten-Policy heißt `ssot_agent_policy.md`. diff --git a/docs/archive/tutor-quality/UNOSIM_TUTOR_QUALITY_AUTOMATION_PLAN.md b/docs/archive/tutor-quality/UNOSIM_TUTOR_QUALITY_AUTOMATION_PLAN.md index 84204a23b..bac0f4350 100644 --- a/docs/archive/tutor-quality/UNOSIM_TUTOR_QUALITY_AUTOMATION_PLAN.md +++ b/docs/archive/tutor-quality/UNOSIM_TUTOR_QUALITY_AUTOMATION_PLAN.md @@ -300,7 +300,7 @@ Gates grün. 3. `docs/tutor-quality-stage-2a.md`: Bedienteil (lokaler Lauf, Workflow) als kurzer Abschnitt „Running an evaluation“ in die Evaluation-SSOT oder ein Runbook übernehmen; Datei löschen oder als Stub umleiten. -4. `ssot/ssot_function_definition_TutorQuality.md` §7: auf die Evaluation-SSOT +4. `ssot/ssot_function_definition_TutorQualityGates.md` §7: auf die Evaluation-SSOT verweisen (der Hinweis ist bereits gesetzt; Wortlaut prüfen). 5. Historische Pläne: Kopfzeilen prüfen (bereits gesetzt, siehe Abschnitt 4). 6. `docs/archive/tutor-quality/tutor-quality-judge-smoke-2026-10-01.md`: Kopfzeile mit Verweis auf diff --git a/docs/archive/tutor-quality/plan-tutor-quality-stage-2b.md b/docs/archive/tutor-quality/plan-tutor-quality-stage-2b.md index 104d79423..71032de1e 100644 --- a/docs/archive/tutor-quality/plan-tutor-quality-stage-2b.md +++ b/docs/archive/tutor-quality/plan-tutor-quality-stage-2b.md @@ -12,7 +12,7 @@ **Tech Stack:** TypeScript/ESM, Node 24.20.0 from .nvmrc, existing yaml and zod dependencies, existing TutorService/LLMProvider/KiconnectProvider boundary, Vitest, tsx, and an optional workflow_dispatch-only GitHub Actions workflow. -**Spec:** docs/archive/tutor-quality/ssot_function_definition_TutorQualityStage2B.md (normative at the time); the former Stage-2A SSOT (removed in PR D; superseded by ssot/ssot_function_definition_TutorQualityEvaluation.md) and ssot/ssot_function_definition_TutorQuality.md were authoritative within their scopes at the time. +**Spec:** docs/archive/tutor-quality/ssot_function_definition_TutorQualityStage2B.md (normative at the time); the former Stage-2A SSOT (removed in PR D; superseded by ssot/ssot_function_definition_TutorQualityEvaluation.md) and ssot/ssot_function_definition_TutorQualityGates.md were authoritative within their scopes at the time. This plan follows the existing repository convention at docs/archive/tutor-quality/plan-tutor-quality-stage-2a.md. It is non-normative; where it conflicts with the Stage-2B SSOT, the SSOT wins. The implementation branch starts from 68d2703f3513762b521284718f0b5c0b6a4a5de8 and is docs/tutor-quality-stage-2b-implementation-plan. diff --git a/ssot/ssot_function_description_Buttons.md b/ssot/ssot_function_definition_Buttons.md similarity index 100% rename from ssot/ssot_function_description_Buttons.md rename to ssot/ssot_function_definition_Buttons.md diff --git a/ssot/ssot_io-registry.md b/ssot/ssot_function_definition_IoRegistry.md similarity index 99% rename from ssot/ssot_io-registry.md rename to ssot/ssot_function_definition_IoRegistry.md index 03e18a5de..0136f9ca6 100644 --- a/ssot/ssot_io-registry.md +++ b/ssot/ssot_function_definition_IoRegistry.md @@ -1,4 +1,4 @@ -# Textbeschreibung: +# Hybrid-I/O-Registry – Single Source of Truth Status: current Zielrolle: feature-contract diff --git a/ssot/ssot_function_description_serial_output.md b/ssot/ssot_function_definition_SerialOutput.md similarity index 99% rename from ssot/ssot_function_description_serial_output.md rename to ssot/ssot_function_definition_SerialOutput.md index 51dfe122a..15fc6d5bb 100644 --- a/ssot/ssot_function_description_serial_output.md +++ b/ssot/ssot_function_definition_SerialOutput.md @@ -416,7 +416,7 @@ Neue E2E-Tests: ### Phase 7: Dokumentation (Tag 4) | # | Aufgabe | Dateien | | :--- | :--- | :--- | -| 7.1 | Dieses SSOT-Dokument als authoritative Quelle finalisieren | `ssot/ssot_function_description_serial_output.md` | +| 7.1 | Dieses SSOT-Dokument als authoritative Quelle finalisieren | `ssot/ssot_function_definition_SerialOutput.md` | | 7.3 | `ssot_serial_parser_architecture.md` aktualisieren (falls vorhanden) | `ssot/ssot_serial_parser_architecture.md` | ## 13. Risiken & Offene Fragen @@ -551,7 +551,7 @@ Die folgenden Worst-Case-Szenarien benötigen explizite E2E-Tests: ### Phase 8c: Dokumentation (Priorität: Niedrig) | # | Aufgabe | Dateien | |---|---------|---------| -| 8c.1 | Dieses Dokument finalisieren | `ssot/ssot_function_description_serial_output.md` | +| 8c.1 | Dieses Dokument finalisieren | `ssot/ssot_function_definition_SerialOutput.md` | | 8c.2 | README.md Serial-Sektion aktualisieren | `README.md` | --- diff --git a/ssot/ssot_function_definition_TutorQualityEvaluation.md b/ssot/ssot_function_definition_TutorQualityEvaluation.md index eb28ba9e9..5267951c5 100644 --- a/ssot/ssot_function_definition_TutorQualityEvaluation.md +++ b/ssot/ssot_function_definition_TutorQualityEvaluation.md @@ -19,7 +19,7 @@ reviews can cite them. | --- | --- | | Didactic phases, mastery, deepening, extensions | `ssot_function_definition_LearningQuestions.md` | | Course Content schemas and loader | `ssot_function_definition_CourseContent.md` | -| Runtime Tutor invariants (Stage 1 PR gate) | `ssot_function_definition_TutorQuality.md` | +| Runtime Tutor invariants (Stage 1 PR gate) | `ssot_function_definition_TutorQualityGates.md` | | Model registration | `ssot_function_tutor_model_registration.md` (protected; never edited by Tutor-Quality work) | | Corpus, execution runs, deterministic evaluation checks, Judge, report, verdict | this document | @@ -59,7 +59,7 @@ key under §6.4. | `executionStatus` | Whether a sample or run executed; never a quality statement (§11.1). | | `qualityVerdict` | The quality statement per run: `pass`, `warn`, `fail`, or `inconclusive` (§12). | | L1 / L2 / L3 | Test-pyramid levels (§4). | -| *Historical:* Stage 1 | Name of the deterministic runtime gate; still the title of `ssot_function_definition_TutorQuality.md`. | +| *Historical:* Stage 1 | Name of the deterministic runtime gate; still the title of `ssot_function_definition_TutorQualityGates.md`. | | *Historical:* Stage 2A, "Stage A" | Earlier name of the execution run. Its former SSOT and runbook were removed; the runbook moved to Appendix B. Survives only in artifact identifiers (§11.4) and internal type names; not used in the current model. | | *Historical:* Stage 2B, Protocol A | Removed semantic layer and its non-reproducible judge protocol. Not normative. | | *Historical:* Protocol B, G1 | The minimal-Judge protocol and its one-time acceptance measurement (schema ≥ 95 %, evidence ≥ 90 %, repeatability ≥ 80 %), documented in `docs/archive/tutor-quality/tutor-quality-judge-smoke-2026-10-01.md`. G1 is bound to the Judge prompt revision it measured; it is not a runtime gate. | @@ -839,14 +839,14 @@ deterministic check record carries `outcome` (`pass`, `fail`, or uses it, not only `expected-phase-after` (#155). A full audit on 2026-10-03 checked every MUST/SHALL and `R-*` rule of this -document, `ssot_function_definition_TutorQuality.md`, +document, `ssot_function_definition_TutorQualityGates.md`, `ssot_function_definition_CourseContent.md`, and `ssot_function_definition_LearningQuestions.md` against code and tests; the UI rules of LearningQuestions §10 and §16.1 were taken from their existing test suites rather than re-verified one by one. It closed R-ATT-2 and found two further deviations, both closed: the corpus contract test capped the Strategy cases per phase at three (R-AUT-1, #156), and the Stage-1 scenario runner let scenarios fake the planner -(`ssot_function_definition_TutorQuality.md` §5, #157). Remaining known deviations: +(`ssot_function_definition_TutorQualityGates.md` §5, #157). Remaining known deviations: none. Intentional historical identifiers that stay in code and artifacts (§11.4): diff --git a/ssot/ssot_function_definition_TutorQuality.md b/ssot/ssot_function_definition_TutorQualityGates.md similarity index 100% rename from ssot/ssot_function_definition_TutorQuality.md rename to ssot/ssot_function_definition_TutorQualityGates.md diff --git a/tests/shared/io-registry-parser.test.ts b/tests/shared/io-registry-parser.test.ts index fbf695c6c..77408db84 100644 --- a/tests/shared/io-registry-parser.test.ts +++ b/tests/shared/io-registry-parser.test.ts @@ -2,7 +2,7 @@ * io-registry-parser.test.ts * * Unit tests for parseStaticIORegistry() covering all 11 test cases defined - * in ssot_io-registry.md. + * in ssot_function_definition_IoRegistry.md. * * TC 1 – literal pin + literal mode (pinMode) * TC 2 – A0 alias → pinId 14, digitalRead column