From c2ceab973c71d8855854d47e52aa4b5bf8662fbf Mon Sep 17 00:00:00 2001 From: Yuelin Wang Date: Mon, 26 Oct 2026 14:31:06 +0100 Subject: [PATCH] docs: Linienzug-Modus-2-Referenzfaelle mit Soll-Werten festhalten Die beiden Laeufe vom 2026-10-26 als dokumentierte Referenz: derselbe Pfad, einmal mit Vario-Kurve und einmal mit GF-Bogen an der 90-Grad-Ecke. Beide muessen quer ~0 und dZ 0 erreichen; laengs darf um die ES-Ausladung abweichen. Der Wert liegt im VERGLEICH der beiden Varianten: ein einzelner Lauf haette nicht gezeigt, dass der ES-Fussabdruck vom falschen Segment abgezogen wurde (878 mm Abweichung nur in der GF-Bogen-Variante). Darum sind beide als Paar festgehalten, mit den erwarteten Protokollzeilen - eine FEHLENDE Zuschlagszeile ist das Warnsignal. Noch nicht automatisiert (Pfad muesste per entmake gezeichnet und das Journal replayt werden); die reinen Rechenkerne sind in test_unit.lsp bereits mit genau diesen Messwerten abgedeckt. Co-Authored-By: Claude Opus 5 --- tests/README.md | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/tests/README.md b/tests/README.md index b74f7dc..769ff07 100644 --- a/tests/README.md +++ b/tests/README.md @@ -87,6 +87,60 @@ dem gewuenschten Modus: Lauf ohne manuellen Zusatzschritt, aber ohne gleichzeitige visuelle Kontrolle aller Zeichnungen am Ende. Sinnvoll fuer reine CI-artige Validierung. +## Referenzfaelle Linienzug Modus 2 (manuell, mit Soll-Werten) + +Zwei Laeufe auf **demselben gezeichneten Pfad**, die sich nur in der +Segment-Klassifizierung unterscheiden. Sie decken die beiden Eck-Bauteilarten +ab (waagerecht eingebaute Vario-Kurve und geneigt eingebauter Gefaellebogen) +und haben am 2026-10-26 sieben Budget-Fehler aufgedeckt, die ein einzelner +Lauf nicht gezeigt haette - erst der VERGLEICH zweier Varianten machte +sichtbar, dass eine Korrektur am falschen Segment landete. + +**Gezeichneter Pfad** (5 Objekte, Boegen als R500-Verrundung): + +| Segment | Art | Mass | +|---|---|---| +| 1 | Linie | L = 9700 mm, hz = 0 | +| 2 | Bogen | 90 Grad rechts, R500 | +| 3 | Linie | L = 4296 mm, hz = -90 | +| 4 | Bogen | 30 Grad links, R500 | +| 5 | Linie | L = 1466 mm, hz = -60 | + +**Gemeinsame Eingaben:** AS-Element ja, 90 Grad, links. ES-Element ja, +30 Grad, rechts. Lauf beginnen mit "Umlenkstation mit GF1 + Separator", +GF-Verteilung "alles am Einlauf", keine zusaetzlichen Separatoren. + +| | Variante A | Variante B | +|---|---|---| +| Segment 2 | **Vario-Kurve** (aussen) | **GF-Bogen** | +| Segment 3 | VF (automatisch nach Kurve) | GF | +| Segment 4 | GF-Bogen | GF-Bogen | +| Segment 5 | GF | GF | +| VF-Lauf | Segment 1..3 | Segment 1..1 | + +**Soll-Ergebnis fuer BEIDE Varianten:** + +- `Quer zur Achse` **~0** (gemessen 0.2 mm - das ist die Aufloesung der + Blockmessung, kein Restfehler) +- `dZ` **0** +- `Laengs KS_AUS-Achse` darf abweichen (~104 mm) - das ist die Ausladung des + ES-Elements und ausdruecklich zulaessig (Leitsatz, Abschnitt 0 in + `doc/VarioFoerderer_Linienzug_Prinzipien.md`). + +Im Protokoll muessen die Zuschlags-Zeilen erscheinen: `AS-Fussabdruck`, +`Eck-Korrektur` je Ecke, und bei Variante A zusaetzlich +`Abschluss-Fussabdruck`. **Eine FEHLENDE Zeile ist das Warnsignal** - sie +bedeutet, dass ein Eck-Bauteil nicht messbar war und die Ecke unkorrigiert +blieb (so wurde der 2.4-mm-Rest bei Variante B gefunden). + +> Noch nicht automatisiert. Dafuer muesste der Testfall den Pfad selbst per +> `entmake` zeichnen und das Eingabe-Journal replayen; das Journal einer +> gebauten Kette laesst sich mit `lib/vf_journal_export.py` aus der Zeichnung +> ziehen. Die reinen Rechenkerne dieser Faelle sind dagegen bereits file-frei +> abgedeckt (`tu-tests-vfl-parallel` in `test_unit.lsp`: `vfl-eck-zerlegen`, +> `vfl-es-achs-reserve`, `vfl-projiziere-neigung` - jeweils mit den echten +> Messwerten aus diesen beiden Laeufen). + ## alltests.json — Testregistry Die Datei `tests/alltests.json` ist die zentrale Registry aller Test-Module.