From 868c8af17b0e0e8cde6c318bd96e2c8731426dad Mon Sep 17 00:00:00 2001 From: Sawyer Cutler Date: Fri, 16 Oct 2026 20:27:05 -0700 Subject: [PATCH] docs: drop references to the deleted renderer --- docs/ARCHITECTURE.md | 6 +----- docs/IMPLEMENTATION.md | 2 +- scripts/ci-timings.json | 2 -- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index b82c46f02..1aa9614c9 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -334,7 +334,7 @@ Every shipped specialist is a **director package** — a prompt-first `DirectorP **Wait mailbox** (`src/subagent/agent-fleet.ts` `FleetMailbox`): per-install overlay over that session store. Wait JSON is a projection of stored lifecycle plus mailbox membership, pin, collected, and optional interrupt override — not a second terminal store. Mailbox `register` pins an uncollected result (honored by prune); past `MAX_FLEET_RECORDS` the oldest never-collected pin is compacted to a tombstone. Operator cancel projects wait status `interrupted`. -**Observe (OpenTUI)**: `shell/observe.ts:enterSubagentObserve` swaps the transcript for a child's stream (live while running, historical when done) without stealing the parent reactor; child events are mapped to stream rows by `src/tui/observe-map.ts`. Esc leaves observe and restores the parent transcript. Parent Esc/stop and `/clear` still call `cancelAll` so live children close (`agent.close`) instead of continuing after the parent stops. The host-injection point that resolves a live session (`onObserveRequest` → `observeSessionFromSubAgents`, `src/tui/runner/host.ts`, picking the newest running child else the most recent session of any status) is triggered by Alt+O (`src/tui/shell/observe.ts:observeActiveSubagent`) — the command palette action that used to call it is gone along with `src/tui/shell/palette.ts` itself, but the chord replaces it rather than dropping the feature. +**Observe (OpenTUI)**: `shell/observe.ts:enterSubagentObserve` swaps the transcript for a child's stream (live while running, historical when done) without stealing the parent reactor. Live Alt+O maps the child's transcript to stream rows with `rowsFromTranscript` in `src/tui/runner/host.ts`. Esc leaves observe and restores the parent transcript. Parent Esc/stop and `/clear` still call `cancelAll` so live children close (`agent.close`) instead of continuing after the parent stops. The host-injection point that resolves a live session (`onObserveRequest` → `observeSessionFromSubAgents`, `src/tui/runner/host.ts`, picking the newest running child else the most recent session of any status) is triggered by Alt+O (`src/tui/shell/observe.ts:observeActiveSubagent`) — the command palette action that used to call it is gone along with `src/tui/shell/palette.ts` itself, but the chord replaces it rather than dropping the feature. Data-only agent plugins (`src/plugins/data-only-agent.ts`) synthesize `agentPlugin.agents[]` from `agents/*.md` or flat `*.md` in the plugin directory, with optional co-located `skills/`. `loadPluginEntry` tries JS entrypoints first, then falls back to this layout (`/plugins` add-by-path supports filesystem completion via `listPathSuggestions`). @@ -375,10 +375,6 @@ The primary director is **dispatch** (`buildChatRole` → `createDispatchSystemP - `pricing-fetcher` loads model pricing from models.dev, caches it, and refreshes in the background - `faremeter` converts `inference.usage` token counts into a formatted cost using that pricing -### Renderer (`src/agent/renderer.ts`) - -- Headless event rendering: formats the event stream to stderr with live cost, seeded by start time, model, and pricing cache - ### Plugins Tool middleware applied over `createPosixTools`, in this order: diff --git a/docs/IMPLEMENTATION.md b/docs/IMPLEMENTATION.md index 202a1bdf1..0ed7aad4c 100644 --- a/docs/IMPLEMENTATION.md +++ b/docs/IMPLEMENTATION.md @@ -611,7 +611,7 @@ Run all three before declaring work complete. ## Testing -- **Unit tests** are co-located with source as `*.test.ts` (e.g. `config.test.ts`, `director.test.ts`, `prompts.test.ts`, `renderer.test.ts`, `permission/permission.test.ts`, each `plugins/*.test.ts`, and TUI tests under `tui/`). Shared test helpers live in `testkit/` (repo root, shared by unit and e2e). +- **Unit tests** are co-located with source as `*.test.ts` (e.g. `config.test.ts`, `director.test.ts`, `prompts.test.ts`, `permission/permission.test.ts`, each `plugins/*.test.ts`, and TUI tests under `tui/`). Shared test helpers live in `testkit/` (repo root, shared by unit and e2e). - **`fixtures/`** holds fixture repos and comparison assets (e.g. `demo-comparison/`, `multi-file-service/`). - **`e2e/`** holds scenario tests driven over the production agent loop with scripted models (`@intx/inference-testing`) — fixture-repo seeding, `runUntilDone`/`runUntilSuspended`/`sendOperatorTurn` drivers (see `e2e/harness.ts`), and the reactor permission / multi-turn exercises formerly under `tests/integration/`. - **Capability evals** (`evals/capability/`) are **not** the integration harness: they drive the product path (`corbits exec` / `runExec`) with real models against fixture copies and objective `verify.sh` graders. Case format + loader tests live under `evals/capability/`; run with `bun run eval:capability` (see `evals/capability/README.md`). Use `--baseline` to detect improve/regress across models or commits. diff --git a/scripts/ci-timings.json b/scripts/ci-timings.json index b7b0eaba0..b04e5e963 100644 --- a/scripts/ci-timings.json +++ b/scripts/ci-timings.json @@ -77,7 +77,6 @@ "src/session/hooks.test.ts": 82, "src/permission/gate.test.ts": 81, "src/session/cache-ttl-resume.test.ts": 81, - "src/tui/observe-live.test.ts": 78, "src/subagent/session-store.test.ts": 75, "src/tui/prompt-features.test.ts": 73, "src/tui/list-modal.test.ts": 67, @@ -435,7 +434,6 @@ "src/provider/openai-responses.test.ts": 1, "src/provider/reasoning-effort.test.ts": 1, "src/provider/replay-sanitizer.test.ts": 1, - "src/renderer.test.ts": 1, "src/session/attachment-store.test.ts": 1, "src/session/run-sink-exec-status.test.ts": 1, "src/session/run-sink.test.ts": 1,