OpenSpec-Baseline: Phasen 0/1 als Specs nachgeruestet

Change "baseline-phasen-0-1" (Explore/Retrofit des umgesetzten Stands),
per Archiv in die Haupt-Specs uebernommen und validiert:
- sprach-frontend (6 Requirements: Lexik, Literal-Typisierung,
  Anweisungs-Grammatik, Semantik, Non-Feature-Abweisung, Diagnostik)
- laufzeitfehler (2: Katalog 1-480, Unprintable error)
- textbildschirm (5: dynamische Groesse, PRINT/Scroll, Cursor-API,
  Farbpalette/Blink, Unicode-Zellenmodell)
- kompat-testkorpus (2: byte-genaue Sollausgaben, Frontend-Meilenstein)

Workflow ab jetzt je Phase: Explore -> Proposal -> Umsetzung -> Archiv.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-02 09:47:01 +02:00
parent 5152fde8bc
commit da23d52036
11 changed files with 528 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
## Why
Die Phasen 0 (Exploration, Grundsatzentscheidungen, Referenzrekonstruktion)
und 1 (Sprach-Frontend) sind bereits implementiert, aber noch nicht als
OpenSpec-Spezifikationen erfasst. Dieses Baseline-Change rüstet die Specs
für den umgesetzten Stand nach, damit alle folgenden Phasen auf einem
vollständigen Spec-Fundament aufsetzen (Workflow ab jetzt: Explore →
Proposal → Umsetzung je Phase).
## What Changes
- Nachdokumentation des implementierten Verhaltens als Spezifikationen —
keine Code-Änderungen.
- Erfasst werden die vier umgesetzten Fähigkeiten:
- Sprach-Frontend (Lexer, Parser, semantische Analyse) aus Phase 1
- Laufzeitfehler-Katalog aus Phase 0
- Textbildschirm-Emulation (dynamische Größe, Farben) aus Phase 0
- Kompatibilitäts-Testkorpus (Konventionen) aus Phase 0
- Projekt-Grundsatzentscheidungen (TBVM, UTF-8, dynamische Terminalgröße,
Non-Features, Performance-Budgets) bleiben in PLAN.md und
docs/sprachreferenz.md dokumentiert; die Specs referenzieren sie.
## Capabilities
### New Capabilities
- `sprach-frontend`: Kompilierbarkeit von Terminal-Basic-Quelltext —
Lexik (Typ-Suffixe, Literal-Typisierung, Zeilenfortsetzung,
Metabefehle), vollständige Anweisungs-Grammatik, semantische Prüfung
(Typen, implizite Deklaration, DEFtype, OPTION EXPLICIT, UDT-Felder,
Konstanten), Diagnostik mit Vorbild-Meldungstexten und Compile-Zeit-
Abweisung deklarierter Non-Features.
- `laufzeitfehler`: klassischer Fehlerkatalog (Codes 176, ISAM 8089,
Forms 260480) mit originalgetreuen Meldungstexten als
Kompatibilitätsvertrag für `ERR`/`ERROR n`.
- `textbildschirm`: emulierter Unicode-Textbildschirm mit dynamischer
Terminalgröße (Minimum 80×25), klassischer 16-Farben-Palette,
PRINT-/LOCATE-/CLS-/VIEW-PRINT-Semantik und Blink-als-Hell-Simulation.
- `kompat-testkorpus`: Konventionen des Kompatibilitäts-Testkorpus
(byte-genaue Sollausgaben, signifikante Zeilenend-Leerzeichen,
Frontend-Meilenstein „Korpus parst und wird typgeprüft").
### Modified Capabilities
<!-- keine — es existieren noch keine Haupt-Specs -->
## Impact
- Nur `openspec/`-Artefakte (Delta-Specs → Haupt-Specs nach Sync/Archiv).
- Kein Code, keine Doku unter `docs/` betroffen.
- Referenzen: PLAN.md (Phasen 0/1 abgeschlossen), docs/sprachreferenz.md,
crates/tb-frontend, crates/tb-runtime (errors), crates/tb-ui (screen),
tests/compat.