Skip to content

docs(X8OS): address Copilot review on #145 (h7-program dependents, tuned-wheel pinning) - #147

Merged
dorkmo merged 1 commit into
mainfrom
claude/project-thread-yvt2uy
Oct 13, 2026
Merged

dorkmo merged 1 commit into
mainfrom
claude/project-thread-yvt2uy

Conversation

@dorkmo

@dorkmo dorkmo commented Oct 13, 2026

Copy link
Copy Markdown
Contributor

Requested by Dorkmo · project thread

Before: X8OS-3 told the reader to override stm32h7-program.service without warning that other units depend on it, and X8OS-2 said to pin a tuned container through requirements.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.service and ModemManager both declare Requires=stm32h7-program.service (confirmed in bench-evidence/board_state_2026-10-04/base/12_unit_cat.txt and 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 unit active, systemctl --failed empty, 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.md and TODO.md. All three Copilot threads on #145 are addressed.

🤖 Generated with Claude Code

https://claude.ai/code/session_01XNYM9uFdaVKbhNAjMkuShT


Generated by Claude Code

…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
Copilot AI balanced review requested due to automatic review settings October 13, 2026 16:01
@dorkmo dorkmo self-assigned this Oct 13, 2026
@dorkmo
dorkmo merged commit 9f96753 into main Oct 13, 2026
1 check passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 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.

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.

3 participants