Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -280,9 +280,20 @@ def step_unknown(self) -> None:
async def _show_prompt_request(self, request: PromptRequest) -> None:
user_response = await self.send_prompt_request(request)

if self.test_socket and user_response.response_str:
response = f"{user_response.response_str}\n".encode()
self.test_socket._sock.sendall(response) # type: ignore[attr-defined]
if self.test_socket:
# Always send something to unblock the SDK's input() call.
# On timeout/cancel response_str is None, so fall back to default_value
# or an empty line — otherwise the SDK process hangs waiting on stdin.
reply = (
user_response.response_str
or getattr(request, "default_value", None)
or ""
)
self.test_socket._sock.sendall( # type: ignore[attr-defined]
f"{reply}\n".encode()
)

self.__evaluate_user_response_for_errors(user_response)
Comment thread
rquidute marked this conversation as resolved.

async def show_prompt(
self,
Expand Down Expand Up @@ -318,13 +329,7 @@ async def show_image_prompt(self, msg: str, img_hex_str: str) -> None:
timeout=USER_PROMPT_TIMEOUT,
image_hex_str=img_hex_str,
)

user_response = await self.send_prompt_request(prompt_request)
self.__evaluate_user_response_for_errors(user_response)

if self.test_socket and user_response.response_str:
response = f"{user_response.response_str}\n".encode()
self.test_socket._sock.sendall(response) # type: ignore[attr-defined]
await self._show_prompt_request(prompt_request)

async def show_push_av_stream_prompt(self, msg: str) -> None:
options = {
Expand Down
Loading