| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(snapshot): add unified storage and safe AFS reclamation Support local-only storage, S3 with node-local caching, and shared filesystem capture and restore through a common checkpoint storage crate. Capture AFS snapshots directly and retain lazy restore inputs for the execution lifetime. Keep anonymous checkpoints owned by their Environment. Let Coordinator reclaim shared artifacts after execution fencing, and reject deletion of snapshots in use with the Sandbox and template owners in HTTP and SDK error details. Persist AFS Meta deltas with recoverable checkpoints, bound idempotency retention, and compact Watch history with resynchronization. Protect COW and live readers while collecting unreferenced versions and physical chunks. Retry unlink/rmdir CAS conflicts with the same operation identity and fresh permission, inode and directory checks; retain typed pre-forward route-change evidence for safe retry. Integrate master@1e9ae5f native read/write pipelines while retaining GC safety. Pin each native write generation through upload and publication, reserve chunks before native uploads, and drain catalog admission before GC checkpoint/WAL rotation. Retire collected Peer residents without releasing live reader charges. Regression tests cover native reservation rejection, publication reference lifetime, catalog-install exclusion, and checkpoint recovery with a torn WAL tail. Validation on master@1e9ae5f: - Linux AFS: 1,572 passed, 68 ignored, including four rebase regression tests. - Checkpoint storage: 6 passed; fmt and strict workspace Clippy passed. - Python SDK: 296 passed and 89 subtests; E2E driver unit tests: 386 passed. - Documentation and whitespace checks passed. - Real Firecracker E2E and performance were not rerun after this rebase. Validation before the master@1e9ae5f rebase (runtime tests not rerun after rebase): - Linux AFS: 1,359 passed, 63 ignored; Python checks: 386 passed. - Linux fmt and strict workspace/all-targets/all-features Clippy passed. - Documentation checks and staged whitespace checks passed. - Real FUSE: all 64 contested removals passed; 55 actual conflicts retried. - Real AFS/Firecracker: six pause/resume cycles converged after Environment deletion, with COW, node-session replacement and Coordinator reclaim checks. - Matched-runtime ABBA regression: 40 timed wakes, each with 12 requests through two Ingress replicas and exactly one physical restore, all passed functionally. Performance remains under review: cold pause P95 rose from 1.582s to 3.684s, driven by one 5.499s pause with 5.023s in the VMM snapshot phase. Median latency did not regress materially; causation has not been established. Initial FC measurements with different runtime image hashes were excluded from comparison. Runtime tests used two isolated executors on one KVM host, not physical-host HA. Signed-off-by: WenYuLuo <luo1442@gmail.com> | 10 天前 | |
refactor: unify Environment APIs, SDK and deployment tooling Expose adx-environment 0.1.0rc1, adx_environment.Environment and the public /api/environment/v1/environments contract with environmentId. Adapt Agent, Gateway, platform execution types and protocols, SDK callers, examples, deployment configuration and observability to the Environment model. Align Buildkite labels and artifact paths, and share repository release-tag gates across SDK and admin while keeping package versions independent. Include adx-activator in release packages and add real standalone and embedded Activator deployment acceptance. Correct documentation, SVG diagrams, English language consistency and external protocol references. Preserve the external sandboxd API and AKernel's public Sandbox interface. Validate on refactor@0011cfb with fmt, strict Clippy, unwrap policy, 849 Rust tests and 19 crate doctest gates; 293 SDK tests plus 89 subtests, 22 admin tests, and OpenAPI, documentation and CI contracts. Real Activator acceptance passed 9/9 cases per mode, and AKernel passed 17 runsc E2E groups with zero skips using the prior cd3e38e artifact snapshot. Deployment acceptance and release assembly were not rerun after rebase. Signed-off-by: robbluo <luo1442@gmail.com> | 16 天前 | |
refactor!: adopt Environment and rename ADX processes Use coordinator, adxlet, apiserver, ingress, relay and execd across binaries, protocols, configuration, packaging and documentation. Separate Environment lifecycle from RuntimeProfile bootstrap configuration and update persistence contracts. Adapt test drivers and add explicit host cgroup support for local sandboxd validation. Verified Rust workspace and Clippy, Redis and RPC suites, SDK checks, and all ten Linux standalone E2E groups (41 JUnit cases). Signed-off-by: robbluo <luo1442@gmail.com> | 1 个月前 | |
fix(platform): report create timeout phases Preserve phase-specific deadline failures through create RPCs, public errors and replay. Keep the absolute execution deadline while allowing bounded failure reporting and reconciliation. Refs inclusionAI/AKernel#96. Signed-off-by: robbluo <luo1442@gmail.com> | 15 天前 |