Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/TUI.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ on `LIVE_WORD_MS`; gated turns still read `waiting` or `stopping`.
`ACTIVITY_STATES` exported from the session chrome module is the source
of truth for what the slot can say, not this list. It is led by a single
density cell
(`rampPulse`, `src/tui/ramp.ts`). The cell, not the word,
(`rampPulse`, `src/tui/ramp-glyphs.ts`). The cell, not the word,
is what says whether the session is healthy, and it carries four states:

| State | Cell | Reads as |
Expand Down
2 changes: 1 addition & 1 deletion src/tui/chrome-state.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import {
} from "./geometry/zones.js";
import { CREDENTIAL_FAILURE_USER_MESSAGE } from "../inference-error-message.js";
import type { Telemetry } from "../telemetry/index.js";
import type { RampPhase } from "./ramp.js";
import type { RampPhase } from "./ramp-glyphs.js";

/**
* Linger window for a finished agent row after `finishedAt`; mid of the
Expand Down
2 changes: 1 addition & 1 deletion src/tui/landing.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ import {
} from "./landing";
import { LOCKUP_WORDMARK } from "./lockup";
import { MARK_LARGE, MARK_MID, MARK_SMALL } from "./mark-shape";
import { SNOW_CHAR } from "./mark-anim";
import { SNOW_CHAR } from "./mark-raster";

const SIZE = { width: 80, height: 24 } as const;
const NOTICE = "Anonymous usage telemetry is enabled. Disable in /settings.";
Expand Down
2 changes: 1 addition & 1 deletion src/tui/landing.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import {
MARK_SMALL,
type MarkGrid,
} from "./mark-shape.js";
import { renderMark } from "./mark-anim.js";
import { renderMark } from "./mark-raster.js";
import { UI } from "./theme.js";
import { stringWidth } from "./view/height.js";

Expand Down
2 changes: 1 addition & 1 deletion src/tui/lockup.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
STALL_BLINK_BURST_MS,
STALL_BLINK_CYCLE_MS,
type RampPhase,
} from "./ramp";
} from "./ramp-glyphs";
import { UI } from "./theme";

const idle = (nowMs: number): LockupInput => ({
Expand Down
13 changes: 9 additions & 4 deletions src/tui/lockup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,22 @@
* It rides the prompt box's bottom border. Idle it reads `corbits code`;
* while a turn runs it reads the live phase — `thinking`, `responding`,
* the running tool's name — led by a single density cell (`rampPulse` in
* `ramp.ts`): the word alone printed the same static `working` for a
* `ramp-glyphs.ts`): the word alone printed the same static `working` for a
* live run and a hung one. The cell cycles while the turn moves, holds a
* static half block on an operator gate, and blinks a bang when stalled
* (glyph and motion carry the states — see ramp.ts).
* (glyph and motion carry the states — see ramp-glyphs.ts).
*
* Cell and word share the phase's color, so the slot never disagrees
* with it. Pure and clock-injected: `nowMs` in, cells out.
*/

import { type MarkCell } from "./mark-anim.js";
import { rampFg, rampPulse, type RampPhase, type StallAge } from "./ramp.js";
import { type MarkCell } from "./mark-raster.js";
import {
rampFg,
rampPulse,
type RampPhase,
type StallAge,
} from "./ramp-glyphs.js";
import { UI } from "./theme.js";
import { stringWidth } from "./view/height.js";

Expand Down
2 changes: 1 addition & 1 deletion src/tui/mark-anim.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {
markText,
renderMark,
smooth,
} from "./mark-anim";
} from "./mark-raster";
import { MARK_COLS, MARK_LARGE, MARK_ROWS } from "./mark-shape";
import { UI } from "./theme";

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion src/tui/provider/surface.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import { PRODUCT_NAME } from "../../branding.js";
import { ollamaDiscoveryFailureLine } from "../../provider/ollama.js";
import { TELEMETRY_NOTICE } from "../../telemetry/index.js";
import { wrapLines } from "../view/height.js";
import { rampFor, rampLine } from "../ramp.js";
import { rampFor, rampLine } from "../ramp-glyphs.js";
import { destroySubtree } from "../teardown.js";
import { UI } from "../theme.js";
import {
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion src/tui/ramp-paint.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import { describe, expect, test } from "bun:test";

import { withTestRenderer } from "./harness";
import { RAMP_CYCLE_MS } from "./ramp";
import { RAMP_CYCLE_MS } from "./ramp-glyphs";
import { attachSessionBridge, createRecordingPort } from "./runtime-bridge";
import { createAppShell } from "./shell/index";

Expand Down
2 changes: 1 addition & 1 deletion src/tui/ramp.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
renderRamp,
STALL_BLINK_BURST_MS,
STALL_BLINK_CYCLE_MS,
} from "./ramp";
} from "./ramp-glyphs";
import { UI } from "./theme";

const BRAILLE = /[⠀-⣿]/;
Expand Down
2 changes: 1 addition & 1 deletion src/tui/render-loop.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
import { describe, expect, test } from "bun:test";

import { withTestRenderer } from "./harness";
import { RAMP_CYCLE_MS, rampPulse } from "./ramp";
import { RAMP_CYCLE_MS, rampPulse } from "./ramp-glyphs";
import { attachSessionBridge, createRecordingPort } from "./runtime-bridge";
import { appendStreamRow } from "./shell/chrome";
import { createAppShell } from "./shell/index";
Expand Down
2 changes: 1 addition & 1 deletion src/tui/runtime-bridge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ import {
} from "./shell/internals.js";
import { applyShellInterrupt, surfaceSystemNotice } from "./shell/prompt.js";
import { streamRowAt, streamRowCount } from "./shell/transcript.js";
import { rampAnimating } from "./ramp.js";
import { rampAnimating } from "./ramp-glyphs.js";
import { onTurnBoundary } from "../agent/reactor-events.js";
import {
resolveRampPhase,
Expand Down
2 changes: 1 addition & 1 deletion src/tui/shell/chrome.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ import {
lockupWidth,
type LockupInput,
} from "../lockup.js";
import type { RampPhase, StallAge } from "../ramp.js";
import type { RampPhase, StallAge } from "../ramp-glyphs.js";
import {
BORDER,
composeAttentionLabel,
Expand Down
2 changes: 1 addition & 1 deletion src/tui/shell/internals.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
import { type SentHistoryBrowse } from "../sent-message-history.js";
import { type PromptRecognitionSource } from "../prompt-recognition.js";
import { type PromptInput } from "../prompt-input.js";
import type { RampPhase, StallAge } from "../ramp.js";
import type { RampPhase, StallAge } from "../ramp-glyphs.js";
import type { ActivityState } from "../chrome-state.js";
import { type CostContextMeter } from "../prompt-border.js";
import { type FocusState } from "../focus/index.js";
Expand Down
2 changes: 1 addition & 1 deletion src/tui/welcome.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import {
} from "@opentui/core";

import { PRODUCT_NAME } from "../branding.js";
import { MARK_PERIOD_SECONDS, renderMark } from "./mark-anim.js";
import { MARK_PERIOD_SECONDS, renderMark } from "./mark-raster.js";
import {
MARK_LARGE,
MARK_MID,
Expand Down
2 changes: 1 addition & 1 deletion src/tui/width-columns.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import { middleEllipsis } from "./command-display.js";
import { renderDiff } from "./diff.js";
import { wrapLanding } from "./landing.js";
import { lockupWidth } from "./lockup.js";
import type { RampPhase } from "./ramp.js";
import type { RampPhase } from "./ramp-glyphs.js";
import { formatPaletteRows } from "./command-catalog.js";
import { composeDecisionBody, wrapWords } from "./overlay-body.js";
import { thinkingLivePreviewLines, thinkingSettledLine } from "./thinking.js";
Expand Down
Loading