[FW-898] pack-bf3 lehnt BF2-Control-Tags jetzt mit Fehler ab - #14
Conversation
Komponenten mit einem Tagtype, der auf keine BF3-Komponente abgebildet wird (SM4200/SM6300 Control-Tags), wurden vom CLI kommentarlos aus dem erzeugten BF3-File entfernt. Dadurch fehlte in ausgelieferten Firmwares die SM4200/SM4500-Peripherie-Firmware, ohne dass der Build dies gemeldet haette. pack-bf3 bricht jetzt mit einer Fehlermeldung ab, die Komponente und Tagtype nennt. Bf3File.bf2_import() ueberspringt Control-Tags weiterhin stillschweigend, da bereits ausgelieferte BF2-Files diese legitim enthalten. FW-898 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0163tfX3k3gajMY9yQVSfqoE
FW-898 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0163tfX3k3gajMY9yQVSfqoE
jkatins
left a comment
There was a problem hiding this comment.
Gar keine Plan-Datei für den Bugfix-Commit?
FW-898 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0163tfX3k3gajMY9yQVSfqoE
|
Stimmt, die hat gefehlt -- nachgetragen als Sie haelt vor allem den Punkt fest, der beim Lesen des Diffs sonst wie eine Als eigener Commit statt per Amend, damit dein Approve nicht verfaellt. Anmerkung: |
Komponenten, deren BF2-Tagtype auf keine BF3-Komponente abgebildet wird
(die Control-Tags 0x34 fuer SM4200 und 0x48 fuer SM6300), hat
pack-bf3bisher kommentarlos aus dem erzeugten BF3-File entfernt. Der Build meldete
Erfolg, obwohl im Ergebnis eine Komponente fehlte -- konkret fehlte in einer
ausgelieferten Firmware die SM4200/SM4500-Peripherie-Firmware, sodass LEGIC-
Leser kein Firmware-Update dieser Controller erhalten haben.
pack-bf3bricht jetzt stattdessen mit einer Fehlermeldung ab, die Komponenteund Tagtype nennt:
Ein Control-Tag darf im pack-bf3-Pfad gar nicht erst uebergeben werden, das ist
also ein Fehler im Manifest und nichts, was uebersprungen werden darf. Es wird
kein Ausgabefile geschrieben, der Exit-Code ist 1.
Die Tabelle BF2_TAGTYPE_MAP bleibt unveraendert:
Bf3File.bf2_import()ueberspringt Control-Tags weiterhin stillschweigend, weil bereits ausgelieferte
BF2-Files diese legitim enthalten. Nur das CLI wird streng.
Tests: der bisherige Test, der das stille Verwerfen festgeschrieben hat, ist auf
das neue Verhalten umgestellt; neu hinzugekommen ist
tests/test_bf2_import.py,das das unveraenderte Verhalten von
bf2_import()absichert. Gesamte Suite gruen(29 Tests).
Ausserdem enthalten: Version 1.04.00 (Minor-Bump, da sich der Eingabe-Kontrakt
des CLI aendert -- Manifeste, die vorher akzeptiert wurden, werden jetzt
abgelehnt). Bros2FW muss die Control-Tag-Komponenten kuenftig gar nicht mehr an
den Packer uebergeben und den Pin auf v1.04.00 anheben.
FW-898