From eb1ee36f596276680e5be82f3849ac883dfc9ba8 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 20 Jan 2026 23:07:28 +0000 Subject: [PATCH] fix: relax diagnostic event typing (#1332) (thanks @steipete) --- src/infra/diagnostic-events.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/infra/diagnostic-events.ts b/src/infra/diagnostic-events.ts index 51edf7a3b..a5c6912db 100644 --- a/src/infra/diagnostic-events.ts +++ b/src/infra/diagnostic-events.ts @@ -141,6 +141,9 @@ export type DiagnosticEventPayload = | DiagnosticRunAttemptEvent | DiagnosticHeartbeatEvent; +type DiagnosticEventInput = + T extends DiagnosticEventPayload ? Omit : never; + let seq = 0; const listeners = new Set<(evt: DiagnosticEventPayload) => void>(); @@ -148,12 +151,14 @@ export function isDiagnosticsEnabled(config?: ClawdbotConfig): boolean { return config?.diagnostics?.enabled === true; } -export function emitDiagnosticEvent(event: Omit) { - const enriched: DiagnosticEventPayload = { +export function emitDiagnosticEvent( + event: DiagnosticEventInput, +) { + const enriched = { ...event, seq: (seq += 1), ts: Date.now(), - }; + } as DiagnosticEventPayload; for (const listener of listeners) { try { listener(enriched);