Skip to content

Commit b95b5e9

Browse files
committed
Finish UTM and Parallels testing and prep for coding agent
1 parent 76d030c commit b95b5e9

11 files changed

Lines changed: 531 additions & 44 deletions

SECURITY.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66

77
If you discover a security vulnerability in this project, please report it privately using one of the following methods:
88

9+
This repository ships no real tenant identifiers, no recovery keys, no tokens, and no production credentials. If you discover content that appears to be a real secret, recovery key, tenant identifier, or personal data, please report it privately through the repository's security advisory process rather than opening a public issue.
10+
911
### Option 1: GitHub Security Advisories (Recommended)
1012

1113
> **Note:** Private vulnerability reporting via GitHub Security Advisories is **only available for public repositories**. If this repository is private, please use the email option below, or wait until the repository is made public to use this feature.

TODO-Phase-00-Branch-Protection.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,20 @@
66
- **Status:** Active
77
- **Owner:** Repository owner
88
- **Last Updated:** 2026-05-05
9-
- **Scope:** Manual GitHub-side branch-protection setup deferred from Phase 0 bootstrap.
9+
- **Scope:** Manual GitHub-side branch-protection setup deferred until the repository implementation is complete and the final required checks are known.
10+
11+
## Deferred Decision
12+
13+
The owner approved the balanced final-hardening option on 2026-05-05: configure `main` with a GitHub ruleset or branch protection after the repository is fully implemented and the final CI/check names are known.
14+
15+
Target policy:
16+
17+
- Require pull requests before merging to `main`.
18+
- Require the final agreed CI/status checks.
19+
- Prohibit force pushes and branch deletion.
20+
- Dismiss stale approvals when new commits are pushed.
21+
- Allow administrator bypass only for emergency repository maintenance.
1022

1123
## Checklist
1224

13-
- [ ] Owner: Repository owner; Status: Open; Phase gate affected: Phase 0 closeout; Why it matters: branch protection cannot be configured from the local workspace; Action: configure protection or a ruleset for `main` after this bootstrap PR is ready; Acceptance condition: `main` requires the agreed CI checks and review policy before direct changes are allowed; Source: `docs/phase-0-bootstrap-codex-instructions.md`.
25+
- [ ] Owner: Repository owner; Status: Deferred until final repository hardening; Phase gate affected: final implementation closeout; Why it matters: branch protection cannot be configured from the local workspace, and the final required checks should not be locked until the coding agent has finished building the repository according to the specification; Action: configure the approved balanced ruleset for `main` after the implementation is complete and the final CI/check names are known; Acceptance condition: `main` requires pull requests, agreed CI checks, stale-review dismissal, and force-push/delete protection before direct changes are allowed after final build approval; Source: `docs/phase-0-bootstrap-codex-instructions.md` and owner decision on 2026-05-05.

TODO-Phase-04-Media-Acquisition.md

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
## Metadata
55

6-
- **Status:** Active
6+
- **Status:** Verified for implementation handoff
77
- **Owner:** Repository owner
88
- **Last Updated:** 2026-05-05
99
- **Scope:** Deferred verification for media discovery and download tooling before implementing Phase 4.
@@ -14,22 +14,33 @@ Owner-supplied sanitized preflight evidence from a macOS host confirms:
1414

1515
- Host baseline: Apple Silicon (`arm64`) running macOS 26.4.1 build 25E253.
1616
- `mist` is installed at `/opt/homebrew/bin/mist`.
17+
- A later sanitized evidence bundle confirmed `mist --version` returns `2.2 (latest: 2.2)`.
1718
- `mist --help`, `mist help list`, and `mist help download` work.
1819
- `mist version` is not valid for the installed command surface; use `mist --version` for version capture.
1920
- `mist list firmware --export <path>` produced JSON with 134 firmware rows.
2021
- For macOS Tahoe 26.4.1 build 25E253, `mist` reported compatible firmware rows, including a signed row.
2122
- `mist list installer --compatible --export <path>` produced 11 compatible installer rows on this host: Tahoe 26.1 through 26.4.1 and Sequoia 15.7.2 through 15.7.5. It did not return Sonoma installer rows on this macOS 26.4.1 host.
23+
- `mist help download firmware` confirms `mist download firmware [<options>] <search-string>` and supports `--output-directory`, `--temporary-directory`, `--firmware-name`, `--export`, `--metadata-cache`, `--compatible`, `--force`, `--no-ansi`, `--retries`, and `--retry-delay`.
24+
- The 2026-05-05 sanitized evidence bundle did not include a downloaded IPSW path because `IPSW_PATH` was left at the placeholder value.
25+
- Later sanitized evidence from 2026-05-05 confirmed `mist download firmware "26.4.1" --compatible --output-directory "$HOME/Demo/Installers" --firmware-name "UniversalMac_26.4.1_25E253_Restore.ipsw" --export <path> --no-ansi` completed successfully.
26+
- The downloaded firmware path was `~/Demo/Installers/UniversalMac_26.4.1_25E253_Restore.ipsw`, so the artifact landed under the requested cache path rather than the default `/Users/Shared/Mist` path.
27+
- The downloaded firmware size was about 18 GB; the Mist export metadata reported `19734779897` bytes.
28+
- The downloaded firmware SHA-256 was `8aa7f7aea6b20d1839d85a0017c9a1472f26c63ad496919f85db988eb01a5c32`.
29+
- Owner decision on 2026-05-05: demo and rehearsal paths must reuse the already-downloaded IPSW at `~/Demo/Installers/UniversalMac_26.4.1_25E253_Restore.ipsw`; do not start another `mist download` unless the owner explicitly approves a new download in the current task.
30+
- Owner clarification on 2026-05-05: this no-new-download rule applies to the post-construction MMS conference demo scripts in the future repository, not only to temporary validation commands. `scripts/Invoke-MMSDemo.ps1`, `examples/MMSMOA-2026/Demo1-Media.ps1`, and any demo runbook path MUST verify and reuse the prepared artifact when it exists at the expected path.
31+
- The expected owner/demo path is `~/Demo/Installers/UniversalMac_26.4.1_25E253_Restore.ipsw`. No move is required while the file remains there. If a future script changes the expected path, the script or runbook must provide exact copy or move commands for placing the already-downloaded file at the new expected path, then re-run SHA-256 verification before continuing. It must still not start a new download automatically.
2232

2333
Do not commit the raw or sanitized preflight capture bundle. Convert it into durable commands, expected fields, fixtures, and redacted examples only.
2434

2535
## Remaining Open Items
2636

27-
- [ ] Re-run and capture `mist --version`; the first preflight captured `mist version`, which usefully proved the wrong syntax but did not capture the installed version string.
28-
- [ ] Capture `mist help download firmware` and verify the exact options for output directory control in the installed `mist-cli` version.
29-
- [ ] Let the in-progress macOS Tahoe 26.4.1 firmware download finish, then record the actual IPSW path, file size, and SHA-256 checksum.
30-
- [ ] Record whether the download lands under the requested cache path or the default `/Users/Shared/Mist` path.
31-
- [ ] Decide whether Phase 4 should treat compatible installer rows as advisory metadata only, because the current Apple-silicon VM path should prefer firmware/IPSW restore images.
37+
- [x] Re-run and capture `mist --version`; the first preflight captured `mist version`, which usefully proved the wrong syntax but did not capture the installed version string.
38+
- [x] Capture `mist help download firmware` and verify the exact options for output directory control in the installed `mist-cli` version.
39+
- [x] Let the in-progress macOS Tahoe 26.4.1 firmware download finish, then record the actual IPSW path, file size, and SHA-256 checksum.
40+
- [x] Record whether the download lands under the requested cache path or the default `/Users/Shared/Mist` path.
41+
- [x] Owner decision on 2026-05-05: Phase 4 treats compatible installer rows as advisory metadata. Firmware/IPSW restore images are the default Apple-silicon VM media path.
42+
- [x] Owner decision on 2026-05-05: post-construction MMS demo scripts and runbooks must verify and reuse the existing IPSW instead of starting a new download.
3243

3344
## Checklist
3445

35-
- [ ] Owner: Repository owner; Status: Partially verified; Phase gate affected: Phase 4 media acquisition; Why it matters: `mist-cli` syntax and output can change across releases; Action: use the confirmed preflight facts above, complete the remaining download/version captures, and record exact commands for discovering and downloading pinned macOS restore images or provider-appropriate install artifacts; Acceptance condition: the verified commands, version output, expected metadata fields, actual downloaded artifact path, and checksum are documented before `Get-MacLabMedia` implementation; Source: ADR-0005 and spec Section 9.6.
46+
- [x] Owner: Repository owner; Status: Verified for same-major macOS Tahoe 26.4.1 firmware download; Phase gate affected: Phase 4 media acquisition and Phase 9 demo rehearsal; Why it matters: `mist-cli` syntax and output can change across releases, and demos must not accidentally trigger another 18 GB download; Action: use the confirmed preflight facts above as the implementation contract for discovering and downloading pinned macOS restore images or provider-appropriate install artifacts, but make the owner/demo path verify and reuse the existing IPSW at `~/Demo/Installers/UniversalMac_26.4.1_25E253_Restore.ipsw`; Acceptance condition: the verified commands, version output, expected metadata fields, actual downloaded artifact path, checksum, and no-new-download demo rule are documented before `Get-MacLabMedia` and demo script implementation; Source: ADR-0005, ADR-0015, and spec Section 9.6.

0 commit comments

Comments
 (0)