Repository navigation
fix(ixxat): preserve controller start epoch and clock metadata - #2118
Open
timothyanderson096-ocdealcheck wants to merge 1 commit into
Open
timothyanderson096-ocdealcheck wants to merge 1 commit into
timothyanderson096-ocdealcheck wants to merge 1 commit into
Conversation
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. |
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.
Summary of Changes
Correct the controller-start epoch midpoint in both IXXAT backends. Retain START ticks and TIMEOVR metadata during the existing bounded startup drain; process clock metadata in nonblocking FD reads; and keep ERROR/TIMEOVR messages out of the FD START branch.
Related Issues / Pull Requests
Closes #2103. Thanks to @MelansonTech for the hardware report and arithmetic/dispatch diagnosis. Open #1611 is a broader VCI4 replacement that still returns relative timestamps; its discussion and linked MattWoodhead#1 discussion were inspected. #1901 changes bus-state naming, not clock conversion. This patch repairs the current legacy backends.
The VCI C-API manual v1.5, printed pp.97–99, describes START-relative ticks, TIMEOVR wrap counts in dwMsgId and undefined TIMEOVR data bytes. Tests use the repository's actual CANMSG/CANMSG2 ctypes structures with mocked VCI calls.
Type of Change
Checklist
Additional Notes
Validation recorded on 25 October 2026, CPython 3.13.16 / Linux:
On 27 October, public head
70c558ce3faa31bcdb4bf5b54797dfc5fa9881be, treeb051d7b935d33c0b0e4e894ddcdaccbbbc1089c4, was restored exactly from tested cleanb12e285091cc13b6d4b2280527ad38c4d60d7098on unchanged mainb4f82ab. Original/refresh archive hashes, original/final XML, independent review and identical full-suite failure sets were checked. Tests were not rerun during publication.Linux software tests do not establish native Windows VCI/physical-adapter behavior, other runtime/OS matrices or exact epoch accuracy beyond the midpoint estimate. Startup data discard and its bounded drain remain; external controller restarts are not recalibrated. The import scaffold supplies HRESULT only when absent, preserving the native Windows definition.
Prepared with AI assistance and independent inspection.
Timothy Anderson — Spotted Ridge Engineering / OC Labs
Independent software verification · GDN (Global Decision Network)
timothyanderson096@gmail.com · Engineering evidence