Skip to content

PDFCLOUD-6233 Refine pdfRest client API skill contracts - #49

Merged
datalogics-tsmith merged 5 commits into
mainfrom
pdfcloud-6233-new-pdfrest-api-skill
Oct 8, 2026
Merged

datalogics-tsmith merged 5 commits into
mainfrom
pdfcloud-6233-new-pdfrest-api-skill

Conversation

@datalogics-kam

Copy link
Copy Markdown
Contributor

PDFCLOUD-6233

Why this change

Follow up on PR #44, which merged the original pdfRest client API skill. Five additional commits authored on September 23 remained on the same branch. Comparing the pre-rebase history with this branch confirms all five patches are unchanged; the October 7 rebase placed them on top of the merged PR and changed their commit hashes.

What changed (high level)

The skill now discovers operations in the Cloud OpenAPI specification first, with the Container specification used only when a requested new tool is absent from Cloud. It requires investigation and disclosure of indirectly documented string constraints, distinguishes closed catalogs from known names within open string contracts, and aligns contributor and testing guidance with that distinction. The TOML sorting hook excludes the generated uv.lock file while continuing to apply to other TOML files.

Behavior changes

Contributor guidance requires exact public literals for verified closed catalogs and documented known-name literals combined with str for open catalogs. It calls for explicit reporting of fallback sources and unresolved contract conflicts, with test expectations reflecting whether values are closed or deployment-dependent. SDK runtime behavior and public APIs are unchanged.

Validation

The skill validator, git diff --check, and applicable pre-commit hooks passed for the four changed files in an exported snapshot of head 686764ef14e47ccb08697c60ecdd333b00eb1c2a. Checked that validation left those files byte-identical and that the TOML exclusion matches uv.lock but not pyproject.toml. git range-diff confirms the five patches match their September 23 versions. Local Ruff, basedpyright, unit/live tests, and the full interpreter matrix were not run because no Python implementation or tests changed.

Existing CI will run unit tests with coverage and live examples on Python 3.10–3.14, plus pre-commit, basedpyright, and a docs build. Diff coverage and the docs preview upload are PR-only; live tests run on Python 3.11 for PRs and scheduled runs. No workflow definitions changed.

Risks and follow-ups

This PR contains only the five commits beyond the merged PR #44; its four-file diff covers skill guidance, contributor/testing documentation, and the hook exclusion. Reviewers should verify the documented open-versus-closed contract policy. The hook exclusion is a separate tooling adjustment included in the existing branch. Hosted CI results remain pending.

Keep the generated lockfile out of toml-sort-fix while retaining the hook
for other TOML files.

Assisted-by: Codex
Use the container spec only when a requested new tool is absent from the
cloud spec, keeping each operation tied to one documented contract.

Assisted-by: Codex
- Recover exact string choices from the API contract and linked sources.
- Expose known names alongside open strings when the service allows both.
- Match tests and documentation to each catalog's actual behavior.

Assisted-by: Codex
- Require known literals alongside open strings for documented names.
- Distinguish closed-catalog coverage from open-name validation in tests.

Assisted-by: Codex
- Investigate indirect value references instead of assuming free-form strings.
- Report fallback sources, unresolved catalogs, and contract conflicts.

Assisted-by: Codex
@netlify

netlify Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for pdfrest-python ready!

Name Link
🔨 Latest commit 686764e
🔍 Latest deploy log https://app.netlify.com/projects/pdfrest-python/deploys/6ac6c8fac2be860009c897b5
😎 Deploy Preview https://deploy-preview-49--pdfrest-python.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@datalogics-tsmith
datalogics-tsmith merged commit 6858dea into main Oct 8, 2026
20 checks passed
@datalogics-tsmith
datalogics-tsmith deleted the pdfcloud-6233-new-pdfrest-api-skill branch October 8, 2026 15:28

This branch was successfully deployed

1 active deployment
ci-live — 686764ef Deployed Oct 7, 2026 by datalogics-kam via Live Tests (Python 3.11) #537
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.

2 participants