Stabilize OpenClaw gateway queue tests

This commit is contained in:
Haitao Pan 2026-05-12 15:25:58 +08:00
parent 4084a340a8
commit 3cb1e80c20
2 changed files with 13 additions and 2 deletions

View File

@ -273,7 +273,9 @@ extension AppControllerDesktopThreadBinding on AppController {
final ownerScope = await ensureDesktopThreadOwnerScopeInternal(
normalizedSessionKey,
);
final latestRecord = assistantThreadRecordsInternal[normalizedSessionKey];
final latestRecord =
taskThreadForSessionInternal(normalizedSessionKey) ??
assistantThreadRecordsInternal[normalizedSessionKey];
final snapshot = resolveDesktopThreadBindingSnapshotInternal(
defaultExecutionTarget: settings.assistantExecutionTarget,
executionTargetOverride: executionTarget,
@ -285,7 +287,9 @@ extension AppControllerDesktopThreadBinding on AppController {
ownerScope: ownerScope,
existingBinding: snapshot.record?.workspaceBinding,
);
final currentRecord = assistantThreadRecordsInternal[normalizedSessionKey];
final currentRecord =
taskThreadForSessionInternal(normalizedSessionKey) ??
assistantThreadRecordsInternal[normalizedSessionKey];
final existingLifecycle =
currentRecord?.lifecycleState ??
snapshot.record?.lifecycleState ??

View File

@ -2045,6 +2045,13 @@ Future<void> _selectGatewaySession(
await controller.setAssistantExecutionTarget(
AssistantExecutionTarget.gateway,
);
await controller.setAssistantProvider(SingleAgentProvider.openclaw);
controller.upsertTaskThreadInternal(
sessionKey,
executionTarget: AssistantExecutionTarget.gateway,
selectedProvider: SingleAgentProvider.openclaw,
selectedProviderSource: ThreadSelectionSource.explicit,
);
}
Future<void> _waitForThreadLifecycleStatus(