You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(readme): reflect real v2.4.0 status — hardening audits + e2e validation (#149)
Update "Current status" and "Verified core behavior" to the actual post-2.3.0
state shipped in v2.4.0:
- three closed adversarial audits (operability 24, untrusted-input security 4
incl. a critical digest path-traversal, concurrency/atomicity 4), every fix
verified on real microVMs;
- end-to-end validation on a real /dev/kvm host: composed-main CI integration, a
2h / 4584-op endurance soak with zero leak, and complex stateful containers
(volume persistence across restart, a stateful DB across restart, a web server);
- honest positioning: suitable for controlled production; large-scale adversarial
multi-tenant still benefits from scale testing + external security review.
Docs-only.
Co-authored-by: Roy Lin <roylin@a3s.box>
Copy file name to clipboardExpand all lines: README.md
+15-3Lines changed: 15 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,6 +32,8 @@ In one line: **the isolation of a VM, the startup and density of a container, th
32
32
33
33
A3S Box is built toward production use, but it is not a full Docker, containerd, or Kubernetes replacement yet. The local CLI runtime is the primary product surface. Kubernetes CRI, hardware TEE, and Windows support exist in code paths but should be treated as integration surfaces that need host-specific validation before production use.
34
34
35
+
As of **v2.4.0**, three adversarial audits — production-operability (24 findings), untrusted-input security (4, including a critical registry-digest path-traversal), and concurrency/atomicity (4) — have been closed, every fix verified on real microVMs. The merged tree is validated end-to-end: a composed-main CI integration run on a real `/dev/kvm` host, a **2-hour / 4584-operation endurance soak with zero resource leak**, and complex **stateful** workloads (named-volume persistence across stop/start and restart, a stateful database surviving a restart, and a web server). Net: the local CLI runtime is suitable for **controlled production** with trusted-to-semi-trusted workloads; adversarial multi-tenant deployment at large scale still benefits from independent scale testing and an external security review.
36
+
35
37
| Area | Status today |
36
38
| --- | --- |
37
39
| Local CLI runtime | Implemented for macOS Apple Silicon/HVF and Linux/KVM style hosts. Real macOS HVF core smoke has passed with an offline Alpine OCI archive. |
@@ -69,9 +71,19 @@ The ignored `core_smoke` suite covers the core CLI path on a real MicroVM host:
69
71
- named volumes, `cp`, `diff`, `export`, `commit`, `snapshot`, restart-policy monitor recovery, and Compose health/volume flow;
70
72
- warm pool (`pool start`/`pool run`): pre-warmed sandboxes served over a socket, with backpressure and multi-image lazy pools; `--deferred` runs each command as the box's real main for full box semantics (real exit code + json-file console logs) with no cold boot; `--snapshot-fork` fills the pool by Copy-on-Write restore from one booted template instead of cold booting each sandbox.
71
73
72
-
The most recent local record in this branch: all 14 ignored `core_smoke` tests
73
-
passed on macOS HVF with an offline Alpine OCI archive, and the ignored
74
-
`host_smoke` VM command matrix plus Compose smoke passed with the same archive.
74
+
The most recent local record: all 14 ignored `core_smoke` tests passed on macOS
75
+
HVF with an offline Alpine OCI archive, and the ignored `host_smoke` VM command
76
+
matrix plus Compose smoke passed with the same archive.
77
+
78
+
For **v2.4.0**, the merged tree was additionally validated on a real Linux
79
+
`/dev/kvm` host: the composed-main CI integration suite passed; a **2-hour
80
+
endurance soak of 4584 real-microVM operations** (high-frequency
81
+
create/run/remove churn plus a full run → exec → snapshot → stop → rm lifecycle
82
+
every tenth op) finished with **zero leak** — orphan shims, overlay mounts, box
83
+
directories, and disk all returned to baseline; and complex **stateful**
84
+
containers passed: a named volume's data survived stop/start, a Redis instance's
85
+
key survived a `restart` (`SET` → `SAVE` → `restart` → `GET`), and an nginx box
0 commit comments