Problem
While running an extension command from the composer, Howcode can show this inline error:
Timed out waiting for desktop service method piThreads.handleDesktopAction.
The screenshot showed this while /review was being run from the composer. The extension/action appears to be long-running enough that the desktop service request timeout fires before the extension flow has actually finished.
Why this matters
Extension actions can legitimately take a while, especially review-style commands or native tools that do substantial work. Timing out the desktop service call makes the extension look broken even if the underlying action may still be running or recoverable.
We should revisit why this path has a timeout at all, and whether piThreads.handleDesktopAction should be modeled as a long-running action instead of a short request/response RPC.
Expected behavior
- Running an extension command should not fail just because the action takes longer than a generic desktop service timeout.
- Long-running extension/native actions should surface progress/running state and complete/fail based on the actual action result.
- If a timeout remains necessary for transport safety, it should not be applied blindly to user-visible long-running extension actions.
Notes / likely areas to inspect
piThreads.handleDesktopAction
- desktop service request timeout handling
- extension command execution from composer
- native extension /
/review action flow
Acceptance criteria
- Extension actions that take longer than the current desktop service timeout no longer show
Timed out waiting for desktop service method piThreads.handleDesktopAction as the primary failure.
- The timeout policy for long-running desktop actions is explicit and documented in code.
- Running extension/native actions still have a clear failure path for genuinely stuck or disconnected desktop service calls.
Problem
While running an extension command from the composer, Howcode can show this inline error:
The screenshot showed this while
/reviewwas being run from the composer. The extension/action appears to be long-running enough that the desktop service request timeout fires before the extension flow has actually finished.Why this matters
Extension actions can legitimately take a while, especially review-style commands or native tools that do substantial work. Timing out the desktop service call makes the extension look broken even if the underlying action may still be running or recoverable.
We should revisit why this path has a timeout at all, and whether
piThreads.handleDesktopActionshould be modeled as a long-running action instead of a short request/response RPC.Expected behavior
Notes / likely areas to inspect
piThreads.handleDesktopAction/reviewaction flowAcceptance criteria
Timed out waiting for desktop service method piThreads.handleDesktopActionas the primary failure.