diff --git a/doc/design/code-ownership-map.md b/doc/design/code-ownership-map.md index ff6c82117..aeefb0a05 100644 --- a/doc/design/code-ownership-map.md +++ b/doc/design/code-ownership-map.md @@ -25,10 +25,15 @@ contracts between them. | State-unit quiesce, start, rollback, inventory, and downtime advance | OpenVMM state-unit framework | | Snapshot format, machine contract, publication, and artifact validation | OpenVMM snapshot helpers and platform file primitives | | Backend CPU contracts and snapshot clocks | KVM, MSHV, and WHP backends | -| Sandbox launch and kernel features | NVX sandbox launcher and microVM kernel configuration | +| Layered sandbox launch and kernel features | NVX sandbox launcher and microVM kernel configuration | +| Edge sandbox lifecycle API, request validation, backend capabilities, and the serializable contract model | NVX `aci_edge_sandboxes` crate and its data-model crate | +| Blockless managed launch, durable sandbox records, OpenVMM process reconciliation, host-path export, and egress-rule translation | `aci_edge_sandboxes` default OpenVMM backend | +| Image-backed edge sandboxes | `aci_edge_sandboxes` optional agent backend, which delegates to a separately supplied native library | | Workload namespace and root construction | NVX guest container launch and entry helpers | | Guest workload, scratch quiesce, managed lifecycle, and post-restore CPU/RAM repair | NVX guest init agent and snapshot helper | +| Blockless managed workloads, host-path binds, and workload account creation | NVX guest init and managed agent | | OpenVMM control-plane and guest-artifact integration tests | OpenVMM microVM and management-RPC VMM tests | | NVX Linux and device integration tests | NVX microVM process tests and guest test scripts | +| Edge sandbox contract, fake-OpenVMM, and real-hypervisor lifecycle tests | `aci_edge_sandboxes` crate tests | | Copilot adversarial controller and typed broker | NVX adversarial controller and broker | | Credential-free adversarial executor and independent oracles | NVX adversarial executor and oracle watchdog | diff --git a/doc/design/sandbox-filesystem-and-agent-architecture.md b/doc/design/sandbox-filesystem-and-agent-architecture.md index cf318485d..8b7b5fb8a 100644 --- a/doc/design/sandbox-filesystem-and-agent-architecture.md +++ b/doc/design/sandbox-filesystem-and-agent-architecture.md @@ -18,6 +18,17 @@ configuration, Rust agent, and production runtime protocol described below are **Proposed**. They must not be inferred from the presence of block devices or snapshot-tier metadata alone. +Two host components launch sandboxes on this foundation. The `nvx sandbox` +command attaches image layers and scratch, from which the guest assembles the +[layered root](#implemented-filesystem-bootstrap). The +[`aci_edge_sandboxes` crate](../../aci_edge_sandboxes/README.md) exposes a +provision, start, exec, stop, and deprovision API. Its default backend launches +OpenVMM directly, without NVX tooling, with the managed lifecycle and no +sandbox blocks, so each workload runs in the Alpine initramfs root, as +[Control protocol and checkpoint handoff](#control-protocol-and-checkpoint-handoff) +describes. Its optional agent backend delegates the lifecycle to a separately +supplied native library and an image-backed edge guest that NVX does not build. + ## Implemented filesystem bootstrap The public `nvx sandbox` command accepts one to three role-bearing EROFS lower