@@ -34,8 +34,6 @@ scenario:
3434 requiredProviderMode : mock-openai
3535 conversationId : native-stop-target
3636 senderId : qa-native-operator
37- warmupPrompt : " Reply exactly: QA-NATIVE-STOP-WARMUP-OK"
38- warmupMarker : QA-NATIVE-STOP-WARMUP-OK
3937 delayedPrompt : " Subagent recovery worker native command target proof. Wait until stopped."
4038 abortReplyNeedle : Agent was aborted
4139 recoveryMarker : QA-NATIVE-STOP-RECOVERY-OK
5654 - ref : env
5755 - 60000
5856 - resetTransport : true
59- # Gateway health intentionally precedes asynchronous provider/model warmups.
60- # Finish one real turn before timing active-run admission on a cold isolated worker.
61- - sendInbound :
62- conversation :
63- id :
64- expr : config.conversationId
65- kind : direct
66- senderId :
67- expr : config.senderId
68- senderName : QA Native Operator
69- text :
70- expr : config.warmupPrompt
71- - waitForOutbound :
72- conversation :
73- id :
74- expr : config.conversationId
75- kind : direct
76- textIncludes :
77- expr : config.warmupMarker
78- timeoutMs : 15000
79- - resetTransport : true
8057 - sendInbound :
8158 conversation :
8259 id :
@@ -118,15 +95,6 @@ flow:
11895 expr : config.abortReplyNeedle
11996 timeoutMs : 15000
12097 saveAs : abortReply
121- # The native acknowledgement confirms command handling, not session-lane release.
122- # Wait for the aborted run to clear before proving that the next turn is unblocked.
123- - call : waitForCondition
124- args :
125- - lambda :
126- async : true
127- expr : " env.gateway.call('sessions.list', {}).then((result) => result.sessions?.find((session) => session.key === activeSession.key && session.hasActiveRun !== true))"
128- - 30000
129- - 100
13098 - sendInbound :
13199 conversation :
132100 id :
@@ -146,6 +114,7 @@ flow:
146114 ref : startIndex
147115 textIncludes :
148116 expr : config.recoveryMarker
149- timeoutMs : 15000
117+ timeoutMs :
118+ expr : liveTurnTimeoutMs(env, 30000)
150119 saveAs : recoveryReply
151120 detailsExpr : " `native command reply=${abortReply.text}; recovery reply=${recoveryReply.text}`"
0 commit comments