import type { UltraController } from "../controller/controller.js"; export function formatUsd(amount: number): string { return `$${amount.toFixed(amount > 0 && amount < 0.1 ? 4 : 2)}`; } export function statusLine(controller: UltraController): string { const status = controller.status(); const config = typeof (controller as unknown as { getConfig?: () => ReturnType }).getConfig === "function" ? controller.getConfig() : undefined; const runs = status.activeRuns.filter((run) => !["COMPLETED", "BLOCKED", "CANCELLED", "BUDGET_EXHAUSTED", "FAILED"].includes(run.state)).length; const identity = config ? `profile=${config.profile} · agentDir=${controller.agentDir} · ` : ""; return `UltraPi: ${identity}${runs} active · ${status.health.state} · est. ${formatUsd(status.spentUsd)}`; } export function renderStatus(controller: UltraController): string { const status = controller.status(); const runs = status.activeRuns.map((run) => `${run.runId}: ${run.topology}/${run.state} · est. ${formatUsd(run.spentUsd)}`).join("\n") || "none"; return `${statusLine(controller)}\nRuns:\n${runs}`; } export function renderLiveStatus(controller: UltraController): string { const status = controller.status(); if (!status.activeRuns.length) return `${statusLine(controller)}\nNo runs.`; const runs = status.activeRuns.map((run) => { const header = `${run.runId} · ${run.topology}/${run.state} · [${run.progress.done}/${run.progress.total}] · ${run.model ?? "unknown"} · est. ${formatUsd(run.spentUsd)}`; const nodes = run.nodes.length ? run.nodes.map((node) => ` ${node.nodeId.padEnd(14)} ${node.role.padEnd(9)} ${(node.model ?? "unknown").padEnd(28)} ${node.credits.toFixed(2).padStart(8)} cr ${node.state}`) : [" no delegated node has reported usage yet"]; return [header, ...nodes].join("\n"); }); return [statusLine(controller), ...runs].join("\n"); }