Laufzeit-Eingabe und Zonenzustand korrigieren und Change archivieren
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# Verification Report: laufzeit-eingabe-und-systemstatus
|
||||
|
||||
Erneute Prüfung am 06.09.2026. Grundlage ist der aktuelle, noch uncommittete
|
||||
Arbeitsbaum auf `815825dde76eb8f4b48cb27d83f21732afe707c2`. Die Aussage aus
|
||||
`verification.md` wurde gegen Proposal, Design, Tasks, alle vier Delta-Specs,
|
||||
die tatsächlichen Aufrufpfade und zusätzlich erstellte Reviewproben geprüft.
|
||||
|
||||
## Summary
|
||||
|
||||
| Dimension | Ergebnis |
|
||||
|---|---|
|
||||
| Vollständigkeit | 6/6 Tasks abgeschlossen; 6 Requirements mit 21 Szenarien abgeglichen |
|
||||
| Korrektheit | 463 Workspace-Tests und 5 unabhängige Reviewproben bestanden |
|
||||
| Kohärenz | D1–D4 eingehalten; gemeinsame Dateileseposition, Codepoint-/Byte-Trennung, Pfadfehler und aktuelle Zonenauflösung |
|
||||
| CRITICAL | 0 |
|
||||
| WARNING | 0 |
|
||||
| SUGGESTION | 0 |
|
||||
|
||||
**Keine offenen Befunde im geprüften Change.** Die vorhandene
|
||||
[Szenariozuordnung](verification.md#szenarien-und-ausführbare-nachweise)
|
||||
ist durch die erneute Codeprüfung und den aktuellen Testlauf bestätigt.
|
||||
|
||||
## Zusätzliche unabhängige Proben
|
||||
|
||||
[review-probes.rs](review-probes.rs) wurde separat mit `rustc --test` gegen
|
||||
die aktuell gebauten `tb_vm`- und `tb_runtime`-Bibliotheken aus
|
||||
`target/debug/deps` übersetzt und ausgeführt. Alle fünf Tests bestanden.
|
||||
Die Proben wurden nicht aus den vorhandenen Tests kopiert.
|
||||
|
||||
| Probe | Abdeckung / Ergebnis |
|
||||
|---|---|
|
||||
| `write_input_roundtrip_string_matrix` | 100 Kombinationen aus leeren Strings, ASCII, Leerzeichen, Tab, Anführungszeichen, Komma, CRLF, ä/Emoji, NUL und geschütztem Leerzeichen: WRITE und zwei folgende INPUT-#-Aufrufe erhalten Inhalt und nächstes Feld exakt |
|
||||
| `all_nine_file_read_transitions` | Sämtliche 3×3 Übergänge zwischen INPUT #, INPUT$ und LINE INPUT # auf derselben UTF-8-/CRLF-Datei liefern den erwarteten Cursorfortschritt |
|
||||
| `every_mk_cv_pair_preserves_target_values_and_width` | INTEGER-/LONG-/CURRENCY-Grenzen, negative Null und Fließkomma-Grenzwerte bleiben typ- und bitgetreu; jeweils zu kurze und zu lange Argumente erzeugen Fehler 5 |
|
||||
| `timezoneknown_survives_tbc_and_source_failure_recovery` | Neuer Builtin über Kompilat-Speicherung und -Laden ausführbar; derselbe Resolver wechselt bekannt → ausgefallen → bekannte UTC. BASIC liefert INTEGER -1/0/-1; Zonenquelle und Programmversatz bleiben unverändert |
|
||||
| `successive_function_keys_are_split_in_order` | Zwei aufeinanderfolgende erweiterte Tasten und Emoji werden durch INPUT$(3), INPUT$(1), INPUT$(1) ohne Verlust oder Umordnung gelesen |
|
||||
|
||||
Statisch zusätzlich abgeglichen: gemeinsame Leser-/SEEK-/EOF-Aufrufpfade,
|
||||
Binärzugriff nach Einführung von BufReader, beide INPUT$-Dispatchwege,
|
||||
Trap-Behandlung bereits angenommener Reste, alle fünf CV-Zieltypen,
|
||||
OPEN/KILL/NAME/MKDIR-Fehlerzuordnung sowie Frontend/HIR/Builtin-ID/CLI
|
||||
und alle Zeitfunktionen einschließlich der Zuweisungen an DATE$/TIME$.
|
||||
Die neue Builtin-ID wird angehängt; bestehende IDs werden nicht verschoben.
|
||||
|
||||
## Erneut ausgeführte Abnahme
|
||||
|
||||
- `cargo test --workspace --quiet`: **463 bestanden, 0 fehlgeschlagen,
|
||||
1 ignoriert**; der Golden-Generator blieb ignoriert.
|
||||
- Separate Reviewproben: **5 bestanden, 0 fehlgeschlagen**.
|
||||
- `cargo clippy --workspace --all-targets --all-features -- -D warnings`: bestanden.
|
||||
- `cargo fmt --all -- --check`: bestanden.
|
||||
- `git diff --check`: bestanden vor dem Staging. Die abschließende
|
||||
Prüfung des gestagten Changes mit `git diff --cached --check -- .
|
||||
':(exclude)tests/compat/*.out'` besteht ebenfalls. Die neuen `.out`-Dateien
|
||||
enthalten absichtlich signifikante PRINT-Leerzeichen am Zeilenende.
|
||||
- `openspec validate laufzeit-eingabe-und-systemstatus --strict`: bestanden.
|
||||
- `openspec status` und `openspec instructions apply`: Planung vollständig,
|
||||
6/6 Tasks, `all_done`. Die Häkchen wurden gegen Code und Tests geprüft.
|
||||
- Keine bestehenden Korpus-Sollausgaben verändert; die drei neuen
|
||||
Eingabe-/Zonenprogramme bestehen im regulären Korpuslauf jeweils zweimal.
|
||||
|
||||
Während dieser Verifikation wurden nur dieser Bericht und die zusätzlichen
|
||||
Reviewproben angelegt. Produktcode, bestehende Tests und Sollausgaben blieben
|
||||
unverändert. Headless auf macOS geprüft; kein neuer Windows-/Linux-Lauf oder
|
||||
interaktiver Fremdprogrammvergleich. Die Prüfung betrifft diesen Change und
|
||||
ersetzt nicht den noch offenen übergreifenden Spezifikationsabgleich.
|
||||
|
||||
Alle Prüfungen bestanden. Der Change ist zur Synchronisierung und
|
||||
anschließenden Archivierung bereit.
|
||||
|
||||
## Archivabschluss
|
||||
|
||||
Am 06.09.2026 wurden alle sechs Delta-Requirements mit den vier Hauptspecs
|
||||
synchronisiert und vollständig abgeglichen. Alle 15 Hauptspecs bestehen
|
||||
die strenge Validierung. Der Change wurde anschließend einschließlich
|
||||
der fünf Reviewproben archiviert.
|
||||
Reference in New Issue
Block a user