Skip to content

Release v1.1.2#60

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

Release v1.1.2#60
roeai-release-bot[bot] wants to merge 1 commit into
mainfrom
release-sdk-python-1-0-85

Conversation

@roeai-release-bot

Copy link
Copy Markdown
Contributor

This PR updates the Python SDK for release 1.1.2.

Generated from:

  • roe-main release branch 1-0-85
  • roe-main commit c912ec5a511f87eab2b1fe63f0de5ea22e7c8af4

@greptile-apps

greptile-apps Bot commented Jun 20, 2026

Copy link
Copy Markdown

Greptile Summary

This PR releases v1.1.2 of the Python SDK, adding a Knowledge Base API (13 new endpoints covering draft management, regeneration, finalization, and lens operations) and a new artifact-retrieval endpoint for agent jobs.

  • All low-level generated code for the Knowledge Base API (src/roe/_generated/api/knowledge_base/) and models are present, but no high-level KnowledgeBaseAPI class or RoeClient.knowledge_base property was added, so every KB example in SDK_EXAMPLES.md raises AttributeError.
  • Similarly, agents_jobs_artifacts_result_retrieve was generated but AgentJobsAPI.retrieve_artifact() was never added to agents.py, so that documented method is also broken at the public API level.

Confidence Score: 3/5

The generated code and models are correct, but two advertised features are completely unreachable from the public client — the KB API and the artifact-retrieval method both raise AttributeError on any call.

Both the Knowledge Base API (all 13 operations) and retrieve_artifact are documented in SDK_EXAMPLES.md, yet neither is wired into the public client. Releasing with this state ships a version where a significant portion of the advertised changelog simply doesn't work.

src/roe/api/agents.py (missing retrieve_artifact), src/roe/api/_generated_registry.py and src/roe/client.py (missing KnowledgeBaseAPI registration and property)

Important Files Changed

Filename Overview
src/roe/api/agents.py Unchanged in this PR, but the new retrieve_artifact endpoint is documented and expected here — the missing wrapper method means the feature is broken at the public API layer.
src/roe/api/_generated_registry.py Unchanged, but KnowledgeBaseAPI is absent from the registry and no corresponding wrapper class was added, leaving all documented KB endpoints inaccessible.
openapi/wrappers.yml Adds retrieve_artifact operation (path param named job_id) and the full knowledge_base API block (13 manual operations); job_id vs agent_job_id naming mismatch exists for the artifact endpoint.
src/roe/_generated/api/agents/agents_jobs_artifacts_result_retrieve.py New generated endpoint for fetching tool-result artifacts; uses agent_job_id parameter internally, inconsistent with wrapper config's job_id.
src/roe/_generated/api/agents/agents_jobs_cancel_all_create.py Updated to handle 200 response with AgentJobCancelAllResponse body instead of 204 no-content; public wrapper is unaffected since it discards the return value.
src/roe/_generated/api/knowledge_base/knowledge_base_create.py New generated endpoint for creating a knowledge base; well-structured with sync/async variants and proper request body handling.
src/roe/_generated/models/knowledge_base.py New model with full serialization/deserialization including datetime parsing via isoparse; looks correct.
src/roe/_generated/models/draft.py New model for atlas draft with optional pending_proposal and camelCase ↔ snake_case mapping; deserialization looks correct.
SDK_EXAMPLES.md Documents both retrieve_artifact and the entire Knowledge Base API, but neither is actually accessible yet — the example code raises AttributeError.
pyproject.toml Version bumped from 1.1.1 to 1.1.2 as expected for this release.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    Client["RoeClient"] --> AgentsAPI
    Client -.->|"missing property"| KBmissing["client.knowledge_base ❌"]
    AgentsAPI --> AgentJobsAPI
    AgentJobsAPI --> existing["retrieve_result / cancel / download_reference / ..."]
    AgentJobsAPI -.->|"missing method"| artifactMissing["retrieve_artifact ❌"]
    
    subgraph Generated [Generated low-level code added]
        KB_gen["_generated/api/knowledge_base/* (13 files)"]
        artifact_gen["agents_jobs_artifacts_result_retrieve.py"]
        models["New models: KnowledgeBase, Draft, DraftRef, ..."]
    end

    KBmissing -.-> KB_gen
    artifactMissing -.-> artifact_gen
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    Client["RoeClient"] --> AgentsAPI
    Client -.->|"missing property"| KBmissing["client.knowledge_base ❌"]
    AgentsAPI --> AgentJobsAPI
    AgentJobsAPI --> existing["retrieve_result / cancel / download_reference / ..."]
    AgentJobsAPI -.->|"missing method"| artifactMissing["retrieve_artifact ❌"]
    
    subgraph Generated [Generated low-level code added]
        KB_gen["_generated/api/knowledge_base/* (13 files)"]
        artifact_gen["agents_jobs_artifacts_result_retrieve.py"]
        models["New models: KnowledgeBase, Draft, DraftRef, ..."]
    end

    KBmissing -.-> KB_gen
    artifactMissing -.-> artifact_gen
Loading

Fix All in Claude Code

Reviews (1): Last reviewed commit: "Release v1.1.2" | Re-trigger Greptile

Comment thread openapi/wrappers.yml
Comment on lines 511 to +526
coerce: uuid
- kind: body
method_name: retrieve_artifact
docstring: ''
method: GET
path: /v1/agents/jobs/{agent_job_id}/artifacts/result/
endpoint_module: roe._generated.api.agents.agents_jobs_artifacts_result_retrieve
return_type: AgentJobArtifactResult
return_import: roe._generated.models.agent_job_artifact_result.AgentJobArtifactResult
parameters:
- name: job_id
location: path
annotation: str
coerce: uuid
- name: artifact_key
location: query

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 Path-parameter name mismatch: job_id vs agent_job_id

The retrieve_artifact operation in wrappers.yml declares the path parameter as name: job_id, but the generated endpoint function (agents_jobs_artifacts_result_retrieve.py) uses agent_job_id as the positional parameter name (to match the {agent_job_id} URL placeholder). The SDK example also uses job_id. When the high-level wrapper is eventually implemented, it will need to translate the public job_id argument to agent_job_id for the generated function — the mismatch is a latent trap if that translation is forgotten.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Claude Code

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