diff --git a/src/resources/extensions/sf/hook-emitter.ts b/src/resources/extensions/sf/hook-emitter.ts index eb681f02e..dab46fb9a 100644 --- a/src/resources/extensions/sf/hook-emitter.ts +++ b/src/resources/extensions/sf/hook-emitter.ts @@ -76,12 +76,12 @@ async function emitEvent( // Log warning once per session when hooks fire but _pi is missing // (#sf-moobmhx4-gk9g83) if (!_missingPiWarningLogged) { - _missingPiWarningLogged = true; - logWarning( - "hook-emitter", - "ExtensionAPI not set — hooks will not fire. Call setHookEmitter(pi) from registerSfExtension to enable.", - ); - } + _missingPiWarningLogged = true; + logWarning( + "hook", + "ExtensionAPI not set — hooks will not fire. Call setHookEmitter(pi) from registerSfExtension to enable.", + ); + } return undefined; } // Call emitExtensionEvent if available on the ExtensionAPI @@ -89,13 +89,13 @@ async function emitEvent( if (typeof emitter === "function") { try { return (await emitter.call(_pi, event)) as EventResult | undefined; - } catch (err) { - logWarning( - "hook-emitter", - `emitExtensionEvent failed for ${event.type}: ${err instanceof Error ? err.message : String(err)}`, - ); - return undefined; - } + } catch (err) { + logWarning( + "hook", + `emitExtensionEvent failed for ${event.type}: ${err instanceof Error ? err.message : String(err)}`, + ); + return undefined; + } } // emitExtensionEvent not available on this ExtensionAPI version return undefined; diff --git a/src/resources/extensions/sf/workflow-logger.ts b/src/resources/extensions/sf/workflow-logger.ts index 340892849..0527664f3 100644 --- a/src/resources/extensions/sf/workflow-logger.ts +++ b/src/resources/extensions/sf/workflow-logger.ts @@ -53,6 +53,7 @@ export type LogComponent = | "prompt" // Prompt construction and context injection | "dashboard" // Auto-dashboard rendering | "timer" // Auto-timers (idle watchdog, hard timeout) + | "hook" // Extension hook emitter (beforeCommit, beforePush, etc.) | "worktree" // Worktree lifecycle (create, sync, merge) | "command" // Slash command execution and maintenance | "parallel" // Parallel orchestrator and merge