Repository navigation
docs(X8OS): address Copilot review on #145 (h7-program dependents, tuned-wheel pinning) - #147
Merged
Merged
Conversation
…ned-wheel pinning) X8OS-3: on LmP 934, m4-proxy.service and ModemManager declare Requires=stm32h7-program.service (base board-state capture), so masking the unit or letting a drop-in fail would take them down too. The override must replace ExecStart with a step that exits 0, clear the x8h7 module-load ExecStartPre/Post, and handle each dependent on purpose. Acceptance now requires the unit active, systemctl --failed empty, and each dependent running or deliberately disabled. X8OS-2: requirements.lock.txt holds only name==version, so it cannot tell a tuned wheel from a stock one. Pin the tuned container by build recipe, wheel sha256 and image digest instead. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XNYM9uFdaVKbhNAjMkuShT
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The documentation accurately reflects the captured service dependencies and resolves the identified reproducibility gaps.
0 open findings
What changed in this PR
Clarifies X8OS guidance for reproducible tuned containers and safe H747 programming-service overrides.
Changes:
- Pins tuned builds via recipe, wheel SHA-256, and image digest.
- Documents systemd dependency handling and acceptance criteria.
- Synchronizes the TODO summary.
| File | Description |
|---|---|
X8_OS_IMPROVEMENTS.md |
Expands reproducibility and service-override guidance. |
TODO.md |
Mirrors the updated X8OS requirements. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
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.
Requested by Dorkmo · project thread
Before: X8OS-3 told the reader to override
stm32h7-program.servicewithout warning that other units depend on it, and X8OS-2 said to pin a tuned container throughrequirements.lock.txt, which cannot tell a tuned wheel from a stock one. Copilot flagged both on the merged #145.After: X8OS-3 says never to mask the unit or let it fail, because on LmP 934
m4-proxy.serviceand ModemManager both declareRequires=stm32h7-program.service(confirmed inbench-evidence/board_state_2026-10-04/base/12_unit_cat.txtand the captured ModemManager unit). The override must be a drop-in that exits 0 and also clears the x8h7 module-load steps, and each dependent is handled on purpose. Its "done when" now requires the unitactive,systemctl --failedempty, and each dependent running or deliberately disabled. X8OS-2 now pins a tuned container by build recipe, wheel sha256 and image digest. TODO.md X8OS-2 and X8OS-3 carry the same changes.How: docs only, in
X8_OS_IMPROVEMENTS.mdandTODO.md. All three Copilot threads on #145 are addressed.🤖 Generated with Claude Code
https://claude.ai/code/session_01XNYM9uFdaVKbhNAjMkuShT
Generated by Claude Code