Skip to content

Blackbox TickRecord schema v2: log battery samples (v, i) for replay-exact BATTERY-P02 #277

Description

@avrabe

v1.120 wires the battery estimator (relay-batt) into the supervisor, and LoggingBackend forwards read_battery_i to the inner backend — but TickRecord (v1.118 schema) has no battery fields, so a replayed flight runs the estimator on defaults (16 V, no current) rather than the recorded pack state. Bit-exact estimator replay is unaffected (the IEKF does not consume battery), but failsafe-flag reproduction is not replay-exact.

Scope for the schema-v2 slice:

  • Add battery_v (f32) + battery_i (Option) to TickRecord (+ encode/decode + truncation property tests)
  • ReplayBackend serves them back
  • Regenerate tests-data/golden-v1118.bblog (becomes golden-v2) + version note in relay-log
  • Cross-check kani.yml coverage for the new decode arms

Deferred from the v1.120 BATTERY-P02 slice deliberately: it changes the shipped v1.118 log format and the checked-in golden mid-slice.

🤖 Generated with Claude Code

https://claude.ai/code/session_01HvusAXYbHLyv3uTzfBcMbG

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions