# BenchmarkReport

**Kind:** Interface

**Source:** [`atloria-monorepo/libs/agent-core/src/benchmark/types.ts`](https://github.com/sherkety/atloria/blob/main/atloria-monorepo/libs/agent-core/src/benchmark/types.ts#L214)

Summary of a complete benchmark run.

## Properties

| Property | Type |
|---|---|
| `suite` | `BenchmarkTask['suite']` |
| `model` | `string` |
| `timestamp` | `string` |
| `totalTasks` | `number` |
| `passedTasks` | `number` |
| `passRate` | `number` |
| `totalDurationMs` | `number` |
| `totalTokens` | `{ input: number; output: number; total: number }` |
| `totalCostUsd` | `number` |
| `avgCostPerTask` | `number` |
| `byDifficulty` | `Record<string, { total: number; passed: number; rate: number }>` |
| `byLanguage` | `Record<string, { total: number; passed: number; rate: number }>` |
| `results` | `TaskResult[]` |
| `toolStats` | `Record<string, { count: number; avgDurationMs: number }>` |
| `failureBreakdown` | `Record<string, number>` |
| `byRepo` | `Record<string, { total: number; passed: number; rate: number; topFailure?: string }>` |
| `cumulativePassAtK` | `Record<number, { passed: number; rate: number }>` |
| `marginalGains` | `Record<string, number>` |
| `passAtK` | `{ k: number; passed: number; rate: number }` |
| `passAtKResults` | `PassAtKResult[]` |
| `costEfficiency` | `{
    firstPassSuccess: { avgTokens: number; avgDurationMs: number; avgTurns: number; count: number };
    recoveredSuccess: { avgTokens: number; avgDurationMs: number; avgTurns: number; count: number };
    finalFailure: { avgTokens: number; avgDurationMs: number; avgTurns: number; count: number };
  }` |
| `fileLocalizationStats` | `{
    avgRecall: number;
    avgPrecision: number;
    /** Tasks with >0 overlap that still failed */
    correctAreaButFailed: number;
    /** Tasks with 0 overlap */
    zeroOverlap: number;
  }` |
