777926487b
initial QEMU slice, backed by imported contracts for majors 6–9. - Implement durable handlers for access/auth, cluster, LXC, storage, HA, firewall, Ceph, SDN, ACME, notifications, pools, mapping, and node ops - Serve an interactive Web UI with catalog browsing, demo seed controls, and OpenAPI/help surfaces - Bundle PVE 6.4-15, 7.4-16, and 8.4.5 contract revisions alongside 9.2.3 - Support in-memory runtime contract Apply (POST /ui/api/contract/apply) so /version and /api2 routes follow the selected major until restart - Expand seed profiles (including demo-cluster), migrations 007–008, TLS gateway config, Compose/Makefile tooling, and compatibility evidence - Tighten .gitignore for macOS, hidden directories (.*/), and local secrets
2.1 KiB
2.1 KiB
Web UI
Open http://localhost:8006/ after make up.
The UI is a laboratory console for the simulator — not a full Proxmox VE management interface. It supports light and dark themes, PVE majors 6–9, request/response editing, history, and runtime contract apply.
Screenshots
Light theme — GET /cluster/resources on PVE 9.2.3:
Dark theme — same console with theme toggle:
Features
- Endpoint tree and method selector driven by the selected catalog major
- Contract-derived parameters and example payloads
- Request editor, response viewer, and history
- Password login with cookie + CSRF handling
- Environment summary (runtime version, nodes, guests, storage)
- Curl / request previews
- PVE 6–9 API catalog with implementation coverage
- Apply as runtime hot-swap for the active contract
- Compatibility and readiness views
- Demo-cluster load / unload / refresh
- Link to OpenAPI at
/docs
Backend helpers
| Method | Path | Purpose |
|---|---|---|
| GET | /ui/api/versions |
Catalog majors vs runtime |
| GET | /ui/api/catalog?major=N |
Catalog for major 6–9 |
| GET | /ui/api/method?... |
Single method metadata |
| GET | /ui/api/compatibility?major=N |
Coverage payload |
| POST | /ui/api/contract/apply?major=N |
Hot-swap runtime contract |
| GET | /ui/api/demo/state |
Demo dataset state |
| POST | /ui/api/demo/load |
Load demo-cluster |
| POST | /ui/api/demo/unload |
Unload → minimal |
Version workflow
- Pick major 6 / 7 / 8 / 9 in the catalog.
- Inspect methods and coverage.
- Apply as runtime when you want live
/api2/*routes to match that major. - Confirm with
/api2/json/versionand/admin/compatibility.
Hot-swap is memory-only; restart restores CONTRACT_SNAPSHOT. Details:
API versions.
Security note
UI and demo endpoints are intended for local development. They are not gated by a separate admin token in the current build. Do not expose the simulator port to untrusted networks.

