|
1 | 1 | # macOS Adapter And Canary Validation |
2 | 2 |
|
| 3 | +## Pack-Only Current-Client Canary (2026-07-24) |
| 4 | + |
| 5 | +The signed build 102 Apple-native FSKit App/extension and helper candidate |
| 6 | +`a28ea3e8bbd213babe5467cf68daed685e884516bb6dd17b4a9116e879f8c139` |
| 7 | +completed the isolated Pack V3 retirement sequence without changing the real |
| 8 | +Codex home or the real Desktop process. Source metadata remains `0.3.0 (103)`; |
| 9 | +the mounted FSKit evidence is still attributed to behavior-identical build |
| 10 | +102 rather than relabeled as build 103. |
| 11 | + |
| 12 | +- Pack doctor verified 63 of 63 objects and 4 of 4 manifests before deletion. |
| 13 | + `pack retire-loose --apply` removed all 63 loose objects and reclaimed |
| 14 | + 339,968 physical bytes. After service restart, three managed files retained |
| 15 | + their exact lengths and SHA-256 values, including the 256 MiB fixture. |
| 16 | +- A temporary 4,096-byte mismatch was traced to the adjacent macOS AppleDouble |
| 17 | + file `._rollout-...jsonl`, whose SHA-256 exactly matched the alleged bad |
| 18 | + result. The canonical rollout itself remained byte-exact. Product discovery |
| 19 | + already excludes `._*`; all final checks used exact basenames. |
| 20 | +- Filesystem doctor initially exposed a genuine post-retirement gap: its |
| 21 | + manifest component still required loose objects. The shared health path now |
| 22 | + uses the authoritative current Pack resolver, and rejects a broken present |
| 23 | + `packs/CURRENT` instead of silently falling back. Final doctor reported all |
| 24 | + 11 components healthy and zero issues with zero loose objects. |
| 25 | +- PATH `codex-cli 0.144.3` resumed the Pack-only parent, recovered the previous |
| 26 | + API-design rationale and concrete tests, inspected the real repository, and |
| 27 | + completed `go test ./...`. Desktop `26.721.31836+5828` displayed the complete |
| 28 | + history and completed another repository/test review. |
| 29 | +- Desktop's official `Continue in new chat from here` action created native |
| 30 | + child `019f93ea-ff0f-7753-a3b5-3e0a040c0caa`. The child inherited the full |
| 31 | + parent history, completed `go test ./...`, and matched its native backing |
| 32 | + byte-for-byte. Child-only and later parent-only markers remained isolated. |
| 33 | +- Canonical rollback materialized the Pack-only parent as a 1,196,755-byte |
| 34 | + native rollout with SHA-256 |
| 35 | + `c61b3cbc0f65e860fadae315f747485bae427a31b1cf0d4b5fdebd0375f7b4b2`. |
| 36 | + The managed state was retired, service restart preserved mounted/native byte |
| 37 | + identity, and a real CLI native resume completed another model turn and |
| 38 | + `go test ./...`. |
| 39 | +- Transactional helper update made the configured, installed, and running |
| 40 | + helper SHA identical. Forced termination of the Go daemon child, supervisor |
| 41 | + child, Host wrapper, and active FSKit extension each recovered automatically. |
| 42 | + The 256 MiB managed fixture retained SHA-256 |
| 43 | + `bdf04ec3fa10af7b803564739818047eb558829cb23d136dc010bd4aaa064d52` |
| 44 | + after every recovery. |
| 45 | +- The final independently restarted managed performance round measured cold |
| 46 | + native and virtual reads at 5,028.78 and 15,129.88 MiB/s, ratio `3.009`; warm |
| 47 | + reads measured 15,017.23 and 15,378.95 MiB/s, ratio `1.024`. `F_NOCACHE` |
| 48 | + applied to both cold paths. Aggregate service RSS was 169,088 KiB, below the |
| 49 | + 256 MiB gate. Results are observations, not general throughput guarantees. |
| 50 | + |
| 51 | +This closes the executable non-destructive Pack-only, current-client, fork, |
| 52 | +rollback, restart, process-recovery, and performance gates for the isolated |
| 53 | +macOS candidate. General production promotion still requires the dedicated |
| 54 | +incident-free observation period and a deliberately controlled host power |
| 55 | +interruption while a transaction is in flight. |
| 56 | + |
3 | 57 | ## Native FSKit Development Checkpoint |
4 | 58 |
|
5 | 59 | As of 2026-07-23, the terminal macOS validation candidate is the signed build 102 Apple-native Swift FSKit App/extension running the current Go helper through versioned binary UDS IPC. The transactionally installed isolated candidate passes mounted metadata and xattr behavior, append, `fsync`, `F_FULLFSYNC`, overlapping open lifetimes, random write, truncate, namespace and archive moves, mmap, open-unlink, external file and directory refresh, read-ahead coherency, eight-way virtual concurrent reads, exact-byte comparison, and managed service restart. Build-identity checks, environment sanitization, transactional app/definition/helper installation, and rollback also pass. |
|
0 commit comments