Skip to content

Release v1.1.20 - #99

Open
roeai-release-bot[bot] wants to merge 1 commit into
mainfrom
release-sdk-python-1-1-3
Open

roeai-release-bot[bot] wants to merge 1 commit into
mainfrom
release-sdk-python-1-1-3

Conversation

@roeai-release-bot

@roeai-release-bot roeai-release-bot Bot commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

This PR updates the Python SDK for release 1.1.20.

Generated from:

  • roe-main release branch 1-1-3
  • roe-main commit 5f5f02b5949e4136ba6da76b68f632d65095a171

@greptile-apps

greptile-apps Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 2/5

[Medium impact] The changes reach callers using the Roe SDK workflow feature.

Do not merge until the SDK loads, workflow definitions can be read, and waiting runs avoid the timeout-and-retry failure.

Fix All in Claude CodeFindings

  1. P1 The SDK cannot load ▶
  2. P1 Workflow definitions cannot be read ▶
  3. P1 Waiting runs time out ▶
  4. P2 Agent-ID lookup is missing ▶

Summary

Release 1.1.20 adds workflow creation, versions, runs, batch runs, generated models, and examples.

  • The Python SDK lets callers create, version, run, and inspect workflows.
  • The SDK release metadata now says 1.1.20.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["from roe import RoeClient"] --> B["Generated API registry"]
    B --> C["WorkflowsAPI"]
    C --> D["Missing sdk.workflows_* imports"]
    D --> E["ImportError before any API call"]
    F["Workflow version response"] --> G["WorkflowDefinition.from_dict"]
    G --> H["Missing ConnectionStep model"]
    H --> I["ModuleNotFoundError"]
Loading

Reviews (1) · Last reviewed commit: "Release v1.1.20" · Reviewed by Greptile

Comment thread src/roe/api/workflows.py Outdated
Comment on lines +11 to +24
from roe._generated.api.sdk import (
workflows_create,
workflows_destroy,
workflows_list,
workflows_partial_update,
workflows_retrieve,
workflows_runs_batch_create,
workflows_runs_create,
workflows_runs_list,
workflows_runs_retrieve,
workflows_versions_create,
workflows_versions_list,
workflows_versions_retrieve,
workflows_versions_set_current_create,

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 The SDK cannot load

workflows.py imports endpoints from roe._generated.api.sdk, but the new files live under roe._generated.api.workflows. Also, workflows_create.py and workflows_versions_create.py are missing entirely. The registry loads this facade when RoeClient loads, so even from roe import RoeClient raises ImportError, including for users who never use workflows.

Fix the endpoint paths in openapi/wrappers.yml and regenerate all required endpoints.

Knowledge Base Used:

Fix in Claude Code

def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
from ..models.agent_step import AgentStep
from ..models.approval_block import ApprovalBlock
from ..models.connection_step import ConnectionStep

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Workflow definitions cannot be read

WorkflowDefinition.from_dict() imports ConnectionStep, but connection_step.py is missing. AgentStep also imports the missing input_mapping.py. Any workflow version with a non-null definition therefore raises ModuleNotFoundError, even when it contains only agent steps. A successful server response becomes an error instead of a usable workflow.

Generate and include both models. Fixing the facade imports alone will not make workflow retrieval work.

Knowledge Base Used: Generated API integration

Fix in Claude Code

Comment thread src/roe/api/workflows.py
Comment on lines +245 to +251
resp = request_json(
self._raw,
workflows_runs_create,
workflow_id,
body=body,
organization_id=self._org_id,
)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Waiting runs time out

run(wait=True) lets the server wait for 60 seconds but keeps the client's default timeout at exactly 60 seconds. A run that reaches the full wait window can time out before its response arrives. RoeRetryTransport then retries the same POST up to three times, after the server may already have started the run.

Give this call enough time to receive the response and prevent an uncertain run request from being replayed without protection against duplicate runs.

Knowledge Base Used: Request transport and pagination

Fix in Claude Code

Comment thread src/roe/api/workflows.py
Comment on lines +52 to +57
def list(
self,
page: int | None = None,
page_size: int | None = None,
search: str | None = None,
) -> PaginatedWorkflowList:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Agent-ID lookup is missing

WorkflowsAPI.list() omits the documented agent_id filter. The API describes this filter as the way to find a workflow from its deprecated agent ID, but client.workflows.list(agent_id=...) raises TypeError. Callers must use the raw endpoint for this lookup.

Add the optional filter to openapi/wrappers.yml and regenerate the facade.

Fix in Claude Code

@roeai-release-bot
roeai-release-bot Bot force-pushed the release-sdk-python-1-1-3 branch from 0fa82ae to 7c72661 Compare October 26, 2026 06:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant