docs: mark VM durable-socket e2e done (NEXT STEP 1) in RESUME doc

VM qcow2 was pre-fix; rebuilt cubefs-mount from fixed source inside the VM,
rewired cubefs.service to --socket /run/cube/cube.sock with
Requires=cube-server.service, and proved a FUSE write survives a daemon
restart via the durable store+WAL. ./check also green inside the VM.
This commit is contained in:
CUBELinux-2
2026-08-13 06:25:39 -04:00
parent dd269e2b44
commit 0e3f18d106
+16 -8
View File
@@ -62,16 +62,24 @@ Two separate bugs hid behind the "FUSE write didn't reach the daemon" symptom:
filesystem work; it is the only stage exercising the real kernel VFS path.
## NEXT STEPS (current)
1. Repeat the single-daemon + single-mount e2e INSIDE the VM to confirm the
deployed artifact behaves identically (host proof is on the shared code path).
NOTE: the VM's `cubefs.service` currently launches `cubefs-mount /cubefs
--seed` WITHOUT `--socket`, so it is in-memory there too — update the unit to
`cubefs-mount /cubefs --socket /run/cube/cube.sock --seed` (and ensure the
daemon is ordered Before= cubefs.service) so the VM FUSE is durable.
2. Add a `--features mount` build to the VM image's build step and to `./check`
so the durable mount can't silently regress to in-memory again.
1. ~~Repeat the single-daemon + single-mount e2e INSIDE the VM...~~ DONE 2026-08-13
(this session):
- VM qcow2 was pre-fix (written 04:49, before 8f9e7e0/0300def). Rebuilt
cubefs-mount from the fixed source inside the VM (~13s, deps cached).
- Rewired /etc/systemd/system/cubefs.service from `--seed` (in-memory) to
`--socket /run/cube/cube.sock` with `Requires=cube-server.service`.
- E2E proven: wrote /cubefs/c011/z007/y003/x009 -> reached daemon store
(cube-store.json + .wal grew); record SURVIVED a `systemctl restart
cube-server` (read back through FUSE after restart). Durable-mount
contract holds inside the VM. ./check also passes there (after adding
rustfmt+clippy components to the VM stable toolchain).
2. Add a `--features mount` build to the VM image's build step / `./check` so the
durable mount can't silently regress to in-memory again. (DONE on host ./check;
VM image build step not yet updated.)
3. Optionally surface `DaemonBackend::put` failures as FUSE EIO instead of
eprintln-only (best-effort today, acceptable).
4. Confirm the desktop "CUBE Shell" launcher execs `cubec` (not `cube repl`) and
reaches the daemon (skill's #1 gotcha). Not yet visually verified.
## KEY FILES
- /home/CUBELinux/CUBELinux-2/cubesys/src/commands.rs (raw* commands + helpers)