Skip to content

Contain CAN receive and diagnostics executor failures - #45

Merged
s2015-turtle merged 1 commit into
mainfrom
codex/contain-executor-failure
Oct 1, 2026
Merged

s2015-turtle merged 1 commit into
mainfrom
codex/contain-executor-failure

Conversation

@s2015-turtle

@s2015-turtle s2015-turtle commented Oct 1, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Contain receive, diagnostics, executor and full transmit-thread exceptions; latch observable transport failure and propagate hardware read/write ERROR.
  • Publish provider-independent best-effort failure diagnostics, distinguish expected ROS context shutdown, and clean partial startup/failed runs before restarting.
  • Join threads before releasing ROS resources, with finite executor idle waits rather than relying on cancel during shutdown.
  • Add nine ROS callback/diagnostics/lifecycle regression cases, including standard/unknown exceptions and fallback diagnostics.

Validation

  • Independent source review completed on identical tree 6aaac07ecf9974e3e35ad34fd335dce50b7945f5; no blocking findings.
  • Local strict C++17 metrics compilation/smoke and git diff --check passed.
  • All five ROS distribution build/tests (Humble, Jazzy, Kilted, Lyrical, Rolling) and vcan integration passed on exact head e80209b (run 36904899409, attempt 2). Cancelled dependency-download jobs passed targeted retries.

Limits

This does not bound a publisher or callback that never returns (#31). No thread detachment or physical motor safety guarantee is introduced. Automatic motor re-enable policy (#40) is unchanged.

Closes #33

@s2015-turtle
s2015-turtle marked this pull request as ready for review October 1, 2026 20:33
@s2015-turtle
s2015-turtle merged commit c1722c3 into main Oct 1, 2026
10 of 12 checks passed
@s2015-turtle
s2015-turtle deleted the codex/contain-executor-failure branch October 1, 2026 20:33
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.

Contain CAN receive and diagnostic executor exceptions

1 participant