Skip to content

P0 Flight Recorder Hardening: coherent event snapshots, exact MAC causes, negligible idle overhead - #262

Closed
masarray wants to merge 6 commits into
fix/p0-sv-sync-onboard-flight-recorder-20261020from
fix/p0-flight-recorder-race-timestamp-20261020
Closed

masarray wants to merge 6 commits into
fix/p0-sv-sync-onboard-flight-recorder-20261020from
fix/p0-flight-recorder-race-timestamp-20261020

Conversation

@masarray

@masarray masarray commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Follow-up exact-source audit of #261 requested before physical use. This tightens a few diagnostic accuracy and performance edges without changing PTP/SV authority/LOCK thresholds, ISR, 4kHz sample generation or packet format.

  • In-memory ring slot invalidation before overwriting time/event context; read-side double checks publication stamp, excludes partially overwritten slots.
  • Every lock edge now retains event-local phase error and MAC measured pairs, rather than only the latest unrelated 1Hz snapshot. Missing timestamps for control-plane STOP, GM role and mode events are filled using esp_timer_get_time() ONLY after a real edge and ONLY on ESP target; portable tests use supplied clocks.
  • Diagnose MAC TX failure classes separately: missing HW TX stamp, unqualified sample epoch, publisher discontinuity, PTP clock step/source change, baseline reacquisition, and canonical transmit failure; no longer obscure them all as generic MAC error.
  • Telemetry checks a single 32-bit counter once/second; only allocates a bounded stack snapshot and emits one warning after an actual edge. No logging on per-frame publisher / ISR, no new task/heap/file I/O, no EEPROM wear. 16 fixed event slots.
  • Extended GCC/Clang/MSVC production firmware resolver regressions for event-local timestamp/phase/MAC, history wrapping, and distinct causes. New code must pass exact SHA firmware ESP32-P4 and Native Studio Preview packaging before distribution.

Important: this is observability hardening, not demonstrated interoperation or timing overhead benchmark. Need hardware latency/jitter & new Studio capture for release.


2026-10-23 PR cleanup — historical stack checkpoint, superseded by #286. GitHub compare proves HEAD 4ab78f90b8fa38e6ea51e431b00a825fd1a263e2 is an ancestor of draft #286 at 3c8b76de2bb5cc3d097c8975d3748e96fc0d35ec (0 commits unique to this PR head, behind_by=0). Closing its PR only; branch and code/history are preserved, no merge to main. Independent/divergent feature branches stay open. Hardware relay acceptance remains pending.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-10-20T08:18:32.169577Z 8fd836a PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant