Expand bounded awk/expr/test toward Issue 7; refresh man, profile 1.0.18,

posix matrix/dashboard, and syscalls/process_table schema alignment (v8).

Booter: replication_operator_sketch/corestore hints, HRPC allowlist tests,
Protomux cap channel 65536-byte bound + export, Wasm posix_profile_peek,
swarm-disk and security_posture docs.

Coreutils/kernel: pkg-swarm-index pathCapabilityEnvelopeVerify on get;
pathcap-verify --trusted failure hint; rebuild bins and sync seeder.

Docs: KERNEL_CONTRACT, kernel-extensions, capabilities index, environment
appendix (warm-cache tuning, cap channel, Wasm env), handbook observability,
vault threat model (multisig), developer-guide ctx/HRPC/Wasm, DOCUMENTATION
release-checklist note, release-checklist optional tier1 drift.

Changelog maintenance in bare-os-booter and bare-os-protocol.
This commit is contained in:
Raven Scott
2026-04-05 23:01:54 -04:00
parent 8f61d0bea8
commit 071edccfb3
73 changed files with 1730 additions and 832 deletions
+15 -1
View File
@@ -2,7 +2,7 @@
[Reference index →](README.md)
This document maps the **guest-visible** syscall-shaped surface to POSIX.1-2017 XSH-style names and to Bare OS implementation paths. The **machine-readable** source of truth is built at runtime into **`/proc/bare_os/syscalls.json`** (schema **10**) via [`buildBareOsSyscallsProcJson`](../../packages/bare-os-booter/lib/bare-os-syscalls-proc-json.js). Stock **`ctx.bareOsSyscall('posix_fadvise', { path, offset?, len?, advice? })`** is a **simulated** no-op for portable Issue 7-style hints on Hyperdrive-backed paths.
This document maps the **guest-visible** syscall-shaped surface to POSIX.1-2017 XSH-style names and to Bare OS implementation paths. The **machine-readable** source of truth is built at runtime into **`/proc/bare_os/syscalls.json`** (schema **11**) via [`buildBareOsSyscallsProcJson`](../../packages/bare-os-booter/lib/bare-os-syscalls-proc-json.js). Stock **`ctx.bareOsSyscall('posix_fadvise', { path, offset?, len?, advice? })`** is a **simulated** no-op for portable Issue 7-style hints on Hyperdrive-backed paths.
## Source modules
@@ -30,6 +30,20 @@ These names appear in **`BARE_OS_STOCK_SYSCALL_OPS`** and are invoked as **`ctx.
**`BARE_OS_POSIX_XSH_OPS_DETAIL`** lists Issue 7style names (**`open`**, **`close`**, **`read`**, **`write`**, **`pipe`**, **`dup`**, **`dup2`**, **`fcntl`**, **`poll`**, **`select`**, **`lseek`**, **`nanosleep`**, **`clock_gettime`**, **`umask`**, socket family aliases, etc.) with **`posixAlignment`**: **`simulated`**, **`partial`**, or **`ENOTSUP`**. They are **not** all separate **`ctx.bareOsSyscall`** op strings; they document how guest utilities and Wasm shims should reason about behavior. **Wasm:** only the small **sync** import set under **`BARE_OS_WASM_KERNEL_SYSCALL`** is wired into linear memory; use JS **`ctx.bareOsSyscall`** for **`clock_gettime`** and other async-shaped ops. The CSV of names is exposed as **`posixXsh.namesCsv`** in proc JSON.
## Structured errno payloads (`partial` / `ENOTSUP`)
When the socket FD bridge or **`sendmsg`** / **`recvmsg`** paths reject input, stock **`ctx.bareOsSyscall`** throws or returns **`Error`** objects carrying stable machine fields (see [`packages/bare-os-booter/index.js`](../../packages/bare-os-booter/index.js)):
| Field | Role |
| --- | --- |
| **`code`** | Short token (**`ENOTSUP`**, **`EINVAL`**, **`EBADF`**, **`EAGAIN`**, **`ETIMEDOUT`**, …) aligned with POSIX errno names where applicable |
| **`errnoHint`** | Same as **`code`** for proc JSON symmetry |
| **`posixAlignment`** | **`ENOTSUP`**, **`partial`**, or **`simulated`** — mirrors **`opsDetail.posixAlignment`** |
| **`note`** | Human-readable reason (iov cap, ancillary unsupported, SCM_RIGHTS dup failure, unknown FD, …) |
| **`op`** | Syscall-shaped op name (**`sendmsg`**, **`recvmsg`**, **`connect`**, …) for log correlation |
**`recvmsg`** on the bridge reports **`controllen: 0`** when ancillary data is not surfaced; non-empty host-style cmsg requests without **`BARE_OS_POSIX_SOCKET_SCM_RIGHTS`** yield **`ENOTSUP`** with **`note`** explaining the gate. **`socketMsgSurface`** in proc JSON (schema **5**) documents **`sendmsg`** / **`recvmsg`** caps and rejection shapes.
## Intentionally absent or non-kernel
- **Real host `fork`, host PID namespaces, real kernel `waitpid`** — The process table is synthetic; see **`/proc/bare_os/process_table.json`**.