Skip to content

feat: add interrupt timeout triggers#1769

Open
radu-mocanu wants to merge 1 commit into
feat/platform-wait-until-interruptfrom
feat/platform-interrupt-timeouts
Open

feat: add interrupt timeout triggers#1769
radu-mocanu wants to merge 1 commit into
feat/platform-wait-until-interruptfrom
feat/platform-interrupt-timeouts

Conversation

@radu-mocanu

@radu-mocanu radu-mocanu commented Jun 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add timeout support to typed interrupt models
  • create timer races for timed interrupts through create_triggers
  • expose helpers for detecting and raising on timeout resume values

Depends on: #1768
Depends on: UiPath/uipath-runtime-python#138

Development Packages

uipath-platform

[project]
dependencies = [
  # Exact version (copy-paste ready):
  "uipath-platform==0.1.80.dev1017696997",

  # Any version from this PR (uncomment to use a range instead):
  # "uipath-platform>=0.1.80.dev1017690000,<0.1.80.dev1017700000",
]

[[tool.uv.index]]
name = "testpypi"
url = "https://test.pypi.org/simple/"
publish-url = "https://test.pypi.org/legacy/"
explicit = true

[tool.uv.sources]
uipath-platform = { index = "testpypi" }

uipath

[project]
dependencies = [
  # Exact version (copy-paste ready):
  "uipath==2.12.0.dev1017696997",

  # Any version from this PR (uncomment to use a range instead):
  # "uipath>=2.12.0.dev1017690000,<2.12.0.dev1017700000",
]

[[tool.uv.index]]
name = "testpypi"
url = "https://test.pypi.org/simple/"
publish-url = "https://test.pypi.org/legacy/"
explicit = true

[tool.uv.sources]
uipath = { index = "testpypi" }
uipath-platform = { index = "testpypi" }

[tool.uv]
override-dependencies = ["uipath-platform==0.1.80.dev1017696997"]

Copilot AI review requested due to automatic review settings June 27, 2026 21:43
@github-actions github-actions Bot added test:uipath-langchain Triggers tests in the uipath-langchain-python repository test:uipath-integrations labels Jun 27, 2026
@radu-mocanu radu-mocanu added the build:dev Create a dev build from the pr label Jun 27, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds first-class timeout support for typed interrupt suspend values in uipath-platform, enabling “race” semantics where an interrupt can resume either from its normal trigger or from a timer-based timeout, and exposes helpers to detect/raise on timeout resume values.

Changes:

  • Introduces InterruptTimeoutMixin and adds an optional timeout field to existing interrupt models.
  • Adds timeout resume-value helpers (get_timeout, is_timeout, assert_no_timeout, UiPathTimeoutError) and integrates timeout handling into resume-trigger reading/creation via create_triggers().
  • Bumps package versions and updates uipath’s dependency on uipath-platform.

Reviewed changes

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

Show a summary per file
File Description
packages/uipath/uv.lock Updates locked editable package versions for uipath and uipath-platform.
packages/uipath/pyproject.toml Bumps uipath version and updates minimum uipath-platform dependency.
packages/uipath-platform/uv.lock Updates locked editable package version for uipath-platform.
packages/uipath-platform/src/uipath/platform/resume_triggers/_timeout.py Adds timeout metadata parsing + UiPathTimeoutError helpers for timeout resume values.
packages/uipath-platform/src/uipath/platform/resume_triggers/_protocol.py Adds create_triggers() timeout racing and timeout-aware TIMER trigger reading.
packages/uipath-platform/src/uipath/platform/resume_triggers/init.py Exposes timeout helper APIs at the package level.
packages/uipath-platform/src/uipath/platform/common/interrupt_models.py Introduces InterruptTimeoutMixin and applies it to interrupt models.
packages/uipath-platform/pyproject.toml Bumps uipath-platform version.

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

Comment thread packages/uipath-platform/src/uipath/platform/resume_triggers/_protocol.py Outdated
@github-actions

Copy link
Copy Markdown

🚨 Heads up: uipath-integrations cross-tests are FAILING 🚨

Your changes may break one or more integrations in uipath-integrations-python:

  • uipath-openai-agents
  • uipath-google-adk
  • uipath-agent-framework
  • uipath-llamaindex
  • uipath-pydantic-ai

⚠️ These checks are NOT enforced by branch protection rules. Please review the failures before merging.

🔍 Inspect the failed run →

@radu-mocanu radu-mocanu force-pushed the feat/platform-wait-until-interrupt branch 2 times, most recently from 37b0070 to bb72c62 Compare June 27, 2026 22:25
@radu-mocanu radu-mocanu force-pushed the feat/platform-interrupt-timeouts branch from 23769b2 to b476b03 Compare June 27, 2026 22:29
@github-actions

Copy link
Copy Markdown

🚨 Heads up: uipath-langchain cross-tests are FAILING 🚨

Your changes may break the uipath-langchain-python integration.

⚠️ These checks are NOT enforced by branch protection rules. Please review the failures before merging.

🔍 Inspect the failed run →

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build:dev Create a dev build from the pr test:uipath-integrations test:uipath-langchain Triggers tests in the uipath-langchain-python repository

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants