diff --git a/api/server/services/Endpoints/agents/initialize.js b/api/server/services/Endpoints/agents/initialize.js index a2f07c783f..36ddafc925 100644 --- a/api/server/services/Endpoints/agents/initialize.js +++ b/api/server/services/Endpoints/agents/initialize.js @@ -579,24 +579,19 @@ const initializeClient = async ({ req, res, signal, endpointOption }) => { defaultActiveOnShare, }, { - getAgent: db.getAgent, - checkPermission, - logViolation, - db: { - getFiles: db.getFiles, - getUserKey: db.getUserKey, - getMessages: db.getMessages, - getConvoFiles: db.getConvoFiles, - updateFilesUsage: db.updateFilesUsage, - getUserKeyValues: db.getUserKeyValues, - getUserCodeFiles: db.getUserCodeFiles, - getToolFilesByIds: db.getToolFilesByIds, - getCodeGeneratedFiles: db.getCodeGeneratedFiles, - filterFilesByAgentAccess, - listSkillsByAccess: db.listSkillsByAccess, - listAlwaysApplySkills: db.listAlwaysApplySkills, - getSkillByName: db.getSkillByName, - }, + getFiles: db.getFiles, + getUserKey: db.getUserKey, + getMessages: db.getMessages, + getConvoFiles: db.getConvoFiles, + updateFilesUsage: db.updateFilesUsage, + getUserKeyValues: db.getUserKeyValues, + getUserCodeFiles: db.getUserCodeFiles, + getToolFilesByIds: db.getToolFilesByIds, + getCodeGeneratedFiles: db.getCodeGeneratedFiles, + filterFilesByAgentAccess, + listSkillsByAccess: db.listSkillsByAccess, + listAlwaysApplySkills: db.listAlwaysApplySkills, + getSkillByName: db.getSkillByName, }, ); agentConfigs.set(agentId, config); diff --git a/api/server/services/Endpoints/agents/initialize.spec.js b/api/server/services/Endpoints/agents/initialize.spec.js index ca44be8122..2af23f1485 100644 --- a/api/server/services/Endpoints/agents/initialize.spec.js +++ b/api/server/services/Endpoints/agents/initialize.spec.js @@ -328,9 +328,15 @@ describe('initializeClient — subagent loading', () => { const subagentConfig = makeSubagentConfig(SUBAGENT_ID); let call = 0; - mockInitializeAgent.mockImplementation(() => - Promise.resolve(++call === 1 ? primaryConfig : subagentConfig), - ); + let subagentConvoFileIds; + mockInitializeAgent.mockImplementation(async (params, dbDeps) => { + call += 1; + if (call === 1) { + return primaryConfig; + } + subagentConvoFileIds = await dbDeps.getConvoFiles(params.conversationId); + return subagentConfig; + }); await initializeClient({ req: makeSubagentReq(), @@ -340,6 +346,10 @@ describe('initializeClient — subagent loading', () => { }); expect(mockInitializeAgent).toHaveBeenCalledTimes(2); + const subagentDbDeps = mockInitializeAgent.mock.calls[1][1]; + expect(subagentDbDeps.getConvoFiles).toBeInstanceOf(Function); + expect(subagentDbDeps.db).toBeUndefined(); + expect(subagentConvoFileIds).toEqual([]); /** The subagent's AgentConfig is attached to the primary for run.ts to * turn into `SubagentConfig[]` on the parent's `AgentInputs`. */