v0.1.0
Summary
hypeman 0.1.0 ships a faster, more observable runtime for snapshot-heavy workloads.
faster forks and restores
- UFFD snapshot paging for initial fork restores
- improved Firecracker fork concurrency
- parallelized and optimized restore network setup
- faster standby through diff snapshot reuse and reflink cloning
stronger lifecycle management
- instance health checks and restart policies
- auto-standby, scheduled snapshots, and retention cleanup
- idempotent lifecycle transitions
waitForStatefor blocking state changes
better production visibility
- always-on metrics
- per-phase instance timings
- restore network telemetry
- lifecycle, hypervisor, and guest exec tracing
- disk, capacity, latency, and age metrics
cleaner networking and resource control
- burst-proof admission control
- active memory reclaim
- bandwidth reservation fixes
- TAP cleanup and tc class collision fixes
- optional egress MITM proxy support
platform updates
- Cloud Hypervisor v51.1 support
- image-label kernel selection
- auto-pull images on instance create
- OCI cache garbage collection
- scoped API key permissions and tags
overall: faster restores, fewer lifecycle edge cases, and much better visibility into what hypeman is doing in production.
Changelog
- acc8ac4 Use UFFD only for initial snapshot fork restores (#270)
- 2211346 Improve Firecracker fork concurrency (#263)
- 6458cf3 Add UFFD snapshot pager (#262)
- 43d1210 Remove mailbox for now (#268)
- 6da67d7 Add mailbox resume network handoff (#260)
- fcb0faf Parallelize fork network setup (#266)
- 51ccad4 Add restore network telemetry (#265)
- 83d97f8 Optimize restore network setup (#264)
- 97416d8 Instrument guest exec steps (#246)
- 34e1032 Count shared snapshot extents separately (#244)
- 44a6da4 Fix warm fork guest MAC reconfiguration (#245)
- aa65a64 Speed up guest-agent exec readiness retries (#242)
- fa9e5c3 Avoid serial console readiness dependency for systemd guests (#243)
- 9672690 Bump Cloud Hypervisor default to v51.1 (#241)
- 2b58e51 Preserve snapshot fork restore paths (#239)
- 58b9a9f Decouple bandwidth reservations from oversubscription (#238)
- 4acbfdc Add instance restart policy (#233)
- 9db1f75 Add instance health checks (#234)
- 8eeeeff Revert "Introduce "template" as a VM state (#229)" (#231)
- c2d7bbd Add AWS deployment assets (#230)
- a3274ed Add cloud-hypervisor v51.1 with backwards-compatible version flag (CVE-2026-27211) (#200)
- 2e62fdb Introduce "template" as a VM state (#229)
- 6ebfa03 forkvm: clone fork files via FICLONE reflink with sparse-copy fallback (#212)
- 23e332a Track per-phase duration on each instance (#223)
- 0c9574c Cache hypervisor state and bound /vm.info calls in list path (#225)
- 23578ce Return 404 on restore when instance not found (#224)
- 87e791a Bump image manifest resolve timeout to 5s (#226)
- 8524169 network: periodic TAP reaper and stop/create release fallbacks (#222)
- a1b7f3b cloudhypervisor: route serial through a hypeman-owned unix socket (#210)
- d32a762 qemu: open serial log with O_APPEND via chardev (#209)
- 16710cd Add mark-and-sweep GC for shared OCI cache (#199)
- b494c87 Add tracer spans inside list path so slow ps calls are visible (#208)
- 1a0284b Stabilize Hypeman network lifecycle tests (#206)
- 1ca5e52 Speed up instance name resolution (#203)
- e23740e Make lifecycle no-op transitions idempotent (#205)
- 62ab3c8 Fix snapshot disk utilization classification for Firecracker (#198)
- 968c7aa Add standby compression start delay (#184)
- c025ab2 Add heartbeats to StreamBuildEvents wait-for-log-file loop (#176)
- 623d118 Add failure diagnostics for cloud-hypervisor startup (#195)
- 2c5790d Fix qemu startup cleanup (#197)
- 0c34825 Retry instance directory deletion on ENOTEMPTY (#191)
- 4dc8607 Forward CI env into Linux sudo test runs (#190)
- 9f6b171 Auto-standby (#183)
- 76a8772 Add burst-proof admission control and fast resource accounting (#187)
- ce389be Consolidate instance lifecycle subscriptions (#189)
- 36a62ee Remove unused local Grafana dashboard infrastructure (#188)
- ae94713 feat: select guest kernel from image label (#181)
- 3258e81 fix: saveClassID error and clear stale classid files (#180)
- ea5e61e Fix tc class collision with retry and class ID persistence (#179)
- abe56f0 Update default kernel for in-VM Docker networking (#177)
- ddd8e85 Handle recovered image unpack panics (#175)
- a05ff49 Allow regular user JWTs on registry endpoints. (#174)
- cc53c42 Use OIDC for Stainless npm publishing (#173)
- 3381417 Include Stainless config in merged PR sync (#172)
- bc52a28 Fix Stainless TypeScript production repo target
- 8321f96 Optional automatic image cleanup (#171)
- 4748a40 Add waitForState endpoint for blocking state transitions (#167)
- ba1ec42 Add actual disk utilization metric by component (#170)
- 568ae32 Add shared duration histogram buckets (#169)
- 66259ff Add running latency metric and compression labels (#168)
- 5a92174 Add oldest instance age metric by state (#165)
- 0414092 Reduce tracing volume for read-heavy paths (#164)
- 4a24278 Add lifecycle and hypervisor tracing spans (#163)
- dce3318 Add resource capacity monitoring metrics (#162)
- e40c5c6 Add scheduled instance snapshots with retention cleanup (#139)
- 23ebbed fix: image surfaces and dry-run reclaim semantics (#161)
- e43d9a2 Add optional snapshot compression defaults and standby integration (#149)
- 75c3289 feat: add active ballooning reclaim controller (#160)
- 4215cf1 feat: support updating egress proxy secret envs for key rotation (#158)
- f985341 Optional VM egress MITM proxy with mock-secret header rewriting (#134)
- 0cee62d Add scoped permissions for API keys (#148)
- 4f29634 Auto-pull images on instance creation (#147)
- 6d85d59 perf: speed up firecracker standby with diff snapshot reuse (#146)
- c95fad2 feat: default-disabled guest memory reclaim (#129)
- 3ee0c14 Add Initializing state and optimize speed to init (#136)
- 2e16427 Enable hypeman to run inside of hypeman (#141)
- 27492b9 Add always-on /metrics endpoint with dual pull/push telemetry (#138)
- 22703a2 Rename tag fields from metadata to tags (#140)
- 2b1ed88 Tags (#127)
- 5ba2d25 Snapshot (#125)
- 95f54e2 Enforce sparse-only guest directory copy (#123)