Repository navigation
Conversation
…inguish device identity from build match
…P2 readback in any order
…out noisy always-on diagnostics
…tloader target label
… fail-closed PTP runtime UI
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…ithout touching real-time path
…eneric START error
…ithout added polling
…nexistent IDF ioctl
…ers only on START timeout
…ross STOP rollback
…l-closed STOP rollback
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Physical feedback / reproduction
User installed PR #262 through Studio. Firmware pane showed semantic version v0.1.1 and Device ready, hiding 16-digit bundled/observed build identifiers. Time Sync then displayed START FAILED, without the reason in GUI. Old capture report c959... predates new verified install and is not a reliable check of the current board identity. Screenshots alone do not prove PHY/MAC cause.
Root findings
FirmwareManager and DeviceController already have exact expected/observed build IDs; FirmwarePanel displayed neither. Completion step was based on compatible protocol, not exact matching firmware.
Native PTP startup has independently arriving positive role PTP2 and runtime STATUS readbacks. Immediate rejection upon an earlier STOPPED or stale role status is a false negative. Correct behavior must wait for BOTH positive signals within the existing absolute timeout; never fake a lock or skip STOP rollback.
All distinct START errors were collapsed into a generic badge. The ESP32-P4 SOURCE already tracks actual Announce, Sync, Follow_Up, and TX failures but failed to report them at readiness timeout.
Implementation
UI always displays bundled and observed build ID and exact MATCH/MISMATCH, keeps semantic product version, and fixes misleading bootloader target/reinstall labels.
DeviceController retains specific START failure reason plus transaction stage across STOP rollback; native PTP status accepts positive PTP2 and STATUS evidence in either order while remaining bounded/fail-closed.
SOURCE firmware logs concrete 4 counters (and readiness flag) ONLY at failed startup. On failed START, Ethernet diagnostics use the SAME ETH_EVENT FreeRTOS event bit already used by the 4kHz publisher to distinguish link DOWN vs link UP/role runtime invalid, with no polling task, no PHY ioctl and no hot-path changes.
Time Sync shows concise fault text ONLY when needed; Copy diagnostics includes exact stage and detailed logs. No standalone scripts or external bench kit.
Regression structural gates cover exact build UI, bounded runtime proof and single owner Ethernet link diagnostics. PTP SOURCE firmware, Qt, Native Preview, Windows Lifecycle CI must PASS on exact HEAD before artifact.
Not merged to main. Physical PTP TX/relay acceptance is still required; no software-only LOCK claims.