feat(04-04): add AgentManager to tRPC context
- Import AgentManager type into context.ts - Add optional agentManager field to TRPCContext interface - Add optional agentManager to CreateContextOptions - Update TrpcAdapterOptions with optional agentManager - Pass agentManager through to createContext in adapter
This commit is contained in:
@@ -9,6 +9,7 @@ import type { IncomingMessage, ServerResponse } from 'node:http';
|
|||||||
import { fetchRequestHandler } from '@trpc/server/adapters/fetch';
|
import { fetchRequestHandler } from '@trpc/server/adapters/fetch';
|
||||||
import { appRouter, createContext } from '../trpc/index.js';
|
import { appRouter, createContext } from '../trpc/index.js';
|
||||||
import type { EventBus } from '../events/index.js';
|
import type { EventBus } from '../events/index.js';
|
||||||
|
import type { AgentManager } from '../agent/types.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Options for creating the tRPC request handler.
|
* Options for creating the tRPC request handler.
|
||||||
@@ -20,6 +21,8 @@ export interface TrpcAdapterOptions {
|
|||||||
serverStartedAt: Date;
|
serverStartedAt: Date;
|
||||||
/** Number of managed processes */
|
/** Number of managed processes */
|
||||||
processCount: number;
|
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,
|
eventBus: options.eventBus,
|
||||||
serverStartedAt: options.serverStartedAt,
|
serverStartedAt: options.serverStartedAt,
|
||||||
processCount: options.processCount,
|
processCount: options.processCount,
|
||||||
|
agentManager: options.agentManager,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import type { EventBus, DomainEvent } from '../events/types.js';
|
import type { EventBus, DomainEvent } from '../events/types.js';
|
||||||
|
import type { AgentManager } from '../agent/types.js';
|
||||||
|
|
||||||
// Re-export for convenience
|
// Re-export for convenience
|
||||||
export type { EventBus, DomainEvent };
|
export type { EventBus, DomainEvent };
|
||||||
@@ -20,6 +21,8 @@ export interface TRPCContext {
|
|||||||
serverStartedAt: Date | null;
|
serverStartedAt: Date | null;
|
||||||
/** Number of managed processes */
|
/** Number of managed processes */
|
||||||
processCount: number;
|
processCount: number;
|
||||||
|
/** Agent manager for agent lifecycle operations (optional until server wiring complete) */
|
||||||
|
agentManager?: AgentManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -29,6 +32,7 @@ export interface CreateContextOptions {
|
|||||||
eventBus: EventBus;
|
eventBus: EventBus;
|
||||||
serverStartedAt: Date | null;
|
serverStartedAt: Date | null;
|
||||||
processCount: number;
|
processCount: number;
|
||||||
|
agentManager?: AgentManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -42,5 +46,6 @@ export function createContext(options: CreateContextOptions): TRPCContext {
|
|||||||
eventBus: options.eventBus,
|
eventBus: options.eventBus,
|
||||||
serverStartedAt: options.serverStartedAt,
|
serverStartedAt: options.serverStartedAt,
|
||||||
processCount: options.processCount,
|
processCount: options.processCount,
|
||||||
|
agentManager: options.agentManager,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user