feat(kernel): Wave 6 mega-phase — bits6, protocol, booter, docs, CI
- 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
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# ADR 001: Kernel feature bit governance (v5)
|
||||
# ADR 001: Kernel feature bit governance (v6)
|
||||
|
||||
## Status
|
||||
|
||||
@@ -29,7 +29,11 @@ Bare OS advertises optional booter and seed-channel capabilities as a versioned
|
||||
|
||||
8. **Fifth capability word (`bits5`, wave 5)** — **`BARE_OS_KERNEL_FEATURES_STOCK_V5`** and **`BARE_OS_FEATURE5_*`** cover host OS proc snapshot, subprocess bridge snapshot v2, transport stats in net summary, boot policy v5, replication sync windows, union readlink parity, warm kernel profile reload, HDMS hints v2, OTel JSONL schema v2, bin-worker pattern allowlists, staging rollback hints, dev debug proc, manifest risk metadata, replication queue metrics v2 on the seeder, typed seed RPC errors, and repo doc-verification scripts. Seed JSON **`bare_os.capabilities`** and **`/proc/bare_os_features`** include **`bits5`**. **`BARE_OS_SEED_CAP_STRICT`** requires **`bits5`** to cover the stock fifth word when enabled.
|
||||
|
||||
9. **Sixth capability word (`bits6`, wave 6)** — **`BARE_OS_KERNEL_FEATURES_STOCK_V6`** and **`BARE_OS_FEATURE6_*`** group the mega-phase surfaces: extended seed RPCs (replication plan, DHT bootstrap hints, compact ping, …), advisory replication JSON v2 fields, Wave 6 **`/proc/bare_os/*.json`** operator metrics, boot policy v6 (**`requireFeatureBits6`**, **`requireBooterSemver`**, **`requireCtxApiMin`**, extension deny/hash pins, offline LKG strict integrity), kernel extension registry schema v3 with dependency edges, Pear/Bare bridge **`ctx`** hooks, strict **`/proc/bare_os`** alias completeness (**`FEATURE6_STRICT_PROC_ALIAS`** + **`BARE_OS_PROC_ALIAS_STRICT`**), VFS/POSIX/initd/timer extensions, worker/sandbox/net-policy wave, telemetry NDJSON v5 / OTel schema v3 / audit v3, and CI (**`verify-kernel-roadmap-wave6.mjs`**, Pear static **`node:`** import scan). Seed JSON and **`/proc/bare_os_features`** include **`bits6`**. **`BARE_OS_SEED_CAP_STRICT`** may require **`bits6`** when the stock sixth word is non-zero.
|
||||
|
||||
**Deprecation (unused bits):** once a bit is published in this ADR and **`kernel-capabilities-index.md`**, its numeric position is **stable**; if a feature is removed from the stock booter, the bit stays reserved (document as “unused / reserved”) until a major governance revision. **`BARE_OS_KERNEL_FEATURE_BITS_DOC`** bumps when semantics or this policy changes.
|
||||
|
||||
## Consequences
|
||||
|
||||
- Seeder RPC `bare_os.capabilities` must return `protocolPackageVersion` and `featureBitsDoc` alongside `bits`, `bits2`, `bits3`, **`bits4`**, and **`bits5`** (omit zero words if desired, but the stock seeder sends all five today).
|
||||
- CI should keep seeder and booter copies of the stock masks aligned (`BARE_OS_KERNEL_FEATURES_STOCK_V1`, **`STOCK_V2`**, **`STOCK_V3`**, **`STOCK_V4`**, **`STOCK_V5`**).
|
||||
- Seeder RPC `bare_os.capabilities` must return `protocolPackageVersion`, optional **`booterPackageVersion`**, and `featureBitsDoc` alongside `bits`, `bits2`, `bits3`, **`bits4`**, **`bits5`**, and **`bits6`** (omit zero words if desired; the stock seeder sends all six today).
|
||||
- CI should keep seeder and booter copies of the stock masks aligned (`BARE_OS_KERNEL_FEATURES_STOCK_V1`, **`STOCK_V2`**, **`STOCK_V3`**, **`STOCK_V4`**, **`STOCK_V5`**, **`STOCK_V6`**).
|
||||
|
||||
Reference in New Issue
Block a user