summaryrefslogtreecommitdiffhomepage
path: root/packages/kernel/src/runtime/run-turn.ts
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-07-01 03:30:42 +0900
committerAdam Malczewski <[email protected]>2026-07-01 03:30:42 +0900
commit566c64033ad79538f9208fc3ef9477cd8a58f7da (patch)
tree0919ed136d8f219880440ab7a007760dc62b1b31 /packages/kernel/src/runtime/run-turn.ts
parent81e9e7ee9064b98e06a5f947c67a6ec73b7e578d (diff)
parentebb29b1e5b929493315469fcbd5eca6f13bd1c32 (diff)
downloaddispatch-566c64033ad79538f9208fc3ef9477cd8a58f7da.tar.gz
dispatch-566c64033ad79538f9208fc3ef9477cd8a58f7da.zip
Merge branch 'feature/in-flight-compaction' into predev
Diffstat (limited to 'packages/kernel/src/runtime/run-turn.ts')
-rw-r--r--packages/kernel/src/runtime/run-turn.ts6
1 files changed, 4 insertions, 2 deletions
diff --git a/packages/kernel/src/runtime/run-turn.ts b/packages/kernel/src/runtime/run-turn.ts
index 76e2edf..8f68865 100644
--- a/packages/kernel/src/runtime/run-turn.ts
+++ b/packages/kernel/src/runtime/run-turn.ts
@@ -720,8 +720,10 @@ export async function runTurn(input: RunTurnInput): Promise<RunTurnResult> {
// and append them after the tool results, before the next call.
// The kernel owns no queue and names no feature — it just calls
// the callback and appends. Emits nothing (caller emits the
- // `steering` AgentEvent in its own wrapper).
- const steering = input.drainSteering?.() ?? [];
+ // `steering` AgentEvent in its own wrapper). The callback MAY
+ // return a Promise (the shell persists the injected messages
+ // before returning) — `await` handles both sync and async.
+ const steering = (await input.drainSteering?.()) ?? [];
for (const msg of steering) {
messages.push(msg);
}