Skip to content

feat: add detached debug bridge for non-interactive runs#106

Merged
radu-mocanu merged 1 commit intomainfrom
feat/detached-debug-bridge
Apr 23, 2026
Merged

feat: add detached debug bridge for non-interactive runs#106
radu-mocanu merged 1 commit intomainfrom
feat/detached-debug-bridge

Conversation

@radu-mocanu
Copy link
Copy Markdown
Collaborator

@radu-mocanu radu-mocanu commented Apr 23, 2026

Summary

  • new DetachedDebugBridge implementation of UiPathDebugProtocol that no-ops all emits, returns immediately from wait_for_resume so the runtime's initial paused gate releases, and blocks forever in wait_for_terminate so polling loops don't falsely signal quit
  • unit tests for the bridge plus an integration test asserting UiPathDebugRuntime(..., debug_bridge=DetachedDebugBridge()) streams and executes to completion without blocking

Why

some executors run under the debug path to get bindings and state streaming, but cannot speak the signalr debug protocol. today they wedge on the 60s wait for the initial resume command. this gives the cli side something to wire up (via an upcoming attach=none flag) so those executors can opt out of interactive debug without losing the rest of the debug command's behavior.

Copilot AI review requested due to automatic review settings April 23, 2026 10:44
@radu-mocanu radu-mocanu requested a review from a team as a code owner April 23, 2026 10:44
@radu-mocanu radu-mocanu force-pushed the feat/detached-debug-bridge branch from afeabc1 to 354d72c Compare April 23, 2026 10:47
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a “detached” debug bridge implementation intended for non-interactive debug runs, so the runtime can keep emitting debug events/state without requiring an attached debugger protocol/handshake.

Changes:

  • Bump uipath-runtime version to 0.10.1 (and update lockfile).
  • Add DetachedDebugBridge (no-op emitters) and NoDebuggerAttachedError.
  • Add unit tests covering the detached bridge’s no-op behavior and error-raising waits.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
pyproject.toml Version bump to 0.10.1.
uv.lock Lockfile update for uipath-runtime version bump.
src/uipath/runtime/debug/exception.py Introduces NoDebuggerAttachedError.
src/uipath/runtime/debug/detached.py Adds DetachedDebugBridge implementation.
src/uipath/runtime/debug/__init__.py Exports the new bridge and error type.
tests/test_detached_debug_bridge.py Adds tests for the detached bridge behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/uipath/runtime/debug/detached.py Outdated
Comment thread tests/test_detached_debug_bridge.py
@radu-mocanu radu-mocanu force-pushed the feat/detached-debug-bridge branch from 354d72c to 94566b6 Compare April 23, 2026 10:53
@radu-mocanu radu-mocanu force-pushed the feat/detached-debug-bridge branch from effa435 to 564ce65 Compare April 23, 2026 11:23
@radu-mocanu radu-mocanu merged commit 8dbc70f into main Apr 23, 2026
87 of 88 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants