feat(booter): POSIX/P2P kernel roadmap — sockets, disk.os, VFS, docs

- Bump bareOsCtxApiVersion to 1.46.0 and POSIX profile 1.0.10; sync
  syscalls example, process table, compatibility matrix, CHANGELOGs.
- Socket FD bridge: passive SOCK_DGRAM bind/connect/send path, poll
  readiness; bareOsPosixPoll monotonic timeouts via bare-hrtime.
- disk.os: replication_operator_sketch schema 2; cap-gated
  replication_operator_intent + audit; enrich protomux proc JSON.
- VFS: route /.bare/** to personal drive; optional
  BARE_OS_PERSONAL_VAULT_INDEX_CACHE_MS readdir TTL cache.
- Boot policy: p2pAdmission (peerAllowlistHex, hyperswarmBootstrap) in
  schema + kernel init merge into ctx.env when unset.
- Coreutils/booter getconf: expand _SC_* coverage; shell wait -n under
  BARE_OS_SHELL_POSIX_MODE; seeder multisig verify → security_posture.
- Tests: vfs /.bare routing; test.bare-smoke + test:bare; bench schema 2.
- Docs: syscall-socket-contract, handbook/env/kernel-extensions,
  holepunch drift pretest note, vault threat model multisig section.
- Drop hyperbee from bare-os-booter package.json dependencies (if that
  change is part of this commit).
This commit is contained in:
Raven Scott
2026-04-05 01:46:17 -04:00
parent 15209b4837
commit ebee9576c8
62 changed files with 1235 additions and 547 deletions
+4 -1
View File
@@ -54,7 +54,10 @@ The authoritative list is in the [environment appendix](../../../docs/reference/
1. Edit **`packages/bare-os-booter/lib/bare-module-manifest.json`** or bundle sources under **`packages/bare-os-bare-libs/`** as needed.
2. Run **`npm run build -w bare-os-bare-libs`** — output lands in **`kernel/lib/bare/`** (and CI expects **`packages/bare-os-seeder/kernel/`** to match **`kernel/`** byte-for-byte afterward).
3. Re-run the seeder so peers replicate the updated system drive.
3. Mirror **`kernel/`** into **`packages/bare-os-seeder/kernel/`** (same tree) so **`scripts/verify-kernel-seeder-parity.mjs`** passes — typically `rsync -a --delete kernel/ packages/bare-os-seeder/kernel/` from the repo root after init/bundle changes.
4. Re-run the seeder so peers replicate the updated system drive.
**Order with coreutils:** from repo root, prefer **`npm run build -w bare-os-coreutils && npm run build -w bare-os-bare-libs && npm run bundle:kernel`** before parity check (matches root **`pretest`**).
---
+3 -11
View File
@@ -7,9 +7,7 @@
"export": "default",
"bundle": true,
"optional": false,
"nativeHint": false,
"tier": "core",
"risk": "low"
"nativeHint": false
},
{
"ctxKey": "compactEncoding",
@@ -17,9 +15,7 @@
"export": "default",
"bundle": true,
"optional": false,
"nativeHint": false,
"tier": "core",
"risk": "low"
"nativeHint": false
},
{
"ctxKey": "safetyCatch",
@@ -27,9 +23,7 @@
"export": "default",
"bundle": true,
"optional": false,
"nativeHint": false,
"tier": "core",
"risk": "low"
"nativeHint": false
},
{
"ctxKey": "hypercoreIdEncoding",
@@ -322,7 +316,6 @@
"bundle": false,
"optional": true,
"nativeHint": true,
"tier": "extended",
"skipReason": "Optional Holepunch bare-*; may be native, platform-specific, or Bare-only"
},
{
@@ -377,7 +370,6 @@
"bundle": false,
"optional": true,
"nativeHint": true,
"tier": "extended",
"skipReason": "Optional Holepunch bare-*; may be native, platform-specific, or Bare-only"
},
{
+210 -210
View File
@@ -1,6 +1,12 @@
{
"version": 1,
"bundles": [
{
"path": "/lib/bare/bundles/compactEncoding.js",
"keys": [
"compactEncoding"
]
},
{
"path": "/lib/bare/bundles/hypercoreIdEncoding.js",
"keys": [
@@ -20,9 +26,9 @@
]
},
{
"path": "/lib/bare/bundles/compactEncoding.js",
"path": "/lib/bare/bundles/bareUrl.js",
"keys": [
"compactEncoding"
"bareUrl"
]
},
{
@@ -31,12 +37,6 @@
"protomux"
]
},
{
"path": "/lib/bare/bundles/bareUrl.js",
"keys": [
"bareUrl"
]
},
{
"path": "/lib/bare/bundles/barePath.js",
"keys": [
@@ -97,12 +97,6 @@
"bareAsyncHooks"
]
},
{
"path": "/lib/bare/bundles/bareAtomics.js",
"keys": [
"bareAtomics"
]
},
{
"path": "/lib/bare/bundles/bareAssert.js",
"keys": [
@@ -110,9 +104,9 @@
]
},
{
"path": "/lib/bare/bundles/bareApk.js",
"path": "/lib/bare/bundles/bareAtomics.js",
"keys": [
"bareApk"
"bareAtomics"
]
},
{
@@ -121,6 +115,12 @@
"bareAppKit"
]
},
{
"path": "/lib/bare/bundles/bareApk.js",
"keys": [
"bareApk"
]
},
{
"path": "/lib/bare/bundles/fetch.js",
"keys": [
@@ -139,6 +139,12 @@
"bareBundleCompile"
]
},
{
"path": "/lib/bare/bundles/bareBundle.js",
"keys": [
"bareBundle"
]
},
{
"path": "/lib/bare/bundles/bareBuffer.js",
"keys": [
@@ -151,48 +157,42 @@
"bareBluetoothApple"
]
},
{
"path": "/lib/bare/bundles/bareBundle.js",
"keys": [
"bareBundle"
]
},
{
"path": "/lib/bare/bundles/bareBundleEvaluate.js",
"keys": [
"bareBundleEvaluate"
]
},
{
"path": "/lib/bare/bundles/bareConsole.js",
"keys": [
"bareConsole"
]
},
{
"path": "/lib/bare/bundles/bareBoot.js",
"keys": [
"bareBoot"
]
},
{
"path": "/lib/bare/bundles/bareConsole.js",
"keys": [
"bareConsole"
]
},
{
"path": "/lib/bare/bundles/bareBundleId.js",
"keys": [
"bareBundleId"
]
},
{
"path": "/lib/bare/bundles/bareChannel.js",
"keys": [
"bareChannel"
]
},
{
"path": "/lib/bare/bundles/bareDebugLog.js",
"keys": [
"bareDebugLog"
]
},
{
"path": "/lib/bare/bundles/bareChannel.js",
"keys": [
"bareChannel"
]
},
{
"path": "/lib/bare/bundles/bareDelta.js",
"keys": [
@@ -205,12 +205,6 @@
"bareDaemon"
]
},
{
"path": "/lib/bare/bundles/bareDiagnosticsChannel.js",
"keys": [
"bareDiagnosticsChannel"
]
},
{
"path": "/lib/bare/bundles/bareDns.js",
"keys": [
@@ -218,9 +212,9 @@
]
},
{
"path": "/lib/bare/bundles/bareCov.js",
"path": "/lib/bare/bundles/bareDiagnosticsChannel.js",
"keys": [
"bareCov"
"bareDiagnosticsChannel"
]
},
{
@@ -229,24 +223,12 @@
"bareEnv"
]
},
{
"path": "/lib/bare/bundles/bareDgram.js",
"keys": [
"bareDgram"
]
},
{
"path": "/lib/bare/bundles/bareExif.js",
"keys": [
"bareExif"
]
},
{
"path": "/lib/bare/bundles/bareFfmpeg.js",
"keys": [
"bareFfmpeg"
]
},
{
"path": "/lib/bare/bundles/bareFfmpegEncodings.js",
"keys": [
@@ -254,21 +236,21 @@
]
},
{
"path": "/lib/bare/bundles/bareFormat.js",
"path": "/lib/bare/bundles/bareDgram.js",
"keys": [
"bareFormat"
"bareDgram"
]
},
{
"path": "/lib/bare/bundles/bareFileLogger.js",
"path": "/lib/bare/bundles/bareFfmpeg.js",
"keys": [
"bareFileLogger"
"bareFfmpeg"
]
},
{
"path": "/lib/bare/bundles/bareFormData.js",
"path": "/lib/bare/bundles/bareCov.js",
"keys": [
"bareFormData"
"bareCov"
]
},
{
@@ -278,9 +260,21 @@
]
},
{
"path": "/lib/bare/bundles/bareHrtime.js",
"path": "/lib/bare/bundles/bareFormat.js",
"keys": [
"bareHrtime"
"bareFormat"
]
},
{
"path": "/lib/bare/bundles/bareFormData.js",
"keys": [
"bareFormData"
]
},
{
"path": "/lib/bare/bundles/bareFileLogger.js",
"keys": [
"bareFileLogger"
]
},
{
@@ -290,9 +284,9 @@
]
},
{
"path": "/lib/bare/bundles/bareFs.js",
"path": "/lib/bare/bundles/bareHrtime.js",
"keys": [
"bareFs"
"bareHrtime"
]
},
{
@@ -302,9 +296,9 @@
]
},
{
"path": "/lib/bare/bundles/bareHttpParser.js",
"path": "/lib/bare/bundles/bareFs.js",
"keys": [
"bareHttpParser"
"bareFs"
]
},
{
@@ -313,6 +307,12 @@
"bareIco"
]
},
{
"path": "/lib/bare/bundles/bareHttpParser.js",
"keys": [
"bareHttpParser"
]
},
{
"path": "/lib/bare/bundles/bareImageResample.js",
"keys": [
@@ -331,18 +331,18 @@
"bareHttp1"
]
},
{
"path": "/lib/bare/bundles/bareJpeg.js",
"keys": [
"bareJpeg"
]
},
{
"path": "/lib/bare/bundles/bareHttps.js",
"keys": [
"bareHttps"
]
},
{
"path": "/lib/bare/bundles/bareJpeg.js",
"keys": [
"bareJpeg"
]
},
{
"path": "/lib/bare/bundles/bareIntl.js",
"keys": [
@@ -350,15 +350,15 @@
]
},
{
"path": "/lib/bare/bundles/bareIpc.js",
"path": "/lib/bare/bundles/bareLief.js",
"keys": [
"bareIpc"
"bareLief"
]
},
{
"path": "/lib/bare/bundles/bareLogger.js",
"path": "/lib/bare/bundles/bareIpc.js",
"keys": [
"bareLogger"
"bareIpc"
]
},
{
@@ -367,48 +367,48 @@
"bareInspector"
]
},
{
"path": "/lib/bare/bundles/bareLief.js",
"keys": [
"bareLief"
]
},
{
"path": "/lib/bare/bundles/bareLink.js",
"keys": [
"bareLink"
]
},
{
"path": "/lib/bare/bundles/bareLogger.js",
"keys": [
"bareLogger"
]
},
{
"path": "/lib/bare/bundles/bareMake.js",
"keys": [
"bareMake"
]
},
{
"path": "/lib/bare/bundles/bareModuleResolve.js",
"keys": [
"bareModuleResolve"
]
},
{
"path": "/lib/bare/bundles/bareModuleTraverse.js",
"keys": [
"bareModuleTraverse"
]
},
{
"path": "/lib/bare/bundles/bareModule.js",
"keys": [
"bareModule"
]
},
{
"path": "/lib/bare/bundles/bareModuleResolve.js",
"keys": [
"bareModuleResolve"
]
},
{
"path": "/lib/bare/bundles/bareModuleLexer.js",
"keys": [
"bareModuleLexer"
]
},
{
"path": "/lib/bare/bundles/bareModuleTraverse.js",
"keys": [
"bareModuleTraverse"
]
},
{
"path": "/lib/bare/bundles/bareNdk.js",
"keys": [
@@ -433,6 +433,12 @@
"bareOpen"
]
},
{
"path": "/lib/bare/bundles/bareMedia.js",
"keys": [
"bareMedia"
]
},
{
"path": "/lib/bare/bundles/bareNet.js",
"keys": [
@@ -445,12 +451,6 @@
"bareOs"
]
},
{
"path": "/lib/bare/bundles/bareMedia.js",
"keys": [
"bareMedia"
]
},
{
"path": "/lib/bare/bundles/barePack.js",
"keys": [
@@ -464,9 +464,9 @@
]
},
{
"path": "/lib/bare/bundles/bareNodeRuntime.js",
"path": "/lib/bare/bundles/barePackDrive.js",
"keys": [
"bareNodeRuntime"
"barePackDrive"
]
},
{
@@ -475,12 +475,6 @@
"barePng"
]
},
{
"path": "/lib/bare/bundles/barePackDrive.js",
"keys": [
"barePackDrive"
]
},
{
"path": "/lib/bare/bundles/barePipe.js",
"keys": [
@@ -493,24 +487,30 @@
"barePunycode"
]
},
{
"path": "/lib/bare/bundles/bareNodeRuntime.js",
"keys": [
"bareNodeRuntime"
]
},
{
"path": "/lib/bare/bundles/bareQuerystring.js",
"keys": [
"bareQuerystring"
]
},
{
"path": "/lib/bare/bundles/barePrebuild.js",
"keys": [
"barePrebuild"
]
},
{
"path": "/lib/bare/bundles/bareQueueMicrotask.js",
"keys": [
"bareQueueMicrotask"
]
},
{
"path": "/lib/bare/bundles/barePrebuild.js",
"keys": [
"barePrebuild"
]
},
{
"path": "/lib/bare/bundles/bareRealm.js",
"keys": [
@@ -523,12 +523,6 @@
"bareProcess"
]
},
{
"path": "/lib/bare/bundles/barePromClient.js",
"keys": [
"barePromClient"
]
},
{
"path": "/lib/bare/bundles/bareRuntime.js",
"keys": [
@@ -536,21 +530,9 @@
]
},
{
"path": "/lib/bare/bundles/bareRpc.js",
"path": "/lib/bare/bundles/barePromClient.js",
"keys": [
"bareRpc"
]
},
{
"path": "/lib/bare/bundles/bareRepl.js",
"keys": [
"bareRepl"
]
},
{
"path": "/lib/bare/bundles/bareSemver.js",
"keys": [
"bareSemver"
"barePromClient"
]
},
{
@@ -560,15 +542,15 @@
]
},
{
"path": "/lib/bare/bundles/bareSidecar.js",
"path": "/lib/bare/bundles/bareRpc.js",
"keys": [
"bareSidecar"
"bareRpc"
]
},
{
"path": "/lib/bare/bundles/bareSignals.js",
"path": "/lib/bare/bundles/bareSemver.js",
"keys": [
"bareSignals"
"bareSemver"
]
},
{
@@ -577,12 +559,30 @@
"bareSdl"
]
},
{
"path": "/lib/bare/bundles/bareRepl.js",
"keys": [
"bareRepl"
]
},
{
"path": "/lib/bare/bundles/bareRun.js",
"keys": [
"bareRun"
]
},
{
"path": "/lib/bare/bundles/bareSignals.js",
"keys": [
"bareSignals"
]
},
{
"path": "/lib/bare/bundles/bareSidecar.js",
"keys": [
"bareSidecar"
]
},
{
"path": "/lib/bare/bundles/bareStringDecoder.js",
"keys": [
@@ -596,9 +596,9 @@
]
},
{
"path": "/lib/bare/bundles/bareSvg.js",
"path": "/lib/bare/bundles/bareStorage.js",
"keys": [
"bareSvg"
"bareStorage"
]
},
{
@@ -608,9 +608,33 @@
]
},
{
"path": "/lib/bare/bundles/bareStorage.js",
"path": "/lib/bare/bundles/bareSvg.js",
"keys": [
"bareStorage"
"bareSvg"
]
},
{
"path": "/lib/bare/bundles/bareTap.js",
"keys": [
"bareTap"
]
},
{
"path": "/lib/bare/bundles/bareSubprocess.js",
"keys": [
"bareSubprocess"
]
},
{
"path": "/lib/bare/bundles/bareSystemLogger.js",
"keys": [
"bareSystemLogger"
]
},
{
"path": "/lib/bare/bundles/bareThread.js",
"keys": [
"bareThread"
]
},
{
@@ -625,42 +649,12 @@
"bareTiff"
]
},
{
"path": "/lib/bare/bundles/bareSystemLogger.js",
"keys": [
"bareSystemLogger"
]
},
{
"path": "/lib/bare/bundles/bareSubprocess.js",
"keys": [
"bareSubprocess"
]
},
{
"path": "/lib/bare/bundles/bareTap.js",
"keys": [
"bareTap"
]
},
{
"path": "/lib/bare/bundles/bareTcp.js",
"keys": [
"bareTcp"
]
},
{
"path": "/lib/bare/bundles/bareThread.js",
"keys": [
"bareThread"
]
},
{
"path": "/lib/bare/bundles/bareTpl.js",
"keys": [
"bareTpl"
]
},
{
"path": "/lib/bare/bundles/bareTimers.js",
"keys": [
@@ -668,15 +662,15 @@
]
},
{
"path": "/lib/bare/bundles/bareType.js",
"path": "/lib/bare/bundles/bareTpl.js",
"keys": [
"bareType"
"bareTpl"
]
},
{
"path": "/lib/bare/bundles/bareTls.js",
"path": "/lib/bare/bundles/bareType.js",
"keys": [
"bareTls"
"bareType"
]
},
{
@@ -686,15 +680,15 @@
]
},
{
"path": "/lib/bare/bundles/bareTty.js",
"path": "/lib/bare/bundles/bareTls.js",
"keys": [
"bareTty"
"bareTls"
]
},
{
"path": "/lib/bare/bundles/bareUnpack.js",
"path": "/lib/bare/bundles/bareTty.js",
"keys": [
"bareUnpack"
"bareTty"
]
},
{
@@ -704,21 +698,9 @@
]
},
{
"path": "/lib/bare/bundles/bareVm.js",
"path": "/lib/bare/bundles/bareUnpack.js",
"keys": [
"bareVm"
]
},
{
"path": "/lib/bare/bundles/bareWalkHandles.js",
"keys": [
"bareWalkHandles"
]
},
{
"path": "/lib/bare/bundles/bareWebKit.js",
"keys": [
"bareWebKit"
"bareUnpack"
]
},
{
@@ -728,21 +710,21 @@
]
},
{
"path": "/lib/bare/bundles/bareV8ToIstanbul.js",
"path": "/lib/bare/bundles/bareWalkHandles.js",
"keys": [
"bareV8ToIstanbul"
"bareWalkHandles"
]
},
{
"path": "/lib/bare/bundles/bareWebp.js",
"path": "/lib/bare/bundles/bareVm.js",
"keys": [
"bareWebp"
"bareVm"
]
},
{
"path": "/lib/bare/bundles/bareUtils.js",
"path": "/lib/bare/bundles/bareWebKit.js",
"keys": [
"bareUtils"
"bareWebKit"
]
},
{
@@ -758,9 +740,9 @@
]
},
{
"path": "/lib/bare/bundles/bareWinUi.js",
"path": "/lib/bare/bundles/bareWebp.js",
"keys": [
"bareWinUi"
"bareWebp"
]
},
{
@@ -770,9 +752,27 @@
]
},
{
"path": "/lib/bare/bundles/bareZlib.js",
"path": "/lib/bare/bundles/bareUtils.js",
"keys": [
"bareZlib"
"bareUtils"
]
},
{
"path": "/lib/bare/bundles/bareV8ToIstanbul.js",
"keys": [
"bareV8ToIstanbul"
]
},
{
"path": "/lib/bare/bundles/bareWorker.js",
"keys": [
"bareWorker"
]
},
{
"path": "/lib/bare/bundles/bareWinUi.js",
"keys": [
"bareWinUi"
]
},
{
@@ -782,15 +782,15 @@
]
},
{
"path": "/lib/bare/bundles/bareZmq.js",
"path": "/lib/bare/bundles/bareZlib.js",
"keys": [
"bareZmq"
"bareZlib"
]
},
{
"path": "/lib/bare/bundles/bareWorker.js",
"path": "/lib/bare/bundles/bareZmq.js",
"keys": [
"bareWorker"
"bareZmq"
]
}
],
@@ -1595,8 +1595,8 @@
],
"bundleProvenance": {
"schemaVersion": 1,
"generatedAt": "2026-04-05T05:30:46.127Z",
"gitCommit": "c64910d72ee5547302fce1717ffedd42594e4bc4",
"generatedAt": "2026-04-05T05:45:19.496Z",
"gitCommit": "15209b4837c1c23e2b6102c180d8adf609f4c381",
"nodeVersion": "v22.22.0",
"bundleTier": "all",
"normativeManifest": "packages/bare-os-booter/lib/bare-module-manifest.json",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"schema": 1,
"atMs": 1775367045352,
"atMs": 1775367918774,
"commands": [
"arch",
"awk",