26 lines
6.5 KiB
Markdown
26 lines
6.5 KiB
Markdown
# Changelog — `bare-os-coreutils`
|
||
|
||
## Unreleased
|
||
|
||
- **`agent`**: Production ReAct harness. Default **QVAC** (local); optional OpenAI-compatible **REST** (`agent --setup` stores only the chosen backend). Full guest admin by default (**denylist**, not allowlist). Production flags **`--plan`**, **`--auto`**, **`--new`**, **`--compact`**, **`--max-turns`**, **`--model`**, **`--system`**. Inspect (no model): **`skills`**, **`todos`**, **`plan`**, **`undo`**, **`hooks`**, **`history`**, **`rewind`**, **`export`**, **`remember`**, **`recap`**. Grok-port tools include **`grep`** (`output_mode`), **`apply_patch`**, **`find_symbol`**, **`copy_path`**, **`diff_files`**, **`read_many`**, **`fuzzy_find`**, **`wait_for`**, **`undo_last_edit`**, **`git_log`/`show`/`blame`**, **`create_skill`**, session rewind/export, walk-up project skills (`.grok/skills`, `.agents/skills`, …). Discord **`/agent`** is the same session (shared `~/.agent`).
|
||
- **`discord-bot`**: Full **`/agent`** surface (ask + inspect + session + models + settings). User-installable profile app; **`DISCORD_ID_WHITELIST`** always enforced (loaded from `~/.discord/.env` / `~/.env`). **`/holesail`** and **`/hdms`** interactive managers. See [developer-guide ch.21](../../developer-guide/21-discord-bots.md).
|
||
|
||
- **`summon`**: Text web browser (`ctx.tui`, cell buffer). HTML/CSS engine plus page JS via **`ctx.bare.bareVm`** (`bare-vm` / `bare-realm`) or a Function sandbox. **`--no-js`** / **`J`**. HTTP via **`ctx.httpFetch`**. See [summon.md](../../docs/reference/summon.md).
|
||
- **`irc`**: Room browser (`/rooms`, Ctrl+L), featured Libera channels, `LIST` filter, self-JOIN switches buffer. Full slash table (`/query`/`/msg` print usage when args are missing). Random `osXXXXX` nick when USER looks like a container id. TLS prefers **`ctx.bareOsTlsConnect`** and falls back to **`ctx.bare.bareTls`**.
|
||
|
||
- **`dhttop` / `swarmmap` / `routeview` / `holepunch-view` / `swarmtop` / `chat` / `edit` / `nano`**: TTY mode prefers **`ctx.tui.run`** (TEA; **`edit`/`nano`** use **`buffer: 'cell'`** so help and prompts overlay). The pre-SDK key loop remains when **`BARE_OS_TUI=0`**.
|
||
- **`agent`**: interactive setup prefers **`ctx.tui.form`** (identity + backend). Line wizard remains when the SDK is off.
|
||
- **`baretop` / `btop`**: TTY dashboard is a **`ctx.tui.run`** TEA app (`buffer: 'cell'`). Title, tab strip, viewport/table body, and footer are a fixed-height frame (no terminal scroll). Help is an overlay. The pre-SDK draw loop remains when **`BARE_OS_TUI=0`**.
|
||
|
||
- **Coreutils hardening**: shared runtime helpers (strict ints, path identity, portable Base64/hex, env lookup). Closed data-loss paths (`mv`/`cp` self, `touch` on directories, `truncate` unread files, `rm -i` silently deleting, `install` onto a directory). Missing-file exits now fail (`head`/`tail`/`wc`/`ls`/`du`/`cmp`/`diff`). Bare-only decode no longer requires Node `Buffer`. `seq`/`dd`/`cut`/`nl` are bounded. `find -depth` no longer eats the next argument. `grep -m 0`, `expr` zero-result status, `hostname` set, `sleep` operands, `chmod` symbolic modes, `chown` owner-only, and dashed `unlink -- -name` operands are POSIX-shaped.
|
||
|
||
- **Agent skills**: new `kernel-program-extension` skill (governed Batch C / kernel program work, roadmap-first workflow, verification_hints integration). Seeded via `BARE_AGENT_SKILL_SEED_REL`.
|
||
- **Time command**: comment hygiene (removed "placeholder" phrasing to keep audit baseline clean).
|
||
- **`baretop` / `btop**`: `**BARE_TOP_FETCH_EWMA=1`** lowers parallel **`/proc`** batch concurrency when the previous fetch-time EWMA is high; **`BARE_TOP_SCROLL_REGION=1`** sets an experimental DECSTBM region around the process list (reset each frame). Sample fixture **`baretop-sample-metrics.json`** includes **`netSummaryNestedExample`** for nested net UI tests.
|
||
|
||
- **`baretop` / `btop**`: Network tab formats nested **`net_summary.json`** ( **`replicationQueue`**, **`peerFirewallStats`**, **`bsdSocketGuestBridge`** ) without **`[object Object]`**; optional **`BARE_TOP_NET_FILTER`** applies **`/`** on that tab; wide two-column merge when `**BARE_TOP_LAYOUT=even**` and cols ≥ 100; net byte-delta spark from iface counters. Overview gains **nethealth**, **diskstats**, **syscalls** summary, **delegate_red**, **security_posture**, **boot_budget_summary**, **peer health**, **capabilities diff**, **extensions**, **git** deltas (with **`d`** + prev snap), larger kernel counter sample, **IPC** backpressure line from proc JSON, **session wall** spark, **worker/sandbox** hints, **readErrPaths** listing, **MemUsed** bar + swap line + logical CPU count in HUD; process columns **NI**/**PRI`**/**CPU%** when present, **`BARE_TOP_CMD_ELLIPSIS_MIDDLE`**, extended sort keys, tree ancestor dimming + ASCII `**+--**`, **x** toggles initd raw JSON, features flattened table, catalog version line, pear pack depth **8**, host-tab worker/sandbox one-liners, mouse click-scroll on list tabs **2–9**. Snapshot batch adds **`security_posture.json`**; **`readErrPaths`** on failed **`readFile`\*\* paths.
|
||
|
||
- **`baretop` / `btop**`: Health score no longer penalizes operational **`replicationLive.stallHint`** values (**`no_peers`**, **`length_unavailable`**, **`ok`**); delegate inflight penalties use active (count > 0) kinds with a combined cap; optional **`replicationStall: true`** forces the stall penalty. **`bareOsReadBareTopSnapshot`** may return **`metricsLiveText`** (same payload as **`metrics_live.json`**) to avoid an extra read when the booter builds both. **`BARE_TOP_INCREMENTAL=2`** experimental CSI line-diff redraws; **`BARE_TOP_LAYOUT_AUTO`**, **F2** setup overlay, **F3`**/**F4** process row jump, **F10** quit; overview **limits** / **p2p** sections, network tab interface sort, tab intro lines, filter-match row highlight, `**layoutVersion` `baretop-ui-3**`. Default **`BARE_TOP_FETCH_CONCURRENCY`\*\* **8**. QA script **`scripts/qa-baretop-health.mjs`**.
|
||
|
||
- **`baretop` / `btop**` (prior): Scrollable overview tab with pinned HUD (activity sparklines, session summary, delegate histogram); compact **`metrics_live`** panels (replication, kernel counters with delta mode, warm cache, IPC, boot budget, swarm lifecycle, initd readiness, worker hints, protomux collaboration); capped flatten and delegate inflight table; health score breakdown (**`BARE_TOP_HEALTH_DETAIL`**); optional lite snapshot batch (**`BARE_TOP_SNAPSHOT_LITE`**); export metadata + **`BARE_TOP_EXPORT_REDACT`**; process tab **TIME** column, **F6`**/**S** sort, **V** tree view, state-based row color, optional mouse wheel/click; many layout/telemetry env toggles documented in **`src/baretop.js`** and **`man baretop`\*\*.
|