| 1 | export interface TurnFileChange { |
| 2 | path: string; |
| 3 | kind: "create" | "modify" | "delete"; |
| 4 | added: number; |
| 5 | removed: number; |
| 6 | binary?: boolean; |
| 7 | modeOnly?: boolean; |
| 8 | uncounted?: boolean; |
| 9 | unavailable?: string; |
| 10 | patch?: string; |
| 11 | } |
| 12 | |
| 13 | export interface TurnChanges { |
| 14 | id?: string; |
| 15 | turn: number; |
| 16 | coverage: "complete" | "partial" | "unknown"; |
| 17 | files: TurnFileChange[]; |
| 18 | added: number; |
| 19 | removed: number; |
| 20 | reasons: string[]; |
| 21 | } |
| 22 | |
| 23 | export interface WireCompletionReceipt { |
| 24 | assessmentKind?: "facts"; |
| 25 | verdict: string; |
| 26 | diff?: TurnChanges; |
| 27 | interrupted?: boolean; |
| 28 | changes?: { path: string; reviewed: boolean }[]; |
| 29 | verifications?: { command: string; passed: boolean; stale?: boolean; interrupted?: boolean; toolCallId?: string; toolResultId?: string; exitCode?: number }[]; |
| 30 | gaps?: { kind: string; detail?: string }[]; |
| 31 | risks?: string[]; |
| 32 | } |
| 33 |