diff --git a/src/server/trpc-adapter.ts b/src/server/trpc-adapter.ts index da01cf0..e4f84ff 100644 --- a/src/server/trpc-adapter.ts +++ b/src/server/trpc-adapter.ts @@ -9,6 +9,7 @@ import type { IncomingMessage, ServerResponse } from 'node:http'; import { fetchRequestHandler } from '@trpc/server/adapters/fetch'; import { appRouter, createContext } from '../trpc/index.js'; import type { EventBus } from '../events/index.js'; +import type { AgentManager } from '../agent/types.js'; /** * Options for creating the tRPC request handler. @@ -20,6 +21,8 @@ export interface TrpcAdapterOptions { serverStartedAt: Date; /** Number of managed processes */ processCount: number; + /** Agent manager for agent lifecycle operations (optional until full wiring) */ + agentManager?: AgentManager; } /** @@ -81,6 +84,7 @@ export function createTrpcHandler(options: TrpcAdapterOptions) { eventBus: options.eventBus, serverStartedAt: options.serverStartedAt, processCount: options.processCount, + agentManager: options.agentManager, }), }); diff --git a/src/trpc/context.ts b/src/trpc/context.ts index 75c29c4..5473d7e 100644 --- a/src/trpc/context.ts +++ b/src/trpc/context.ts @@ -6,6 +6,7 @@ */ import type { EventBus, DomainEvent } from '../events/types.js'; +import type { AgentManager } from '../agent/types.js'; // Re-export for convenience export type { EventBus, DomainEvent }; @@ -20,6 +21,8 @@ export interface TRPCContext { serverStartedAt: Date | null; /** Number of managed processes */ processCount: number; + /** Agent manager for agent lifecycle operations (optional until server wiring complete) */ + agentManager?: AgentManager; } /** @@ -29,6 +32,7 @@ export interface CreateContextOptions { eventBus: EventBus; serverStartedAt: Date | null; processCount: number; + agentManager?: AgentManager; } /** @@ -42,5 +46,6 @@ export function createContext(options: CreateContextOptions): TRPCContext { eventBus: options.eventBus, serverStartedAt: options.serverStartedAt, processCount: options.processCount, + agentManager: options.agentManager, }; }