import type Database from 'better-sqlite3';
import { logger } from '../utils/logger.js';
import { recordCall } from '../utils/metrics.js';
export function auditToolCall(
db: Database.Database,
toolName: string,
sessionId: string | undefined,
inputSummary: string,
outputSummary: string,
durationMs: number
): void {
try {
db.prepare(
`INSERT INTO audit_log (tool_name, session_id, input_summary, output_summary, duration_ms)
VALUES (?, ?, ?, ?, ?)`
).run(toolName, sessionId ?? null, inputSummary, outputSummary, durationMs);
recordCall(toolName, durationMs);
} catch (err) {
logger.error({ err, toolName }, 'Failed to write audit log');
}
}