Repository navigation
feat: add public Files API methods - #68
HareeshBahuleyan wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The canonical endpoint manifest must classify the newly wrapped Files endpoints as covered.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Adds public synchronous and asynchronous Files API support to the SDK shell.
Changes:
- Adds upload, list, retrieve, download, and delete methods.
- Uses raw HTTP for multipart uploads and binary downloads.
- Adds documentation and unit coverage.
File summaries
| File | Description |
|---|---|
src/otari/client.py |
Adds synchronous Files API methods. |
src/otari/async_client.py |
Adds asynchronous Files API methods. |
tests/unit/test_client.py |
Tests synchronous file operations. |
tests/unit/test_async_client.py |
Tests asynchronous file operations. |
README.md |
Documents Files API usage. |
Review details
- Files reviewed: 5/5 changed files
- Comments generated: 1
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Follow-up from reviewing PR head Findings to address before merging
Gateway alignmentThe five operations otherwise match the current gateway contract: multipart upload, metadata listing/retrieval, binary download, and deletion. User/workspace scoping remains server-enforced. Standalone-only documentation is still appropriate: Files routes are absent from hybrid and hosted modes. The resolved manifest comment needs no further action in this SDK PR. The gateway copies one canonical manifest into all four SDK repositories, so marking Files endpoints universally covered would overstate shell coverage before the cross-SDK rollout. Verification
|
Why
The gateway Files API exists, but callers have to reach into the generated client because the supported SDK shell does not expose it.
What changed
Added sync and async methods to upload, list, retrieve, download, and delete files. Multipart uploads and binary downloads use raw HTTP transport, with SDK error mapping, documentation, and unit coverage.
Notes
gpt-5.6-sol.Ref: mozilla-ai/otari#177