Expose /proc/bare_os/metrics.prom (kernel counter OpenMetrics) and /proc/bare_os/protomux.json (alias registry snapshot). Extend VFS routing, readdir, pseudo watch, and bare_os_proc_index to schema 8; restore flat /proc entries for syscalls and process_table with sort order matching tests. Add ctx.bareOsAuditLogAppendBatch and bump BARE_OS_CTX_API_VERSION to 1.30.0 with d.ts and compatibility-matrix updates. Harden swarm peer ban backoff with jitter on the exponential window. Refresh conformance matrix, environment appendix, booter package doc, and handbook chapters for proc paths, param expansion V3, vault at rest, and baretop snapshot keys. Align baretop-snapshot with bareOsReadBareTopSnapshot.
bare-os-seeder
Pear / Bare application that owns the canonical system Hyperdrive: it walks a kernel tree on disk, writes /boot/init.js, /bin/*, /etc/* into the drive (no host temp dirs), builds a 512-byte MBR with the drive key, joins Hyperswarm on bare-os-v1, and serves MBR block reads + Protomux bare-os-v1 replication to peers.
Documentation: User manual · Handbook · Seeder reference · Protocol reference.
Run
From package directory (after npm ci at repo root):
node index.js
Or with Bare/Pear:
npm run pear:dev
From repo root (recommended — fixes workspace node_modules for Pear):
npm run os:seeder
Environment
BARE_OS_KERNEL_ROOT— Absolute path to kernel tree to stage (default: packagekernel/vendored copy, or repokernel/under Nodefile:URL)BARE_OS_HOST_DATA— Base directory for host state (default~/.bare-os)BARE_OS_SEED_STORE— Corestore directory (default~/.bare-os/corestore/seeder)BARE_OS_SEED_CAPABILITY_ATTESTATION_JSON— Optional JSON string for seed RPCbare_os.capability_attestation(operators verify on host; guest does not crypto-verify)
Pear vs Node
import.meta.urlisfile:— seeder may dynamically importbare-os-coreutils/build.mjsandbare-os-bare-libs/build.mjs, rebuilding/binandkernel/lib/barebefore staging.pear:bundle — coreutils and/lib/barebundles must be pre-built intokernel/; runnpm run build -w bare-os-coreutilsandnpm run build -w bare-os-bare-libsbeforepear run(rootnpm run os:seederdoes both).
Layout
index.js— Entry: Corestore, Hyperdrive,stageKernelTree, swarm,setupSeedChannel(RPCs include optionalbare_os.snapshot_hintsandbare_os.peer_firewall_statswhen implemented)lib/paths.js—packageRootDir, kernel root, Corestore path (Pear RTI–aware)kernel/— Vendored mirror of repokernel/for Pear staging — must matchkernel/byte-for-byte (npm testpretestrunsscripts/verify-kernel-seeder-parity.mjs)
Dependencies
bare-os-protocol (workspace), hyperdrive, corestore, hyperswarm, protomux, b4a, compact-encoding, safety-catch, bare-os.