- Add sixth capability word (bits6), STOCK_V6, FEATURE6_* in bare-os-protocol; seed caps, channel.js, seed-rpc-methods registry, replication/handshake fields - Booter: Wave 6 /proc JSON surfaces, ctx 1.15.0, Pear/DHT hooks, subprocess snapshot v3, audit v3, extension registry v3 edges, hrpc stub, worker/sandbox - Kernel: boot.policy v6 enforcement (requireFeatureBits6, booter semver, ctx min, extension deny/hash pins, offline LKG strict); example policy + seeder kernel sync - Schemas: boot.policy v6, OTel JSONL v3 + example; validate-example-schemas pairs - CI: verify-kernel-roadmap-wave6 (100 rows), verify-pear-no-static-node-import, extend wave3/compat-matrix/ctx verifiers; pretest wiring - Docs: ADR 001 v6, kernel-capabilities-index Word 6, kernel-extensions, feature-roadmap Wave 6 table, compatibility matrix, handbook ch.11, developer-guide (privacy, bare-boot alignment, bare-fetch), http-curl, scripts/README, DOCUMENTATION - Tests: booter /proc readdir expectations for new bare_os_* nodes
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.
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
| Variable | Meaning |
|---|---|
BARE_OS_KERNEL_ROOT |
Absolute path to kernel tree to stage (default: package kernel/ vendored copy, or repo kernel/ under Node file: 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 RPC bare_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
| Path | Role |
|---|---|
index.js |
Entry: Corestore, Hyperdrive, stageKernelTree, swarm, setupSeedChannel (RPCs include optional bare_os.snapshot_hints and bare_os.peer_firewall_stats when implemented) |
lib/paths.js |
packageRootDir, kernel root, Corestore path (Pear RTI–aware) |
kernel/ |
Vendored mirror of repo kernel/ for Pear staging — must match kernel/ byte-for-byte (npm test pretest runs scripts/verify-kernel-seeder-parity.mjs) |
Dependencies
bare-os-protocol (workspace), hyperdrive, corestore, hyperswarm, protomux, b4a, compact-encoding, safety-catch, bare-os.