feat(rah-light): remove delegateToWiseRAH orchestration tool

- Deleted src/tools/orchestration/delegateToWiseRAH.ts
- Removed delegateToWiseRAH from registry.ts and groups.ts
- Deleted tests/evals/scenarios/delegate-wise.ts and delegate-mini.ts
- Updated tests/evals/scenarios/index.ts to remove deleted test imports

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
“BeeRad”
2026-01-29 15:20:35 +11:00
co-authored by Claude Opus 4.5
parent fa96c238c2
commit 844a9b57ab
6 changed files with 0 additions and 74 deletions
-1
View File
@@ -45,7 +45,6 @@ export const TOOL_GROUP_ASSIGNMENTS: Record<string, string> = {
// Orchestration: Workflows and reasoning (orchestrator only) // Orchestration: Workflows and reasoning (orchestrator only)
webSearch: 'orchestration', webSearch: 'orchestration',
think: 'orchestration', think: 'orchestration',
delegateToWiseRAH: 'orchestration',
executeWorkflow: 'orchestration', executeWorkflow: 'orchestration',
listWorkflows: 'orchestration', listWorkflows: 'orchestration',
getWorkflow: 'orchestration', getWorkflow: 'orchestration',
-3
View File
@@ -16,7 +16,6 @@ import { queryDimensionNodesTool } from '../database/queryDimensionNodes';
import { searchContentEmbeddingsTool } from '../other/searchContentEmbeddings'; import { searchContentEmbeddingsTool } from '../other/searchContentEmbeddings';
import { webSearchTool } from '../other/webSearch'; import { webSearchTool } from '../other/webSearch';
import { thinkTool } from '../other/think'; import { thinkTool } from '../other/think';
import { delegateToWiseRAHTool } from '../orchestration/delegateToWiseRAH';
import { executeWorkflowTool } from '../orchestration/executeWorkflow'; import { executeWorkflowTool } from '../orchestration/executeWorkflow';
import { listWorkflowsTool } from '../orchestration/listWorkflows'; import { listWorkflowsTool } from '../orchestration/listWorkflows';
import { getWorkflowTool } from '../orchestration/getWorkflow'; import { getWorkflowTool } from '../orchestration/getWorkflow';
@@ -42,7 +41,6 @@ const CORE_TOOLS: Record<string, any> = {
const ORCHESTRATION_TOOLS: Record<string, any> = { const ORCHESTRATION_TOOLS: Record<string, any> = {
webSearch: webSearchTool, webSearch: webSearchTool,
think: thinkTool, think: thinkTool,
delegateToWiseRAH: delegateToWiseRAHTool,
executeWorkflow: executeWorkflowTool, executeWorkflow: executeWorkflowTool,
listWorkflows: listWorkflowsTool, listWorkflows: listWorkflowsTool,
getWorkflow: getWorkflowTool, getWorkflow: getWorkflowTool,
@@ -98,7 +96,6 @@ const ORCHESTRATOR_TOOL_NAMES = Array.from(new Set([
const EXECUTOR_TOOL_NAMES = [ const EXECUTOR_TOOL_NAMES = [
...Object.keys(CORE_TOOLS), ...Object.keys(CORE_TOOLS),
...Object.keys(ORCHESTRATION_TOOLS).filter(name => ...Object.keys(ORCHESTRATION_TOOLS).filter(name =>
name !== 'delegateToWiseRAH' &&
name !== 'executeWorkflow' name !== 'executeWorkflow'
), ),
...Object.keys(EXECUTION_TOOLS), ...Object.keys(EXECUTION_TOOLS),
@@ -1,36 +0,0 @@
import { tool } from 'ai';
import { z } from 'zod';
import { WorkflowExecutor } from '@/services/agents/workflowExecutor';
import { RequestContext } from '@/services/context/requestContext';
export const delegateToWiseRAHTool = tool({
description: 'Delegate complex workflows to workflow executor',
inputSchema: z.object({
task: z.string().describe('Complex workflow description: what needs to be planned and executed'),
context: z.array(z.string()).max(8).default([]).describe('Optional context: node IDs, URLs, or key information the planner needs'),
expectedOutcome: z.string().optional().describe('Optional: what final result or format you expect in the summary'),
workflowKey: z.string().optional().describe('Optional: workflow key if invoked via executeWorkflow'),
workflowNodeId: z.number().optional().describe('Optional: target node ID for workflow'),
}),
execute: async ({ task, context = [], expectedOutcome, workflowKey, workflowNodeId }) => {
const requestContext = RequestContext.get();
console.log('[delegateToWiseRAH] Current traceId:', requestContext.traceId);
const sessionId = `workflow_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
const execution = await WorkflowExecutor.execute({
sessionId,
task,
context,
expectedOutcome,
traceId: requestContext.traceId,
parentChatId: requestContext.parentChatId,
workflowKey,
workflowNodeId,
});
// Return a simple string that Claude can directly use in conversation
const summary = execution?.summary || 'Workflow completed but no summary returned.';
return `Workflow (session ${sessionId.split('_').pop()}) completed:\n\n${summary}`;
},
});
-15
View File
@@ -1,15 +0,0 @@
import { Scenario } from '../types';
export const scenario: Scenario = {
id: 'delegate-mini',
name: 'Delegate to Mini RAH',
description: 'Ask the system to delegate a short task to mini helper.',
tools: ['delegateToMiniRAH'],
input: {
message: 'Delegate to mini RAH: summarize my notes on plaintext productivity in 3 bullets.',
mode: 'hard',
},
expect: {
toolsCalledSoft: ['delegateToMiniRAH'],
},
};
-15
View File
@@ -1,15 +0,0 @@
import { Scenario } from '../types';
export const scenario: Scenario = {
id: 'delegate-wise',
name: 'Delegate to Wise RAH',
description: 'Ask the system to delegate a research comparison task.',
tools: ['delegateToWiseRAH'],
input: {
message: 'Delegate to wise RAH: compare SQLite vs markdown storage for PKM in 5 bullets.',
mode: 'hard',
},
expect: {
toolsCalledSoft: ['delegateToWiseRAH'],
},
};
-4
View File
@@ -8,8 +8,6 @@ import { scenario as createEdge } from './create-edge';
import { scenario as queryDimensions } from './query-dimensions'; import { scenario as queryDimensions } from './query-dimensions';
import { scenario as getDimension } from './get-dimension'; import { scenario as getDimension } from './get-dimension';
import { scenario as dimensionLifecycle } from './dimension-lifecycle'; import { scenario as dimensionLifecycle } from './dimension-lifecycle';
import { scenario as delegateMini } from './delegate-mini';
import { scenario as delegateWise } from './delegate-wise';
import { scenario as youtubeExtract } from './youtube-extract'; import { scenario as youtubeExtract } from './youtube-extract';
import { scenario as websiteExtract } from './website-extract'; import { scenario as websiteExtract } from './website-extract';
import { scenario as paperExtract } from './paper-extract'; import { scenario as paperExtract } from './paper-extract';
@@ -25,8 +23,6 @@ export const scenarios = [
dimensionLifecycle, dimensionLifecycle,
hardModeQuery, hardModeQuery,
workflowIntegrate, workflowIntegrate,
delegateMini,
delegateWise,
youtubeExtract, youtubeExtract,
websiteExtract, websiteExtract,
paperExtract, paperExtract,