refactor: wave 1 - extract leaf modules, rename catch-all files, split index.ts hooks
- Split 25+ index.ts files into hook.ts + extracted modules - Rename all catch-all utils.ts/helpers.ts to domain-specific names - Split src/tools/lsp/ into ~15 focused modules - Split src/tools/delegate-task/ into ~18 focused modules - Separate shared types from implementation - 155 files changed, 60+ new files created - All typecheck clean, 61 tests pass
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import { BLOCKED_TOOLS, REPLACEMENT_MESSAGE } from "./constants";
|
||||
|
||||
export interface TasksTodowriteDisablerConfig {
|
||||
experimental?: {
|
||||
task_system?: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
export function createTasksTodowriteDisablerHook(
|
||||
config: TasksTodowriteDisablerConfig,
|
||||
) {
|
||||
const isTaskSystemEnabled = config.experimental?.task_system ?? false;
|
||||
|
||||
return {
|
||||
"tool.execute.before": async (
|
||||
input: { tool: string; sessionID: string; callID: string },
|
||||
_output: { args: Record<string, unknown> },
|
||||
) => {
|
||||
if (!isTaskSystemEnabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
const toolName = input.tool as string;
|
||||
if (
|
||||
BLOCKED_TOOLS.some(
|
||||
(blocked) => blocked.toLowerCase() === toolName.toLowerCase(),
|
||||
)
|
||||
) {
|
||||
throw new Error(REPLACEMENT_MESSAGE);
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
@@ -1,29 +1,2 @@
|
||||
import { BLOCKED_TOOLS, REPLACEMENT_MESSAGE } from "./constants";
|
||||
|
||||
export interface TasksTodowriteDisablerConfig {
|
||||
experimental?: {
|
||||
task_system?: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
export function createTasksTodowriteDisablerHook(
|
||||
config: TasksTodowriteDisablerConfig,
|
||||
) {
|
||||
const isTaskSystemEnabled = config.experimental?.task_system ?? false;
|
||||
|
||||
return {
|
||||
"tool.execute.before": async (
|
||||
input: { tool: string; sessionID: string; callID: string },
|
||||
output: { args: Record<string, unknown> },
|
||||
) => {
|
||||
if (!isTaskSystemEnabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
const toolName = input.tool as string;
|
||||
if (BLOCKED_TOOLS.some((blocked) => blocked.toLowerCase() === toolName.toLowerCase())) {
|
||||
throw new Error(REPLACEMENT_MESSAGE);
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
export { createTasksTodowriteDisablerHook } from "./hook";
|
||||
export type { TasksTodowriteDisablerConfig } from "./hook";
|
||||
|
||||
Reference in New Issue
Block a user