Commit Graph
143 Commits
Author SHA1 Message Date
Raven Scott 17af3ac65f chat-v1 2026-04-21 20:05:57 -04:00
Raven Scott 064c2a9338 rename cow files to bare files 2026-04-21 19:44:12 -04:00
Raven Scott cc757e44fc Fix Bear 2026-04-21 19:36:45 -04:00
Raven Scott be6ca4a40c Add cowsay-style /bin/baresay and identical /bin/say (say maps to baresay
source via build.mjs). Ship lib/baresay-engine.js for wrapping, balloons,
and cowfile parsing; default character is bear under /share/baresay/.cow.

Register commands, man pages, rebuild man/completion/posix index, sync
kernel to seeder, bump Tier-1 command count in docs to 155, and add a
test that say and baresay bundles match.
2026-04-21 19:28:55 -04:00
Raven Scott ca77803198 Replace single-line truncation with bareTopWrapLine for scalars and
bareTopFlattenLimited (multi-line, wider budget) for object/array values.
Narrow key column slightly to give more width to values; regenerate bundles.
2026-04-21 19:13:38 -04:00
Raven Scott 1d1e5c487e Replace Enter-key process detail pretty-print with flattened/summary/fd/env
views; gate legacy JSON with BARE_TOP_PROC_DETAIL_JSON.

Render nested snapshot fields via bareTopFormatNestedBrief instead of compact
JSON snippets (features, net helpers, overview).

Retitle help/initd copy and soften catalog quotas hint; document new env in
-h and F2 setup. Regenerate kernel baretop/btop bundles.

Shallow object lines format *Bytes and *Ms with existing formatters.
2026-04-21 19:01:42 -04:00
Raven Scott ef0301f435 fix(edit,nano): bracketed paste + bounded prompts so Save-as cannot flood
Enable xterm bracketed paste (?2004h/?2004l), parse ESC[200~…201~ as a single
paste event, insert paste in the buffer with one undo step, and replace
prompt input with first-line sanitized text capped by BARE_EDIT_MAX_PROMPT.
Cap typed prompt length for terminals without bracketed paste. Extend tests and
rebuild kernel /bin edit and nano bundles.
2026-04-21 18:45:55 -04:00
Raven Scott 36492de3d9 bare-ssh2 parses SFTP handles via bufferSlice/safer-buffer — handles are often
Uint8Array views that fail Buffer.isBuffer; READ/CLOSE/FSTAT/WRITE/READDIR were
rejecting every request with SSH_FX_FAILURE. Add sftpHandleId() using DataView.

OPEN: fix inner try indentation. CHANGELOG: note handle decoding + earlier SFTP
hardening (vfs normalize, enqueueSftpReply, Protocol/SFTP DATA coerce).
2026-04-21 18:22:32 -04:00
Raven Scott ac699f308e SFTP shim: coerce vfs.readFile via normalizeVfsBytesForSftp before storing
handles; use f.buf == null instead of !f.buf so empty buffers/strings do not
force SSH_FX_FAILURE on READ. READ accepts Buffer, typed views, or string after
WRITE.

Earlier in this branch: enqueueSftpReply(reqid) + FAILURE on errors; REQUEST.READ
validation in vendor bare-ssh2; coerce typed arrays to Buffer in SFTP.data and
Protocol.channelData/channelExtData. CHANGELOG notes.
2026-04-21 18:12:56 -04:00
Raven Scott baae7b3482 VFS readFile often returns Uint8Array; SFTP DATA and CHANNEL_DATA assumed
Buffer.isBuffer or treated payloads as UTF-8, corrupting packets and risking
native aborts (bad_optional_access). Normalize ArrayBuffer views in
SFTP.prototype.data and Protocol channelData/channelExtData; align READ shim.

Also includes earlier SFTP hardening: REQUEST.READ/WRITE/FSETSTAT guards,
enqueueSftpReply(reqid) + FAILURE on handler error, CHANGELOG.
2026-04-21 18:06:22 -04:00
Raven Scott 0359129a72 - SFTP.js: validate handle/offset/len on REQUEST.READ; guard WRITE/FSETSTAT
handle access like other handlers (avoid throwing before doFatalSFTPError).
- bare-openssh-sftp: enqueueSftpReply(reqid, fn) sends SSH_FX_FAILURE on
  handler throw/reject; defensive READ path (buffer/finite offsets).
- Document regression (bad_optional_access / -fno-exceptions) in comments;
  add packages/bare-os-openssh/CHANGELOG.md Unreleased entry.
2026-04-21 18:01:34 -04:00
Raven Scott 98dd91020e feat(shell): job-aware kill, disown, jobs/set flags, fallback REPL history
- Document interactive shell vs /bin/sh in bare-os-shell man, handbook §9,
  kill(1), and shell-completion guide
- Resolve kill %n and %% to synthetic PIDs via shellBackgroundJobs
- Add disown builtin; jobs -p (pgid-only) and -l (pid column); set -o/+o to
  print errexit/nounset/pipefail/noglob
- Expand completion-engine fallback flags for common utilities
- Persist lines to /.bare/repl_history_<USER> when BARE_OS_REPL_HISTORY=1
  and Fish REPL is off (repl-session + cli-readline)
- Tests: kill job specs, set -o output, jobs -p
2026-04-21 17:26:41 -04:00
Raven Scott c8c877f688 Holesail Service Daemon + Bin Client 2026-04-09 20:42:54 -04:00
Raven Scott 710859eaa4 Tests 2026-04-08 22:28:59 -04:00
Raven Scott d51ed58189 Fix imports 2026-04-08 21:53:33 -04:00
Raven Scott dfeb925776 Closer SSH 2026-04-08 21:43:08 -04:00
Raven Scott 7739b21043 SSH Updates 2026-04-08 21:24:04 -04:00
Raven Scott 385fc80894 Updates 2026-04-08 20:53:38 -04:00
Raven Scott dc9be9eaff Updates 2026-04-08 20:42:56 -04:00
Raven Scott 2d851dbaf2 updates 2026-04-08 20:27:25 -04:00
Raven Scott f6fb3179f3 Further fixes SSH 2026-04-08 20:19:05 -04:00
Raven Scott 355a6ef344 Fixes for SSH 2026-04-08 20:12:29 -04:00
Raven Scott 4757b2a4b0 Starting work on Implementing SSH Server Service 2026-04-08 20:02:12 -04:00
Raven Scott e470749aaa Update Bundles 2026-04-06 09:37:13 -04:00
Raven Scott 8d3d12d6f6 Update bundle 2026-04-06 08:49:54 -04:00
Raven Scott 8322f304d8 Update Manpage 2026-04-06 07:32:05 -04:00
Raven Scott 6d0d1b8049 Update Docs 2026-04-06 06:31:59 -04:00
Raven Scott eb8f33f6d8 Update Docs 2026-04-05 23:29:36 -04:00
Raven Scott 72e0c9c881 feat(booter): ctx 1.54.0, process table v9, and Holepunch/POSIX proc parity
- Bump BARE_OS_CTX_API_VERSION to 1.54.0 and POSIX profile to 1.0.19
- Process table schema 9: nice/accountingSource, logical maps/threads /proc builders, renice
- disk.os: replication_operator_sketch v8, HyperDHT address sketch, pkg index surfaces
- Protomux operator sketch v4, security_posture v7, corestore snapshot UX hint, pear_stage_pointer v2
- Swarm: BARE_OS_SWARM_ATTEMPT_BURST_PER_SEC; HDMS: host booter warn logging; shell wait exit codes
- getconf/sysconf: additional _SC_* via bareOsGetconfSysconf; socketMsgSurface v6 (iovec/SUSv4 refs)
- Identity: vault rotation audit includes pathcap trusted key count
- CI/docs: holepunch drift report env, kernel STRUCTURE note, verify-bundle-throws comment, matrices and examples
2026-04-05 23:14:08 -04:00
Raven Scott 071edccfb3 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.
2026-04-05 23:01:54 -04:00
Raven Scott 028725c113 Updates to HDMS 2026-04-05 21:52:22 -04:00
Raven Scott a529ca1ed2 Update btop 2026-04-05 17:38:46 -04:00
Raven Scott f3c8ef1fc5 Update btop 2026-04-05 17:07:57 -04:00
Raven Scott 7c6b77ed62 Update btop 2026-04-05 16:34:58 -04:00
Raven Scott 64a1270d18 - disk.os: replication_operator_sketch schema 7 + corestoreSnapshotUxHint; wire corestore into bridge
- HRPC: bare_os.pkg_index_get, route table schema 3; pkg-swarm-index list/get; pathcap-verify --trusted
- POSIX: profile 1.0.17, ctx API 1.53.0, syscalls.json schema 11 + susv4Refs; JSON schemas + matrix/dashboard
- Feature bits: BARE_OS_KERNEL_FEATURE_BITS_DOC 16; contract + verify scripts; ctx.d.ts + gen helper sync
- Ops: BARE_OS_HOLEPUNCH_DRIFT_TIER1 + tier1Repos; mktemp avoids false XXX marker; /proc boot_budget_summary test list
- Docs: contract spine, env appendix, handbook, compatibility matrix, boot budget schema, vault threat model notes

Covers bare-os P2P roadmap items 1–20 where implemented in-tree; kernel/lib/bare/README left minimal per maintainer edit.
2026-04-05 15:52:59 -04:00
Raven Scott 41526508df - disk.os: path manifest search, metrics schema bump, docs
- HRPC: bare_os.search_local, route table/schema updates; ctx API 1.52.0
- VFS: optional path-capability enforcement; pathcap-verify coreutil
- Replication/boot: warm-cache adaptive metrics, boot budget NDJSON v2
- Identity: savevault pre-snapshot host hint
- POSIX: profile 1.0.16, socket connect timeout env, Wasm ctx API peek import
- Security/ops: peer admission test, personal-drive path policy verifier in pretest
- P2P UX: pkg-swarm-index; multisig rc.proposals/enabled gate + audit rows
- Docs/scripts: README, handbook, env appendix, developer-guide, ctx helper sync
- Examples: syscalls.example ctx version; seeder kernel rsync parity
2026-04-05 15:27:39 -04:00
Raven Scott 169df862f7 feat(booter): complete P2P POSIX roadmap items and doc alignment
- ADRs under docs/adr/; KERNEL_CONTRACT + env appendix + handbook updates
- socketMsgSurface schema 5; replication_snapshot schema 2; syscall/example + tests
- MBR pacing docs/microbench; export mbrReadTimeoutMsForDisk; shell passthrough envs
- verify-ctx-api-feature-bits: syscall schema vs posix-compliance-matrix
- Wasm hostname import, disk.os snapshot hints, kernel-ext resolution docs
- coreutils nice + matrix/dashboard; syscalls.example ctxApiVersion 1.51.1
- Seeder kernel rsync parity; assorted booter/protocol doc fixes
2026-04-05 15:04:59 -04:00
Raven Scott 39dbf0f1be CI/docs: placeholder-baseline --check, seeder↔kernel sync script and docs,
holepunch lockfile drift Markdown dashboard + doc links
- disk.os / ctx: replication_operator_sketch schema 5 + corestore stats;
  protomux extensions proc versioning; HRPC allowlist_sketch schema 3 +
  versioned stock route table; swarm_health proc + runtime caps paths
- Session: BARE_OS_HOSTNAME_SET + ctx.bareOsSetSessionHostname, hostname man,
  security_posture; export -p in shell
- kernel.ext.d: optional provides[] version conflict detection (strict boot);
  resolver parity + tests; BARE_OS_INIT_DEFER_KERNEL_EXT_GRAPH documented
- VFS/policy: mirror/aux read tests, GUEST_BARE_READ_ALL edge negative test;
  adaptive warm-cache window env documented; microbench note
- POSIX: syscalls.json schema 10, posix_fadvise no-op, getconf + conformance
  matrix sync; posix-issue7-traceability index; handbook/profile/matrix updates
- Seeder: pear.multisig hint tests; SCM_RIGHTS unit coverage extended
- Regenerated kernel bundle, seeder kernel mirror, posix dashboard, coreutils
  build/man; booter CHANGELOG maintenance row updated
Full npm test / pretest green.
2026-04-05 14:45:01 -04:00
Raven Scott 8bde745191 feat: complete 20-track kernel roadmap (P2P ops, POSIX, HRPC, CI, docs)
- Add optional Holepunch clone lag gate (holepunch-freshness-gate.json,
  verify-holepunch-clone-freshness.mjs) and wire into pretest/docs.
- Extend stock ctx.bareOsHrpcRequest with disk.os replication routes;
  bump hrpc_allowlist_sketch proc to schema 2 with stockRoutes list.
- Security posture: blindRelayAudit; hyper_multisig_trust_pointer schema 2
  + vault multisig continuity env; login/unlock audit hook.
- Syscalls schema 9 alignment (JSON schema, compatibility matrix, conformance
  matrix clock_gettime); boot budget telemetry schema 2 in metrics_live.
- Coreutils hostname -s/--short man/options; rebuild kernel bins/man.
- POSIX + P2P dashboard section in docs/README; handbook/DOCUMENTATION/
  release-checklist/OTA/KERNEL_CONTRACT/PEAR-RUN and related reference updates.
- verify-boot-policy-extension-signer-pins: scan kernel init fragments.

Note: vendor drift section removed from kernel/lib/bare/README.md (intentional).
2026-04-05 14:17:20 -04:00
Raven Scott c15e8fa5be feat(booter): POSIX/P2P roadmap — profile 1.0.14, ctx 1.50.0, docs & tests
- Sync declared POSIX profile, compliance matrix, syscalls examples, dashboard
- Extend holepunch clone sync reporting; bump protomux/hyperswarm lock fixture schema
- Optional shell read builtin (BARE_OS_SHELL_READ_*); host env passthrough
- Expand bareOsGetconfSysconf / getconf; pathconf for acct/union/mirror
- Wasm optional bare_os_monotonic_ms; replication live snapshot hints schema
- Socket bridge SO_RCVBUF/SO_SNDBUF; mq priority + FIFO ordering + tests
- Extract cooperative fcntl lock helpers; FIFO waiter drain tests
- Peer admission audit helpers, rate limit + redaction tests; security_posture schema
- CI: verify-ctx requires CHANGELOG row, d.ts version mention, compatibility matrix
- Warm-cache microbench (vfs suite); boot budget / metrics cohesion (prior work)
- Handbook, KERNEL_CONTRACT, kernel-program, env appendix, README, users-manual, schemas

Kernel bundle + seeder rsync + coreutils build verified via npm test.
2026-04-05 13:50:07 -04:00
Raven Scott 551d68ac6c - Peer admission: denylist, require-caps JSON, schema-2 results; optional
NDJSON audit + rate limit; env passthrough and handbook/appendix/docs
- /proc/bare_os/security_posture.json schema 4: vaultCryptoPrimitives,
  bareCryptoReportedVersion, expanded peerAdmission
- /proc/bare_os_features: pearIpcConservativeAdvertisement (names only)
- Syscall select returns pollClock with timeout; coreutils test -u/-g/-k
- Host env: BARE_OS_CTX_BARE_SUBPROCESS_SPAWN,
  BARE_OS_REPLICATION_PEER_PRIORITY_JSON, peer audit keys
- Placeholder scan: rename expandCmdsubstEmbedded; sendmsg wording
- Docs: vault threat model, preface Mermaid, protocol/changelog, posix
  matrix, holepunch clone audit refresh, developer-guide/kernel-program Wasm
- ctx.d.ts + gen-ctx-client-helper; booter CHANGELOG maintenance notes
2026-04-05 13:15:12 -04:00
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
Raven Scott 346bb71ffe Complete the internal “100 task” roadmap: coreutils and shell parity (xargs,
sh, diff/patch, sort, printf, find, test, getfacl/setfacl/xattr), expanded
/proc and metrics (process table, syscalls, replication, net, security
posture, worker budget, swarm/replication hints), initd DAG supervision
metadata and richer restart journal telemetry, synthetic process groups via
IPC (assignProcessGroup/signalProcessGroup) mirrored into process_table,
optional kernel.ext.d incremental hot reload (BARE_OS_KERNEL_EXT_D_HOT_RELOAD)
with reload audit NDJSON, features proc for hyperblobs dedup and systemd
subset documentation, vault threat model doc plus posture fields for AEAD,
Pear enclave pointer, account rotation continuity, and Ed25519 consistency
across boot manifest / extensions / replication. Adds or extends tests and
keeps kernel/ and packages/bare-os-seeder/kernel/ in parity; guest init is
bundled from kernel/lib/init/init-main.js via bundle-kernel-init.
2026-04-04 21:23:49 -04:00