Skip to content

ISO-TP: verbleibende ISO-15765-2-Normfragen und Reserved-FS-Integrationstest #353

Open

Description

@dborgards

Umgesetzt am 31.10.2026 — PR #489

Der fehlende Channel-Test für das bereits dokumentierte Istverhalten reservierter FS ist in #489 umgesetzt: nach einem CTS-Block werden FS 3 und 15 injiziert; beide lassen den Send offen, verlängern N_Bs nicht und enden am ursprünglichen virtuellen Termin mit N_Bs-Timeout. Vollständige lokale Suite: 3127 grün; net48-Kompilierung, Format, neun frische Pakete und 50 Engineering-Tests erfolgreich. Beide realen Mutationen (reserved→Wait und reserved→Overflow) kompilierten und ließen beide Fälle fehlschlagen; Quellen anschließend wiederhergestellt.

Status: PR offen; erst nach Merge als auf main erledigt zählen. Dies entscheidet nicht die noch offene ISO-Frage „Drop versus sofortiger Abbruch“. Wenn der Normabgleich eine Änderung ergibt, muss dieser Test gezielt daran angepasst werden. Der Testnachweis muss deshalb nicht auf den Normtext warten; nur die normativ richtige Zielsemantik bleibt offen.

Ursprung: docs/reviews/2026-10-21-deep-review/isotp.md. Die ursprüngliche Sammelliste war nach den folgenden PRs veraltet.

Erledigt

Rest: Normabgleich mit konkretem Ergebnis je Punkt

Voraussetzung für jede Zeile: maßgebliche Ausgabe von ISO 15765-2 festhalten und den zutreffenden Abschnitt prüfen. Der Review vermerkt vorhandenen Text beim Maintainer; #416 hatte ihn während der Bearbeitung nicht verfügbar. Persönlicher Besitz wird hier weder verneint noch bestätigt.

  • N_Ar / unbestätigte Flow Control: festhalten, ob eine fehlgeschlagene FC-Bestätigung den Empfang abbrechen muss. Bei Abweichung Empfangs-Lebensdauer/Fehler ändern; Tests für erfolgreiche, fehlgeschlagene und ausbleibende Bestätigung.
  • N_Cr-Start: Queue-Handoff versus FC-Bestätigung anhand der Norm entscheiden; kontrollierte Tests mit verzögerter Bestätigung pinnen den gewählten Start.
  • Reservierte FlowStatus-Werte: Drop/weiteres N_Bs-Warten versus sofortiger Fehler mit Abschnitt belegen. Danach Channel-Test während einer laufenden Übertragung ergänzen (bloßer Codec-Test reicht nicht); Fehlerart und Sitzungsende/Timeout müssen unterscheidbar geprüft sein.
  • Escape-FF mit FF_DL > int.MaxValue: Drop versus FC(OVFLW) entscheiden; Empfangs-/Wire-Test belegt das Ergebnis ohne große Allokation.
  • STmin-Rundung: erlaubte Richtung/Granularität prüfen und 190 µs, 999 µs sowie eine nicht ganzzahlige ms-Grenze belegen; Codec, Option und Dokumentation müssen dieselbe Regel ausdrücken.
  • TX_DL / BRS: getrennt prüfen, ob konfigurierbare Werte für den beanspruchten Umfang erforderlich sind. Erforderliches implementieren/testen; eine zulässige Einschränkung mit Normbezug ausdrücklich dokumentieren.
  • Abschnittsnummern: XML-Dokumentation und Code-Kommentare auf die festgelegte Normausgabe abgleichen; widersprüchliche Verweise korrigieren.
  • STmin vor dem ersten CF jedes CTS-Blocks: Anwendbarkeit normativ entscheiden und Timing-Test entsprechend beibehalten oder ändern.
  • Nachtrag aus fix(rawcan): cancel in-flight approximated sends on Dispose; document the UDS and ISO-TP decisions #416: die behauptete CAN-FD-Längenrundung (UsePadding) und die Abbildung reservierter STmin-Werte auf 127 ms (DecodeStMin) gegen den Text prüfen; unbestätigte Normbehauptungen bestätigen oder korrigieren.

Abschlussbedingung

Für jede offene Zeile liegt eine nachvollziehbare Entscheidung mit Normausgabe/Abschnitt und Ergebnis vor. Jede daraus erforderliche Codeänderung ist gemergt und durch passende Regressionstests belegt; der Reserved-FS-Channel-Test existiert. README/XML/SRS stimmen damit überein und führen die erledigten Fragen nicht weiter als offen. Kein Schließen allein aufgrund der schon erfolgten Dokumentation des Istverhaltens.


Abgleich: 2026-10-31, gegen gemergte PRs, Issue-Kommentare und main @ 61d037a7. Dies ist eine Bestandsaufnahme; die verlinkten Prüfungen wurden dabei nicht erneut ausgeführt.

Activity

  1. added
    type: bugSomething behaves differently than documented
    area: isotpCanKit.Pro.IsoTp — ISO 15765-2 codec and channel
    on Oct 21, 2026
  2. dborgards commented on Oct 24, 2026

    @dborgards
    OwnerAuthor

    Noted during #416 (not changed there), both cite ISO 15765-2 from memory, unchecked: the IsoTpChannelOptions.UsePadding doc says "ISO 15765-2 requires that rounding"; the ISO-TP README says DecodeStMin maps reserved values to 127 ms "per ISO 15765-2". Add to the open norm questions #416 listed in the README.


    Generated by Claude Code

  3. changed the title [-]ISO-TP: minor findings, carried-over norm questions and doc drift from the 2026-10-21 deep review (I-2..I-5)[/-] [+]ISO-TP: verbleibende ISO-15765-2-Normfragen und Reserved-FS-Integrationstest[/+] on Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: isotpCanKit.Pro.IsoTp — ISO 15765-2 codec and channeltype: bugSomething behaves differently than documentedtype: docsDocumentation only

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions