Conversation
|
@copilot This PR is currently draft with zero changed files. Please complete the bounded issue #13 scope in this branch: packaging spec doc, dry-run fixtures, Makefile validation update, and repo.maturity.yaml next actions. Keep it docs/fixtures/validation only and include validation evidence, or report the blocker. |
- Add docs/M2_RECOVERY_INSTALLER_PACKAGING.md with packaging responsibilities, required inputs, Asahi-style boot picker integration, evidence model, adapter flow, and known gaps - Add examples/m2-recovery-installer/normal-boot.example.json (dry-run BootReleaseSet, channels: live, diskWrite: forbidden) - Add examples/m2-recovery-installer/recovery-installer.example.json (dry-run BootReleaseSet, channels: recovery+installer, diskWrite: installer-only) - Update Makefile validate target to syntax-check new fixtures - Update repo.maturity.yaml evidence and nextActions make validate passes. No host mutation implemented. Agent-Logs-Url: https://github.com/SourceOS-Linux/sourceos-boot/sessions/d9c27adc-9492-43b4-8f82-2bde5d99f79f Co-authored-by: mdheller <21163552+mdheller@users.noreply.github.com>
All deliverables are complete in commit Files changed:
No host mutation, boot-entry creation, disk writes, or kexec implemented. |
mdheller
left a comment
There was a problem hiding this comment.
Approved. Scope matches issue #13: M2 Recovery/Installer packaging spec, dry-run fixtures, Makefile validation update, and repo maturity next actions. This is docs/fixtures/validation only; no host-changing behavior, boot-entry mutation, disk write, rollback execution, or kexec behavior is introduced. CI is action_required, but the PR includes validation evidence and the change is non-mutating.
Defines packaging responsibilities and required inputs for the two SourceOS boot entries on Apple Silicon (M2): normal boot and Recovery/Installer. Adds dry-run fixtures only — no host mutation, boot-entry creation, or disk writes.
New doc
docs/M2_RECOVERY_INSTALLER_PACKAGING.mdlivechannel (normal boot,diskWrite: forbidden) vsrecovery+installerchannels (Recovery/Installer,diskWrite: installer-only)BootReleaseSetfield mapping for both entry types:BootReleaseSet,ReleaseSet, NLBoot plan, artifact cache evidence,AppleSiliconAdapterEvidence,BootProofRecordexecute=false)New fixtures
diskWriteexamples/m2-recovery-installer/normal-boot.example.jsonliveforbiddenexamples/m2-recovery-installer/recovery-installer.example.jsonrecovery,installerinstaller-onlyBoth are minimal valid
BootReleaseSetv1 documents validated by the existingvalidate_boot_release_set.py.Makefile / maturity
make validatenow syntax-checks both new fixtures alongside existing examplesrepo.maturity.yaml: evidence items added for new doc and fixtures; next actions updated — generic "Add Apple Silicon M2 PAL design notes" replaced with specificAppleSiliconAdapterEvidencenormalization and packaging adapter wiring itemsKnown gaps (explicit)
AppleSiliconAdapterEvidencenormalization is a design stub; no Secure Enclave interaction implemented