import * as React from 'react' import { useState } from 'react' import { getSlowOperations } from '../bootstrap/state.js' import { Text, useInterval } from '@anthropic/ink' // Show DevBar for dev builds or all ants function shouldShowDevBar(): boolean { return ( process.env.NODE_ENV === 'development' || process.env.USER_TYPE === 'ant' ) } export function DevBar(): React.ReactNode { const [slowOps, setSlowOps] = useState< ReadonlyArray<{ operation: string durationMs: number timestamp: number }> >(getSlowOperations) useInterval( () => { setSlowOps(getSlowOperations()) }, shouldShowDevBar() ? 500 : null, ) // Only show when there's something to display if (!shouldShowDevBar() || slowOps.length === 0) { return null } // Single-line format so short terminals don't lose rows to dev noise. const recentOps = slowOps .slice(-3) .map(op => `${op.operation} (${Math.round(op.durationMs)}ms)`) .join(' ยท ') return ( [ANT-ONLY] slow sync: {recentOps} ) }