Skip to content

integrate: agent/nlboot-boot-menu-proof (deconflict with main) - #12

Merged
mdheller merged 6 commits into
mainfrom
agent/nlboot-boot-menu-proof
Jul 4, 2026
Merged

integrate: agent/nlboot-boot-menu-proof (deconflict with main)#12
mdheller merged 6 commits into
mainfrom
agent/nlboot-boot-menu-proof

Conversation

@mdheller

@mdheller mdheller commented Jul 4, 2026

Copy link
Copy Markdown
Member

Merges current origin/main (was behind 101 commits) into agent/nlboot-boot-menu-proof. Integrates the branch's signed boot_menu contract on top of main's current module structure. No regressions to main.

Conflict resolutions

  • src/nlboot/__init__.py (load-bearing) — Union of imports. Main refactored __init__ to also re-export .device and .enrollment symbols (DeviceClaim, EnrollmentRegistry, etc.); the branch expanded the .protocol import to add BootMenu and BootMenuEntry. Kept both: main's .device/.enrollment imports and the branch's expanded .protocol import (main's protocol import + BootMenu + BootMenuEntry). The __all__ list had already auto-merged as the correct union (both new boot-menu names and all device/enrollment names present). Verified both classes exist in the merged protocol.py (BootMenuEntry and BootMenu) and that import nlboot resolves BootMenu, BootMenuEntry, and DeviceClaim. No contradiction — favored main's structure and re-applied the branch's feature intent on top.
  • README.md — Union. Kept the branch's Python-reference-planner intro bullets (including its unique validates optional signed boot_menu data for boot-picker / PXE-style recovery and rollback parity line) followed by main's "Stance" / "What is implemented now" / "What is still intentionally gated" sections. The branch's detailed SignedBootManifest may also include boot_menu: protocol-object documentation auto-merged cleanly into main's "Protocol objects" section and is preserved.

src/nlboot/protocol.py (branch's 158-line BootMenu/BootMenuEntry + boot-menu validation additions) and tests/test_protocol.py (boot-menu tests) auto-merged cleanly — main did not touch those regions.

Validation (offline)

  • PYTHONPATH=src python3 -m pytest -q39 passed (35 from main + 4 boot-menu tests)
  • import nlboot smoke test → all expected symbols resolve
  • python3 tools/validate_lifecycle_contracts.pyOK
  • No conflict markers remain.

To confirm

  • No product decision required. The boot_menu contract is additive and side-effect-free (planning only, execute=false). Confirm the union import ordering in __init__.py is acceptable to your style conventions.

@mdheller
mdheller merged commit 3e3baca into main Jul 4, 2026
4 checks passed
@mdheller
mdheller deleted the agent/nlboot-boot-menu-proof branch July 4, 2026 16:51
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.

1 participant