PDFCLOUD-6233 Add pdfRest client API skill - #44
Draft
datalogics-kam wants to merge 3 commits into
Draft
Conversation
- Add a skill for forward-compatible typed client API changes. - Require documented API contracts, model-first serialization, and sync/async unit and live coverage. Assisted-by: Codex
✅ Deploy Preview for pdfrest-python ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
- Specify discriminator, boundary, and resource validation coverage - Require timeout and metadata-dependency checks per transport Assisted-by: Codex
- Define the public color input and internal wire-field routing pattern - Require RGB, CMYK, and invalid-channel coverage Assisted-by: Codex
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PDFCLOUD-6233
Why this change
Adding or evolving SDK API helpers currently requires contributors to reconstruct contract discovery, compatibility rules, Pydantic wire transformations, and live-test expectations from several repository sources. This skill makes that path explicit so API work stays consistent and does not accidentally break existing callers.
What changed (high level)
Added a repository-local
pdfrest-client-apiskill with UI metadata. It requires PDFCloud-API OpenAPI discovery, guides outcome-oriented helper naming and upload-then-execute resource handling, and makes payload models the boundary between ergonomic Python inputs and pdfRest wire requests. The skill also treats additive parameters as forward-compatible only when existing signatures, defaults, input shapes, and response contracts remain intact.Behavior changes
No runtime SDK behavior changes. Contributors can now invoke the skill when adding a documented pdfRest endpoint or a compatible parameter to an existing
PdfRestClientandAsyncPdfRestClienthelper. The skill directs them to stop for user direction when an API change cannot be represented without breaking the public SDK contract.Validation
Validated the skill structure with the bundled skill validator. The commit also passed the repository pre-commit hooks, including Markdown formatting, YAML checks, and configured Ruff and basedpyright hooks. No package unit, live, or matrix tests were run because this change adds contributor guidance only.
Risks and follow-ups
The skill intentionally depends on a locally available PDFCloud-API checkout and its current OpenAPI specification; contributors without that checkout will be prompted for direction rather than implementing against inference. Future API work can refine the skill with demonstrated edge cases, while preserving its compatibility stop condition.