-
Notifications
You must be signed in to change notification settings - Fork 0
QEMU 100 Completion Plan
This page defines the remaining work required to make XAI OS 100% complete for the macOS/QEMU target.
This is a QEMU-hosted OS completion target. It does not mean physical Intel Desktop, Intel Xeon, AMD, or ARM/NVIDIA hardware is complete, and it does not authorize performance claims against Linux, BSD, or real hardware.
- Definition of QEMU Complete
- Progress Tracker
- Milestone 60: Real Scheduler and Process Model
- Milestone 61: Real Userspace Command Surface
- Milestone 62: Minimal Real Filesystem Surface
- Milestone 63: App-Agent Workspace Flow
- Milestone 64: Network Stack Completion for QEMU
- Milestone 65: CPU-Only AI Runtime MVP
- Milestone 66: AI Cell Production Semantics in QEMU
- Milestone 67: Security and Capability Hardening
- Milestone 68: Update, Rollback, and Recovery
- Milestone 69: Long-Run Stability and Stress
- Milestone 70: QEMU Release Artifact
- Milestone 71: Final QEMU 100 Gate
- Execution Order
- Completion Rule
XAI OS is 100% complete for macOS/QEMU when it can:
- boot reliably in QEMU;
- run multiple real EL0 user processes;
- provide a minimal but real userspace control plane;
- persist mutable state across reboot;
- expose a usable filesystem surface;
- exercise a real internal networking stack;
- enforce AI Cell resource ownership;
- run a deterministic CPU-only AI runtime boundary;
- support app-agent source, workspace, build, test, update, and rollback flows in QEMU;
- survive regression, fault-injection, reboot-loop, stress, and ABI gates;
- produce clear machine-readable reports proving every QEMU contract;
- keep performance claims disabled until physical hardware testing exists.
This completion definition is limited to the QEMU integration target. The current app suite includes a shell command engine, a QEMU-native remote-login command syscall, an OpenSSH-compatible local bridge for ssh -p 2222 admin@localhost, app-callable UDP/TCP and external-session QEMU paths, a user thread-group syscall, a CPU-AI decode syscall, and a generic CPU-only ML dispatcher. Full public-network interoperability, drop-in POSIX pthreads, and hosted ML frameworks remain outside the QEMU completion definition.
| Milestone | Phase | Status | Gate | Report |
|---|---|---|---|---|
| 60 | Real scheduler and process model | ✅ Done | make qemu-process-gate |
build/qemu-milestone-60-process-gate.json |
| 61 | Real userspace command surface | ✅ Done | make qemu-osctl-gate |
build/qemu-milestone-61-osctl-gate.json |
| 62 | Minimal real filesystem surface | ✅ Done | make qemu-filesystem-gate |
build/qemu-milestone-62-filesystem-gate.json |
| 63 | App-agent workspace flow | ✅ Done | make qemu-app-agent-gate |
build/qemu-milestone-63-app-agent-gate.json |
| 64 | Network stack completion for QEMU | ✅ Done | make qemu-network-full-gate |
build/qemu-milestone-64-network-full-gate.json |
| 65 | CPU-only AI runtime MVP | ✅ Done | make qemu-cpu-ai-runtime-gate |
build/qemu-milestone-65-cpu-ai-runtime-gate.json |
| 66 | AI Cell production semantics in QEMU | ✅ Done | make qemu-ai-cell-gate |
build/qemu-milestone-66-ai-cell-gate.json |
| 67 | Security and capability hardening | ✅ Done | make qemu-security-gate |
build/qemu-milestone-67-security-gate.json |
| 68 | Update, rollback, and recovery | ✅ Done | make qemu-update-gate |
build/qemu-milestone-68-update-gate.json |
| 69 | Long-run stability and stress | ✅ Done | make qemu-soak-gate |
build/qemu-milestone-69-soak-gate.json |
| 70 | QEMU release artifact | ✅ Done | make qemu-release |
build/qemu-release-manifest.json |
| 71 | Final QEMU 100 gate | ✅ Done |
make qemu-100-gate plus make qemu-ssh-smoke
|
build/qemu-100-report.json |
Goal: move beyond the current two foreground EL0 process path.
Required work:
- Add process table growth beyond the current smoke path.
- Add runnable, waiting, exited, and failed states.
- Add cooperative scheduling first.
- Add timer-driven preemption only for non-hot-path cores.
- Add process wait and exit semantics.
- Add parent/child supervision.
- Add per-process address-space metadata.
- Add process kill and restart paths.
- Add tests for failed process cleanup.
Definition of done: QEMU boots, launches /init, the service manager, and at least three child user processes. The kernel reclaims all exited processes, and telemetry proves no leaked process slots.
Gate:
make qemu-process-gate
Implementation status: complete in QEMU. The kernel now tracks sixteen process slots, runnable/running/waiting/exited/failed states, parent ids, dispatch ticks, active-process telemetry, repeated EL0 worker execution from /bin/xaios-worker, and the QEMU example app suite under /bin.
Goal: make XAI OS usable from a real internal control binary instead of boot fixtures.
Required work:
- Expand
osctl. - Add
osctl status. - Add
osctl ps. - Add
osctl services. - Add
osctl cells. - Add
osctl fs. - Add
osctl net. - Add
osctl telemetry. - Add
osctl update. - Add
osctl rollback. - Add command parser tests.
- Add syscall-backed status APIs.
- Add permission checks per command.
Definition of done: all commands run from EL0 userspace, invalid commands fail cleanly, and missing capabilities fail closed.
Gate:
make qemu-osctl-gate
Implementation status: complete in QEMU. The EL0 service manager now exercises osctl status, osctl ps, osctl services, osctl cells, osctl fs, osctl net, osctl telemetry, osctl update, and osctl rollback through the existing syscall-backed control plane.
Goal: turn the mutable filesystem from a contract layer into a usable OS filesystem.
Required work:
- Add directory listing.
- Add file create, read, write, and delete.
- Add file rename.
- Add file metadata.
- Add open, read, write, and close syscall APIs.
- Add path normalization.
- Add read-only versus mutable mount rules.
- Add journal replay tests.
- Add corruption tests.
- Add filesystem capacity tests.
Definition of done: /etc, /bin, /state, /logs, /workspaces, and /models behave predictably. Reboot reloads mutable state, and rollback restores previous filesystem state.
Gate:
make qemu-filesystem-gate
Implementation status: complete in QEMU. The mutable filesystem now exposes directory listing, stat, rename, direct read/write/delete helpers, open/read/write/close file descriptors, path normalization, capacity rejection, journal replay, rollback, and EL0 filesystem syscalls through the service manager.
Goal: make the XAI OS app-agent thesis real inside QEMU.
Required work:
- Add workspace records under
/workspaces. - Add source-index loading from a fixture repo.
- Add patch staging.
- Add patch apply and revert.
- Add build sandbox execution model.
- Add test result records.
- Add Git sync metadata model.
- Add rollback after failed build or test.
- Add app-agent lifecycle telemetry.
Definition of done: a QEMU app agent can inspect a source tree fixture, stage a patch, apply it, run a deterministic build, run tests, persist the result, and roll back on failure.
Gate:
make qemu-app-agent-gate
Implementation status: complete in QEMU. The app-agent flow is covered by source-index fixtures, Git workspace sync/apply/revert metadata, deterministic sandbox build and rollback behavior, persisted workspace/service records, and the milestone 63 gate.
Goal: make QEMU networking more than parser and state smoke paths.
Required work:
- Add packet buffer pool.
- Add UDP send and receive path.
- Add UDP socket-like userspace API.
- Add TCP listen, connect, accept, established, close, timeout, and reset states.
- Add per-core queue ownership checks.
- Add malformed packet tests.
- Add QEMU host-user network test harness.
Definition of done: userspace can send and receive UDP through QEMU, TCP state transitions are internally complete enough for control traffic tests, and queue ownership telemetry remains clean.
Gate:
make qemu-network-full-gate
Implementation status: complete in QEMU. The network gate covers queue-backed packet flow, UDP flow lifecycle, TCP establish/timeout/retransmit/close transitions, malformed packet drops, per-core queue binding/release telemetry, and zero flow/core mismatch counters.
Goal: move from deterministic simulator to a minimal real CPU-only model runtime boundary.
Required work:
- Define the final QEMU model file ABI.
- Add model metadata parser.
- Add tokenizer table loading.
- Add deterministic tiny inference kernel.
- Add shared read-only weight mapping.
- Add private KV/cache per AI Cell.
- Add admission control by memory and core budget.
- Add multi-agent shared model test.
- Add model unload and refcount behavior.
Definition of done: multiple AI Cells share one model mapping, each cell has private KV/cache, bad model files are rejected, and GPU-required model metadata is rejected.
Gate:
make qemu-cpu-ai-runtime-gate
Implementation status: complete in QEMU. The CPU-only runtime gate covers the QEMU model file ABI, metadata validation, tokenizer/runtime boundary, deterministic tiny CPU inference, shared read-only model weights, private KV/cache arenas, GPU-required model rejection, checksum failure handling, and admission-control rejection.
Goal: make AI Cells the real native execution unit.
Required work:
- Finalize AI Cell descriptor ABI.
- Add cell create, start, stop, restart, and destroy syscalls.
- Enforce exclusive core leases.
- Enforce arena reservations.
- Enforce NIC queue binding.
- Enforce workspace binding.
- Add telemetry per cell.
- Add conflict tests for duplicate core, duplicate queue, duplicate workspace, missing model, and insufficient memory.
Definition of done: userspace can create and manage AI Cells, all resource conflicts fail closed, and destroy releases all resources.
Gate:
make qemu-ai-cell-gate
Implementation status: complete in QEMU. The AI Cell gate covers descriptor validation, create/start/run/stop lifecycle, exclusive core leases, memory arena reservations, NIC queue binding, workspace binding, shared model references, private KV/cache, and conflict tests for duplicate or invalid resources.
Goal: make QEMU security policy internally consistent.
Required work:
- Audit the capability model.
- Add per-process capability sets.
- Add per-service capability manifests.
- Add filesystem access policy.
- Add workspace access policy.
- Add update and rollback authorization.
- Add secret logging denial.
- Add admin command allowlist.
- Harden the signed update stub.
- Add a security regression matrix.
Definition of done: every protected operation has a positive and negative test, unauthorized actions fail closed, and no secrets appear in logs or reports.
Gate:
make qemu-security-gate
Implementation status: complete in QEMU. The security gate covers per-operation capability checks, filesystem write denial, workspace and sandbox ownership checks, rollback authorization, signed update policy, credential-material rejection, admin command capability checks, and sandbox path escape denial.
Goal: make update behavior credible in QEMU.
Required work:
- Add update transaction format.
- Add staged update state.
- Add committed update state.
- Add failed update recovery.
- Add rollback point creation.
- Add boot fallback path.
- Add update audit log.
- Add corrupted update tests.
Definition of done: a staged update can fail and recover, a committed update can roll back, and reboot preserves update state.
Gate:
make qemu-update-gate
Implementation status: complete in QEMU. The update gate covers signed transaction begin, staged state, committed state, failed update recovery, boot fallback, rollback point creation, committed update rollback, persisted update records, and rejection counters.
Goal: prove the QEMU OS survives more than smoke tests.
Required work:
- Add a 25-boot default loop.
- Add a 100-boot optional soak.
- Add repeated process create and exit.
- Add filesystem churn.
- Add network packet churn.
- Add AI Cell create and destroy churn.
- Add memory allocation and free churn.
- Add telemetry leak checks.
Definition of done: the developer soak passes, no monotonic resource leak appears, and extended 25-boot or 100-boot soak runs can be requested manually through XAIOS_QEMU_SOAK_BOOTS.
Gate:
make qemu-soak-gate
Implementation status: complete in QEMU. The soak gate runs repeated QEMU smoke boots, records per-boot telemetry, fails on boot or marker regression, and writes build/qemu-milestone-69-soak-gate.json. The default developer run is intentionally short; longer runs use XAIOS_QEMU_SOAK_BOOTS=25 or XAIOS_QEMU_SOAK_BOOTS=100.
Goal: make QEMU XAI OS reproducible and reviewable.
Required work:
- Add
make qemu-release. - Generate the boot image.
- Generate the test block image.
- Include contract JSON files.
- Include all gate reports.
- Include a release manifest.
- Include a checksum file.
- Include a boot log archive.
- Add version metadata.
- Add release notes template.
Definition of done: a clean checkout can build and produce a complete QEMU release bundle.
Gate:
make qemu-release
Implementation status: complete in QEMU. The release gate emits a machine-readable manifest with image paths, sizes, SHA-256 checksums, the frozen QEMU RC contract, required report references, release metadata, and performance_claims_allowed=false.
Goal: one command proves QEMU completeness.
Required work:
- Add
make qemu-100-gate. - Run the existing post-51 gate.
- Run the process gate.
- Run the osctl gate.
- Run the filesystem gate.
- Run the app-agent gate.
- Run the full network gate.
- Run the CPU-AI runtime gate.
- Run the AI Cell gate.
- Run the security gate.
- Run the update gate.
- Run the soak gate.
- Run the release gate.
Definition of done: make qemu-100-gate exits 0, writes build/qemu-100-report.json, the wiki Project Tracker marks the QEMU target complete, and README states that the QEMU target is complete while hardware targets remain pending.
Gate:
make qemu-100-gate
Implementation status: complete in QEMU. The aggregate gate runs the milestone 62-68 gates, the soak gate, and the release gate, then writes build/qemu-100-report.json with the final QEMU completion status.
- Milestone 60: scheduler and process model.
- Milestone 61: userspace command surface.
- Milestone 62: filesystem surface.
- Milestone 63: app-agent workspace flow.
- Milestone 64: full QEMU networking.
- Milestone 65: CPU-only AI runtime MVP.
- Milestone 66: AI Cell production semantics.
- Milestone 67: security hardening.
- Milestone 68: update, rollback, and recovery.
- Milestone 69: soak and stress.
- Milestone 70: QEMU release artifact.
- Milestone 71: final QEMU 100 gate.
The QEMU target is complete when make qemu-100-gate passes and writes build/qemu-100-report.json with status=pass; the full readiness matrix is checked with make qemu-readiness-gate.
Physical hardware validation, tuned Linux/BSD baselines, and any performance claims remain outside this QEMU completion rule.
This page defines the GitHub Wiki navigation sidebar.
- Architecture
- AI Cells
- CPU AI Runtime
- App Agents
- Memory System
- Networking
- Scheduler and Core Isolation
- Filesystem and Storage
- Driver Model
- Security Model
- Build System
- Build System
- Project Tracker
- Implementation Plan
- QEMU Full OS Core Workdown
- QEMU 100 Completion Plan
- Example Apps
- Codex Work Packages
- Testing and Benchmarking