docs: mark boot-substrate bind DONE (systemd units, survives power cycle); update open items

This commit is contained in:
hermes
2026-08-13 09:43:44 -04:00
parent b7467754f5
commit 0343ea6bcb
+13 -8
View File
@@ -51,10 +51,13 @@ is real. Each must be reproduced live, not asserted.
the durable daemon via `cubec --socket /run/cube/cube.sock 'open ...'`. the durable daemon via `cubec --socket /run/cube/cube.sock 'open ...'`.
Verified: dispatch reaches the crypto/run layer. **STATUS: DONE.** Verified: dispatch reaches the crypto/run layer. **STATUS: DONE.**
4. **Boot substrate** — the VM brings up CUBELinux as a storage layer the rest of 4. **Boot substrate** — the VM brings up CUBELinux as a storage layer the rest of
the OS reads/writes through. **PARTIAL 2026-08-13**: OS state (boot manifest + the OS reads/writes through. **DONE (systemd-managed, 2026-08-13)**: units
kernel.log) now lives on the cube store at `/cubefs/c200/z002/y001/x001` etc., `cube-os-state.service` (oneshot, writes boot manifest + machine identity +
read back with inode == packed CZYX. Still auxiliary `/cubefs` (not yet the boot history to `/cubefs/c200/z001|z002|z003`) and `cube-os-klog.service`
root fs) — deepening the bind is the active task. **STATUS: IN PROGRESS.** (streams kernel ring buffer to `/cubefs/c200/z004`) run at boot; both enabled
+ active; state survives a FULL power cycle (verified 2026-08-13: rebooted the
VM, boot history showed pre- + post-reboot lines, manifest unchanged).
**STATUS: DONE (auxiliary layer; not yet the root fs).**
--- ---
@@ -111,13 +114,15 @@ missing.
## 5. Open items ## 5. Open items
- Phase 2/3: **deepen the boot-substrate bind** — make init mount the cube store
as a primary OS layer (e.g. bind `/var/log`, the boot manifest, and a config
tree to `/cubefs/c200/...` so the OS reads/writes its state through the cube by
default), and add each binding as a reproducible verification point above.
- Phase 3 (optional hardening): the `cube open` primitive currently needs a key - Phase 3 (optional hardening): the `cube open` primitive currently needs a key
cell present; wire a real key-management flow (Null-space key cells issued at cell present; wire a real key-management flow (Null-space key cells issued at
boot) so OS services can open records by CZYX + flags unattended. boot) so OS services can open records by CZYX + flags unattended.
- Boot substrate (next deepening): bind a real OS tree (e.g. `/var/log`,
`/etc` config, the boot manifest) so the OS reads/writes through the cube by
default — currently the cube holds OS *state* (manifest/identity/klog) but the
root fs is still ext4. The magic-prefix "open by CZYX" FUSE passthrough is the
natural next step (a path like `/cubefs/.czyx/200.1.1.1` resolves directly to
the coordinate).
- OPTIONAL (cosmetic): launch the "CUBE Shell" desktop launcher in the VM to - OPTIONAL (cosmetic): launch the "CUBE Shell" desktop launcher in the VM to
confirm end-to-end at the file level (wiring already verified: confirm end-to-end at the file level (wiring already verified:
cube-term → cubec → /run/cube/cube.sock). cube-term → cubec → /run/cube/cube.sock).