diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentInteractionAdapter.kt b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentInteractionAdapter.kt index 48df7e71..be015bc3 100644 --- a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentInteractionAdapter.kt +++ b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentInteractionAdapter.kt @@ -1,6 +1,5 @@ package work.slhaf.partner.api.agent.runtime.interaction -import kotlinx.coroutines.runBlocking import work.slhaf.partner.api.agent.runtime.interaction.data.AgentInputData import work.slhaf.partner.api.agent.runtime.interaction.data.AgentOutputData import work.slhaf.partner.api.agent.runtime.interaction.flow.RunningFlowContext @@ -16,9 +15,7 @@ abstract class AgentInteractionAdapter< fun submit(inputData: I): O { val ctx = parseInputData(inputData) - val result = runBlocking { - runtime.submit(ctx) - } + val result = runtime.submit(ctx) return parseOutputData(result) } diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentRuntime.kt b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentRuntime.kt index c881be79..16db55e9 100644 --- a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentRuntime.kt +++ b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/runtime/interaction/AgentRuntime.kt @@ -32,11 +32,11 @@ object AgentRuntime { runningModules = buildRunningModules() } - suspend fun submit(context: C): C { + fun submit(context: C): C = runBlocking { val deferred = CompletableDeferred() channel.send(TurnRequest(context, deferred)) @Suppress("UNCHECKED_CAST") - return deferred.await() as C + (return@runBlocking deferred.await() as C) } private suspend fun executeTurn(