Skip to content

QEMU 100 Completion Plan

Node1 edited this page Jun 18, 2026 · 8 revisions

QEMU 100 Completion Plan

Purpose

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.

Contents

Definition of QEMU Complete

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.

Progress Tracker

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

Milestone 60: Real Scheduler and Process Model

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.

Milestone 61: Real Userspace Command Surface

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.

Milestone 62: Minimal Real Filesystem Surface

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.

Milestone 63: App-Agent Workspace Flow

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.

Milestone 64: Network Stack Completion for QEMU

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.

Milestone 65: CPU-Only AI Runtime MVP

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.

Milestone 66: AI Cell Production Semantics in QEMU

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.

Milestone 67: Security and Capability Hardening

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.

Milestone 68: Update, Rollback, and Recovery

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.

Milestone 69: Long-Run Stability and Stress

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.

Milestone 70: QEMU Release Artifact

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.

Milestone 71: Final QEMU 100 Gate

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.

Execution Order

  1. Milestone 60: scheduler and process model.
  2. Milestone 61: userspace command surface.
  3. Milestone 62: filesystem surface.
  4. Milestone 63: app-agent workspace flow.
  5. Milestone 64: full QEMU networking.
  6. Milestone 65: CPU-only AI runtime MVP.
  7. Milestone 66: AI Cell production semantics.
  8. Milestone 67: security hardening.
  9. Milestone 68: update, rollback, and recovery.
  10. Milestone 69: soak and stress.
  11. Milestone 70: QEMU release artifact.
  12. Milestone 71: final QEMU 100 gate.

Completion Rule

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.

Clone this wiki locally