Repository navigation
v0.12.0
Storage batching, memory pressure awareness, and end-to-end storage error propagation
Summary
v0.12.0 closes all remaining items from the v1.0 readiness assessment. Storage writes can now be pipelined with bounded concurrency, scripts can query memory usage across Node, browser, and cgroup sources, and storage backend failures propagate end-to-end through the first bidirectional IPC frame.
Highlights
- Storage batching —
createStorageBatcher(storage, { concurrency })wrapsctx.storage.put()with bounded-concurrency pipelining (default 16), fail-fast semantics, andflush()drain (#196) - Memory pressure API —
ctx.memory.snapshot()returns heap, browser, and cgroup usage with a composite pressure level;ctx.memory.isAbove(level)provides boolean threshold checks; cgroup v2/v1 auto-detection (#196) - End-to-end storage error propagation —
file_write_ackis the first bidirectional IPC frame; backend write failures now reject thestorage.put()promise as recoverable errors instead of being silently swallowed (#197) - Lode upgrade — Lode storage library upgraded from v0.7.3 to v0.8.0
Known Limitations
file_write_ackrequires runtime ≥ 0.12.0 — older runtimes trigger a fire-and-forget fallback wherestorage.put()resolves without confirmation- Cgroup v1 environments reporting memory limit ≥ 2^62 are treated as unlimited (
cgroup: null) ctx.memory.snapshot({ browser: true })returnsbrowser: nullwhen no Puppeteer page is available
Full Changelog: v0.11.0...v0.12.0