Files
bare-operating-system/packages/bare-os-booter/test.bare-smoke.js
T
Raven Scott e89c55da25 chore(booter): complete P2P/POSIX roadmap — ctx 1.48, VFS, shell, docs
- Bump bareOsCtxApiVersion to 1.48.0; sync CHANGELOG, compatibility matrix,
  syscalls.example.json, ctx d.ts, generated ctx-client helper
- POSIX: getconf _SC_NPROCESSORS_ONLN; shell set -o pipefail + BARE_OS_PIPESTATUS;
  posix_utilities schema v2 + JSON Schema; generated dashboard refresh
- Host/subprocess: bare-subprocess then Node child_process spawn; optional
  backend on ctx.bareOsTrySpawnHostSubprocess; bin-worker WASM wall budget
- VFS: BARE_OS_VFS_SYSTEM_IMAGE_WRITE for system image writes + warm-cache
  eviction path; guest /.bare/account EACCES test; environ TOKEN redaction test
- Docs: corestore snapshot non-goal in package-bare-os-booter; PEAR-RUN links
  → docs/PEAR-RUN.md; POSIX pretest matrix in scripts/README + dev guide;
  environment appendix (PIPESTATUS, WASM_MS, system image write)
- Seeder: keep kernel/ mirror in sync after bundle + coreutils builds

Verified: npm test -w bare-os-booter, npm run pretest
2026-04-05 12:52:06 -04:00

94 lines
3.0 KiB
JavaScript

/**
* Minimal **`brittle-bare`** suite (no Node **`brittle-node`** / Hyperdrive session).
* Run: **`npm run test:bare -w bare-os-booter`** (concatenates **`test.identity.js`**).
*/
import test from 'brittle'
import { createBareOsDiskOsBridge } from './lib/bare-os-disk-os-bridge.js'
import { BARE_OS_CTX_API_VERSION } from './lib/bare-os-ctx-api.js'
test('disk.os replication_operator_intent EPERM when cap RPC off', async (t) => {
const bridge = createBareOsDiskOsBridge({
drive: null,
bareOsIpc: { list: () => [] },
ctxApiVersion: BARE_OS_CTX_API_VERSION,
systemRevision: null,
bootStartedMs: Date.now()
})
const prev = process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
if (prev !== undefined) delete process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
try {
const raw = await bridge.execRpc(
'bare_os',
'replication_operator_intent',
['{}']
)
const j = JSON.parse(raw)
t.is(j.schema, 2)
t.is(j.ok, false)
t.is(j.code, 'EPERM')
} finally {
if (prev !== undefined) process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC = prev
}
})
test('disk.os replication_operator_intent ok when cap RPC on', async (t) => {
const audit = []
const bridge = createBareOsDiskOsBridge({
drive: null,
bareOsIpc: { list: () => [] },
ctxApiVersion: BARE_OS_CTX_API_VERSION,
systemRevision: null,
bootStartedMs: Date.now(),
auditBatch: (rows) => {
audit.push(...rows)
return rows.length
}
})
const prev = process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC = '1'
try {
const raw = await bridge.execRpc(
'bare_os',
'replication_operator_intent',
[JSON.stringify({ action: 'pause_hint' })]
)
const j = JSON.parse(raw)
t.is(j.schema, 2)
t.is(j.ok, true)
t.is(j.normalizedIntent?.action, 'pause_hint')
t.is(audit.length, 1)
t.is(audit[0].kind, 'disk_os.replication_operator_intent')
t.is(audit[0].intent?.action, 'pause_hint')
} finally {
if (prev === undefined) delete process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
else process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC = prev
}
})
test('disk.os replication_operator_intent EINVAL for unknown action', async (t) => {
const bridge = createBareOsDiskOsBridge({
drive: null,
bareOsIpc: { list: () => [] },
ctxApiVersion: BARE_OS_CTX_API_VERSION,
systemRevision: null,
bootStartedMs: Date.now()
})
const prev = process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC = '1'
try {
const raw = await bridge.execRpc(
'bare_os',
'replication_operator_intent',
[JSON.stringify({ action: 'nope' })]
)
const j = JSON.parse(raw)
t.is(j.schema, 2)
t.is(j.ok, false)
t.is(j.code, 'EINVAL')
t.ok(Array.isArray(j.allowedActions))
} finally {
if (prev === undefined) delete process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC
else process.env.BARE_OS_DISK_OS_OPERATOR_INTENT_RPC = prev
}
})