docs: Spec-Uebersetzer und Stufe-2-Funktionstrennung abgeschlossen

Zwei TODO-Punkte aus doc/todo.md entfernt - beide nicht, weil die Arbeit
getan waere, sondern weil ihr Anlass entfallen ist. Abschnitt 1 der Liste
schrumpft damit von drei auf einen Punkt.

**Stufe-2-Funktionstrennung** (doc/todo/linienzug-ohne-gui.md):
zurueckgestellt. Sie sollte den Journal-Replay-Umweg ueberfluessig machen -
nur ist der keiner mehr: ein Linienzug-Journal traegt mit SEGS die komplette
Segment-Essenz und laeuft ohne Zeichnung, worauf schon die Streichung des
Spec-Uebersetzers beruhte (4a19ac0). Die Modus-2-Regressionstests fahren
genau diesen Pfad. Dem gegenueber stehen die offenen Schritte 5c/6/8/9/10,
die den Code anfassen, in dem die Reihenfolge selbst Geometrie ist (geklammerte
dL-Kette, vfl-acc-*-Reihenfolge, lazy gelesene AS/ES-Winkel) - hoher Einsatz,
kein Funktionsgewinn. Die Datei nennt jetzt drei konkrete Bedingungen fuer
eine Wiederaufnahme.

**Spec-Uebersetzer Modus 2/3** (doc/todo/spec-modus2-3.md): abgeschlossen.
Die Schritt-Tabelle war veraltet - sie fuehrte alle sieben Schritte als
offen, obwohl der Kopf der Datei das Gegenteil sagte; jetzt steht je Schritt
erledigt / gestrichen.

Offen war dort zuletzt NICHT "ein Test fuer Modus 3", sondern dessen
Segment-Klassifizierung: sie vergleicht roh gegen Menue-Ziffern "1".."4" und
schreibt sie genauso ins Journal (Marker linienzug3). Wer die Optionen
umsortiert, ergaenzt oder entfernt, deutet damit jede gespeicherte Kette
still um - real passiert beim Lauf-Anfang (833a4b6). Modus 2 ist davon
befreit (selbstbeschreibende Werte + Alt-Tabelle ueber vfl-wert-norm); Modus
3 nicht, weil ohne aufgezeichnetes Journal der Beweis fehlt, dass
Bestandsketten die Umstellung ueberstehen.

Nutzer-Entscheidung 2026-10-29: fuer Modus 3 vorerst kein Testfall, bei
Problemen im Einsatz wird getestet und korrigiert. Das Risiko bleibt damit
bestehen - und wandert dorthin, wo es gefaehrlich wird: als Warnblock direkt
ueber der Segment-Auswahl in vf_linienzug.lsp, statt in eine TODO-Datei, die
beim Umsortieren einer Option niemand aufschlaegt. Er nennt auch den Ausweg:
Journal mit lib/vf_journal_export.py aus der Zeichnung ziehen, dann ist die
Umstellung derselbe Handgriff wie bei Modus 2.

Beide Fahrplaene bleiben liegen - spec-modus2-3.md ist aus
lib/vf_journal_export.py an drei Stellen referenziert, eine davon landet im
Beschreibungstext frisch exportierter Testdaten.

Am LISP-Code ist ausschliesslich Kommentar geaendert. TEST_UNIT 897/897.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-10-29 14:38:39 +01:00
parent b709f89404
commit 989ee398ce
4 changed files with 95 additions and 34 deletions
+29 -3
View File
@@ -1,7 +1,33 @@
# TODO: VF-Linienzug ohne GUI/Konsole - Stufe 2 (Funktionstrennung)
# VF-Linienzug ohne GUI/Konsole - Stufe 2 (Funktionstrennung)
**Stand:** 2026-10-26 · **Prioritaet:** niedrig - bringt Architektur, keine
neue Funktion.
**Stand:** 2026-10-29 · **ZURUECKGESTELLT** - aus `doc/todo.md` entfernt, die
Datei bleibt als Fahrplan liegen.
## Warum zurueckgestellt
Stufe 2 sollte den **Journal-Replay-Umweg** ueberfluessig machen: Bauteile
direkt mit Daten aufrufen statt Fragen aus einer Queue beantworten zu lassen.
Dieser Umweg ist aber keiner mehr. Ein Linienzug-Journal traegt mit `SEGS` die
komplette Segment-Essenz und laesst sich OHNE Zeichnung abspielen - mit
derselben Begruendung wurde am 2026-10-27 bereits der Spec-Uebersetzer fuer
Modus 2/3 gestrichen (4a19ac0, `doc/todo/spec-modus2-3.md`). Die
Modus-2-Regressionstests (`c:TEST_LINIENZUG_MODUS2`, seit 2026-10-29 fuenf
Faelle) laufen headless ueber genau diesen Replay-Pfad: er ist nicht der
Engpass, sondern die funktionierende Loesung.
Dazu kommt das Risiko. Die offenen Schritte 5c/6/8/9/10 fassen den Code an, in
dem die REIHENFOLGE SELBST GEOMETRIE IST (siehe "Warum es heikel ist" unten) -
und ein Teil dieser Fehler ist in der Zeichnung unsichtbar und faellt erst im
Sivas-Export auf. Hoher Einsatz, kein Funktionsgewinn.
**Wieder aufnehmen, wenn** einer dieser Faelle eintritt:
- einzelne Bauteile sollen ohne Journal aufrufbar sein (z.B. ein Generator,
der Ketten aus Fremddaten baut und die Frage-Reihenfolge nicht kennen will);
- der Replay-Pfad wird zu langsam oder zu fehleranfaellig;
- `vfl-spec-ausfuehren` wird von irgendwo erwartet (heute: nirgends).
**Prioritaet beim Wiederaufnehmen:** niedrig - bringt Architektur, keine neue
Funktion.
Herausgeloester Arbeitsauftrag aus dem Gesamtplan
[plan-vf-interactive.md](plan-vf-interactive.md) (Teil 5 "Stufe 2: echte