docs(changelog): record the BlastMate serial fix under v0.29.0
The release is bumped but not tagged, and the fix is now in dev — which is what gets built — so the notes would otherwise understate the build. No TOOL_VERSION change: the fix alters which serial an import is filed under, not any decoded value, so no backfill is owed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HgTe8CamXAHcAmaQ6QNcog
This commit is contained in:
@@ -25,6 +25,32 @@ on startup; the offset detector still needs the shape backfill on the prod store
|
|||||||
rebuild); exposed via `/db/events`. Terra-View surfaces it as a manual
|
rebuild); exposed via `/db/events`. Terra-View surfaces it as a manual
|
||||||
"Flag as offset" action + an `FT · offset` badge.
|
"Flag as offset" action + an `FT · offset` badge.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- **BlastMate serials — the family prefix is read from the file, not guessed.**
|
||||||
|
The Blastware filename encodes only the serial *number* (`L895…` → 10895);
|
||||||
|
the two-letter prefix is not in it. `waveform_store` synthesised `"BE"`, so
|
||||||
|
an imported **BlastMate** (serials `BA…`) was filed under a MiniMate Plus
|
||||||
|
serial that does not exist — silently, and Terra-View read it straight
|
||||||
|
through. `save_imported_bw` now resolves serial as hint → file body →
|
||||||
|
filename guess, via a new `_serial_from_bw_bytes` that accepts a candidate
|
||||||
|
only when its numeric part matches the filename. `client._decode_0a_partial_header`
|
||||||
|
likewise matched a literal `b"BE"` in monitor-log partial records; on a
|
||||||
|
BlastMate that returned −1 and skipped the whole block, losing the **geo
|
||||||
|
threshold** along with the serial. It now matches any two-letter prefix and
|
||||||
|
requires the NUL terminator — stricter than the search it replaces.
|
||||||
|
|
||||||
|
BlastMate is the MiniMate Plus's larger Series III sibling and its files are
|
||||||
|
byte-compatible: all 1,493 in the DL2 archive decode through the existing
|
||||||
|
codec at 100%, same four channels. **The serial string was the only thing
|
||||||
|
blocking BlastMate support in SFM.** Four archive units were affected —
|
||||||
|
BA9229, BA10060, BA10895, BA15957.
|
||||||
|
|
||||||
|
**No backfill and no `TOOL_VERSION` bump**: this changes which serial an
|
||||||
|
*import* is filed under, not any decoded value, so existing sidecars and
|
||||||
|
`.h5` files are untouched. **No migration either** — prod holds no BlastMate
|
||||||
|
events (the archive's BA units last recorded 2018-10 through 2023-11; the
|
||||||
|
prod backfill reaches back only to ~May 2025).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## v0.28.0 — 2026-09-02
|
## v0.28.0 — 2026-09-02
|
||||||
|
|||||||
Reference in New Issue
Block a user