(event: ToolEvent)
| 149 | } |
| 150 | |
| 151 | recordTool(event: ToolEvent): void { |
| 152 | const db = this.ensureOpen(); |
| 153 | if (!db) return; |
| 154 | try { |
| 155 | db.prepare( |
| 156 | `INSERT INTO tool_events (ts, cwd, tool, duration_ms, success, error_class) VALUES (?, ?, ?, ?, ?, ?)`, |
| 157 | ).run(event.timestamp, this.maskCwd(event.cwd), event.tool, event.durationMs, event.success ? 1 : 0, event.errorClass ?? null); |
| 158 | } catch (e: any) { |
| 159 | logger.debug('Telemetry recordTool failed', { err: e?.message }); |
| 160 | } |
| 161 | } |
| 162 | |
| 163 | recordLlm(event: LlmEvent): void { |
| 164 | const db = this.ensureOpen(); |
nothing calls this directly
no test coverage detected