/** * Harness tools — engineering-strength tools for self-iteration. * * These give the agent first-class code engineering capabilities: * - `run_tests`: run the test suite, parse results, identify failures * - `verify_fix`: run build + typecheck + tests in one call * * Unlike raw `exec` (which just runs a shell command), these return STRUCTURED * output the LLM can act on: pass/fail counts, failure messages, specific * failing test names, build errors with file:line. * * @public */ import type { Tool } from '../core/tools/tool-types.js'; export interface TestResult { testFiles?: number; total: number; passed: number; failed: number; skipped: number; durationMs: number; failures: Array<{ name: string; message: string; }>; rawOutput: string; } export interface VerifyResult { buildOk: boolean; typecheckOk: boolean; testsOk: boolean; buildSkipped?: boolean; typecheckSkipped?: boolean; testsSkipped?: boolean; buildOutput?: string; typecheckOutput?: string; testResult?: TestResult; durationMs: number; } export declare const runTestsTool: Tool; export declare const verifyFixTool: Tool; export declare const harnessTools: Tool[]; /** * Compact failure lines for TUI collapsed tool rows (edit→verify UX). * Returns [] when the result is green / not a verification tool body. */ export declare function extractVerificationFailurePreview(toolName: string, resultText: string, maxLines?: number): string[]; /** * One-line summary for TUI/CLI tool rows so edit→verify feedback is visible * without expanding the full tool result (coding-first UX). */ export declare function summarizeVerificationResult(toolName: string, resultText: string): string | null; //# sourceMappingURL=harness-tools.d.ts.map