docs: remove legacy references — positive framing pass (11 files) #248

Merged
clawdie merged 1 commit from docs/remove-legacy-references into main 2026-06-28 00:07:23 +02:00
11 changed files with 24 additions and 23 deletions

View file

@ -83,4 +83,4 @@ Linux can use the same shape with Linux-native adapter values such as `linux-ser
- Use **Layered Memory Fabric** in public/promo copy.
- Use **skills / brain / ops planes** in technical docs.
- Keep `system_brain` as the database name; that name is intentional.
- Avoid "split brain" except when referring to legacy filenames or historical changelog entries.
- Avoid "split brain" except when referring to existing code identifiers or historical changelog entries.

View file

@ -18,6 +18,5 @@ This installs the storage datasets, the `clawdie` service user, and the rc.d
notes.
> **Scope.** This provisions the control-plane host service only. PF egress,
> worker jails, PostgreSQL, and the CMS/web service were handled by the legacy
> clawdie-ai `just` + Ansible orchestrator and are not yet part of the colibri
> installer. The canonical Bastille/Warden bridge name remains `warden0`.
> worker jails, PostgreSQL, and the CMS/web service are not yet part of the
> colibri installer. The canonical Bastille/Warden bridge name remains `warden0`.

View file

@ -78,11 +78,10 @@ target host. `discover`, `plan`, and a bare `apply` never write — preview with
## Scope: what the installer does _not_ do (yet)
`clawdie` provisions the **host service** only. The wider service mesh — PF
egress, worker jails, PostgreSQL, Forgejo/Git, and the CMS/web service — was
provided by the legacy clawdie-ai `just` + Ansible orchestrator and is **not yet
part of the colibri installer**. Older pages that reference `just install`,
`just setup-db`, `just doctor`, and similar describe that legacy flow, not this
repo; they are being reconciled to the `clawdie` model.
egress, worker jails, PostgreSQL, Forgejo/Git, and the CMS/web service — is
**not yet part of the colibri installer**. Pages that reference `just install`,
`just setup-db`, `just doctor`, and similar describe a previous orchestrator;
they are being reconciled to the `clawdie` model.
## FreeBSD validation

View file

@ -23,9 +23,8 @@ these requirements before running `clawdie apply`.
`cargo build -p clawdie --release`. See [Install](./install/).
- **Bastille** for jail management.
> The legacy clawdie-ai `just` + Node/`tsx` orchestrator is not used in this
> repo; the sections below still describe the clawdie-ai product runtime and are
> being reconciled to the colibri model.
> The sections below describe the clawdie product runtime and are being
> reconciled to the colibri model.
## Runtime philosophy

View file

@ -92,7 +92,7 @@ The cooldown file now resolves with the same project-local precedence used by
other operator artifacts:
- `AGENT_STATUS_DIR/provider-cooldowns.json`
- otherwise `CLAWDIE_VAR_DIR/provider-cooldowns.json` (legacy compatibility)
- otherwise `CLAWDIE_VAR_DIR/provider-cooldowns.json`
- otherwise repo-local `tmp/state/provider-cooldowns.json`
Expired entries are dropped on load.

View file

@ -95,7 +95,7 @@ does not write itself. The contract:
wrapper and `getDefaultStatusDir()` in `src/reports/test-report.ts`):
1. `$AGENT_STATUS_DIR` if set
2. `$CLAWDIE_VAR_DIR` if set (legacy)
2. `$CLAWDIE_VAR_DIR` if set
3. `<project-root>/tmp/status` (default)
Per `AGENTS.md` § "Temporary File Storage", artifact paths under repo

View file

@ -115,7 +115,7 @@ SYSTEM_LOCALE=sl_SI.UTF-8
```
For a different agent, choose different values (e.g. `de-DE`, `ru-RU`, `zh-CN`).
Do not use legacy encodings; `SYSTEM_LOCALE` must remain UTF-8.
`SYSTEM_LOCALE` must remain UTF-8.
If multiple agents share one tmux server, new panes inherit the server locale.
Either use separate tmux sessions per agent or set locale env vars inside each

View file

@ -33,6 +33,7 @@ rendering — static HTML with a JSON data file refreshed every 60s by cron.
```
Each cost card shows:
- **Cache-hit bar:** green (cache) vs grey (fresh) — visual cache efficiency
- **Provider:** deepseek / claude / gemini / ollama / local
- **Cost:** with `▸ screenshot` badge if visual proof exists, `▸ text` for glasspane evidence
@ -42,12 +43,12 @@ Click a card with `▸` → lightbox opens the terminal screenshot at task compl
## Data sources
| Source | What | Refresh |
|---|---|---|
| `task_costs` (PostgreSQL) | Per-task cost rows pushed by daemon heartbeat | Real-time (SSH push on completion) |
| `hive_nodes` (PostgreSQL) | Node metadata, capabilities, LLM tier | Node heartbeat |
| `task_costs JSON file` | Denormalized JSON for the dashboard page | Every 60s (cron) |
| `proof_text` (inline JSON) | glasspane state snapshot | On task completion (daemon heartbeat) |
| Source | What | Refresh |
| -------------------------- | --------------------------------------------- | ------------------------------------- |
| `task_costs` (PostgreSQL) | Per-task cost rows pushed by daemon heartbeat | Real-time (SSH push on completion) |
| `hive_nodes` (PostgreSQL) | Node metadata, capabilities, LLM tier | Node heartbeat |
| `task_costs JSON file` | Denormalized JSON for the dashboard page | Every 60s (cron) |
| `proof_text` (inline JSON) | glasspane state snapshot | On task completion (daemon heartbeat) |
## Architecture
@ -79,6 +80,7 @@ cd /usr/local/src/colibri/packaging/mother/dashboard
```
This places:
- `/usr/local/www/clawdie/dashboard/index.html` — the dashboard page
- `export-costs.sh` — JSON export script (in mother webroot)
- `/usr/local/etc/cron.d/clawdie-dashboard` — cron job (every 60s)
@ -124,6 +126,7 @@ cache-hit on DeepSeek — route non-urgent tasks there."
The `▸ screenshot` badge on cost cards opens a lightbox with the terminal PNG. The `▸ text` badge shows the glasspane state snapshot inline.
screenshot UUID is stored alongside the cost row. Clicking opens the lightbox
with:
- The full terminal PNG at task completion time
- Task ID, provider, and cost in the overlay
- The screenshot metadata (pane title, command, path, timestamp)

View file

@ -43,7 +43,7 @@ daemon, TUI, and client CLI can all rely on.
Agents emit structured events as newline-delimited JSON on stdout. Glasspane
reads line-by-line with `BufReader`, deserializes each line, and feeds it into
the `PiJsonlIngestor` (the name is legacy — it handles zot events too).
the `PiJsonlIngestor`, which handles events from any agent runtime (zot, pi, and others).
The reader runs in a **single background task per pane** (`pane_reader_loop`).
It never blocks the daemon's main loop — the ingestor is a synchronous fold

View file

@ -13,7 +13,7 @@ cover the _how_; these pages cover the _why_.
Stale decisions accumulate faster than anyone hand-audits them: a rename that
was only half-applied, a doc that still describes the old design, a default
left over from a superseded choice. Several recent passes were spent finding
exactly that (`pi → zot`, `usb_nodes → hive_nodes`, legacy rename to `sample`). This wiki
exactly that (`pi → zot`, `usb_nodes → hive_nodes`, rename to `sample`). This wiki
makes the bookkeeping near-zero-cost: one place that records _what was decided_,
links to _where it lives in code_, and can be **linted** for drift.

View file

@ -131,6 +131,7 @@ FK — correct behaviour (register first, then report costs).
[`daemon.rs`](../../crates/colibri-daemon/src/daemon.rs) (`push_cost_to_mother`)
## See also
107|
108|- [agent-harness](./agent-harness.md) — the zot/Colibri split; autospawn
109|- [naming-decisions](./naming-decisions.md) — `usb_nodes → hive_nodes`, autospawn flag rename