feat(router,server): wire workflow inventory and project profile into router context per turn
This commit is contained in:
@@ -31,6 +31,8 @@ import com.correx.core.router.RouterProjector
|
||||
import com.correx.core.router.l3.InMemoryL3MemoryStore
|
||||
import com.correx.core.router.l3.L3MemoryStore
|
||||
import com.correx.core.router.model.RouterConfig
|
||||
import com.correx.core.router.model.WorkflowSummary
|
||||
import com.correx.core.events.types.SessionId
|
||||
import com.correx.core.sessions.projections.replay.DefaultEventReplayer
|
||||
import com.correx.core.tools.contract.ToolExecutor
|
||||
import com.correx.core.tools.registry.ToolRegistry
|
||||
@@ -291,12 +293,14 @@ object InfrastructureModule {
|
||||
tokenizer: Tokenizer? = null,
|
||||
embedder: Embedder = createNoopEmbedder(),
|
||||
l3MemoryStore: L3MemoryStore = createInMemoryL3MemoryStore(),
|
||||
workflowSummaryProvider: () -> List<WorkflowSummary> = { emptyList() },
|
||||
sessionProfileProvider: suspend (SessionId) -> String? = { null },
|
||||
): RouterFacade {
|
||||
val reducer = DefaultRouterReducer()
|
||||
val projector = RouterProjector(reducer)
|
||||
val replayer = DefaultEventReplayer(eventStore, projector)
|
||||
val repository = DefaultRouterRepository(replayer)
|
||||
val contextBuilder = DefaultRouterContextBuilder(config, tokenizer)
|
||||
return DefaultRouterFacade(repository, contextBuilder, inferenceRouter, eventStore, config, null, embedder, l3MemoryStore)
|
||||
return DefaultRouterFacade(repository, contextBuilder, inferenceRouter, eventStore, config, null, embedder, l3MemoryStore, workflowSummaryProvider, sessionProfileProvider)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user