-
Notifications
You must be signed in to change notification settings - Fork 2
feat(files): close the endpoint coverage gap #175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,54 @@ | ||
| # API Coverage | ||
|
|
||
| `@putdotio/sdk` is the canonical full put.io API client. Endpoint completeness means every | ||
| supported, user-facing public API capability is represented by a typed SDK operation, an explicit | ||
| canonical equivalent, or a direct-route URL helper. | ||
|
|
||
| ## Current Audit Outcome | ||
|
|
||
| The maintained public backend surface and first-party consumers were compared with the canonical | ||
| SDK operation tree for issue [#172](https://github.com/putdotio/putio-sdk-typescript/issues/172). | ||
| The comparison found one unresolved supported capability: the XSPF playlist route used for VLC | ||
| handoff. `files.getXspfPlaylistUrl(...)` closes that gap. No supported public endpoint gaps remain | ||
| from that audit. | ||
|
Copilot marked this conversation as resolved.
|
||
|
|
||
| The audit enumerated current public route registrations, compared method and path contracts with | ||
| SDK requests and direct-route helpers, inspected backend authentication and response behavior for | ||
| every mismatch, and checked current first-party web and CLI usage before deciding whether a route | ||
| was supported, equivalent, legacy, or private. Earlier request, response, and typed-error contract | ||
| alignment is recorded in [#108](https://github.com/putdotio/putio-sdk-typescript/issues/108). | ||
|
|
||
|
Copilot marked this conversation as resolved.
|
||
| This is a point-in-time completeness result, not a claim that future backend changes are detected | ||
| automatically. Response-branch and mutation-depth confidence remains a separate live-testing | ||
| concern. | ||
|
|
||
| ## Scope | ||
|
|
||
| The completeness contract includes authenticated JSON operations, public registration and OAuth | ||
| operations intended for API consumers, and direct content routes that consumers access through | ||
| SDK-generated URLs. | ||
|
|
||
| It excludes: | ||
|
|
||
| - admin, private, restricted, secret-key, and service-to-service routes | ||
| - browser page, callback, and form-post routes that are not API-client operations | ||
| - legacy aliases when the SDK exposes the canonical replacement | ||
| - transport aliases when one safer method reaches the same handler and contract | ||
|
|
||
| ## Evidence Boundary | ||
|
|
||
| The backend-wide inventory, extractor, and private route classifications stay in the private | ||
| owning environment. [`api-route-matrix.json`](api-route-matrix.json) contains portable public | ||
| evidence for selected contract decisions and validates each named operation on both the Effect and | ||
| Promise clients. It is deliberately not the complete backend route inventory. | ||
|
|
||
| ## Refresh Contract | ||
|
|
||
| Repeat the private comparison when a public backend route changes, a first-party consumer needs an | ||
| unmodeled capability, or a contract-drift report is confirmed. For every supported gap: | ||
|
|
||
| 1. update the request, response, and typed error boundary together | ||
| 2. keep the Effect and Promise client surfaces aligned through the canonical operation tree | ||
| 3. add deterministic request and parsing coverage | ||
| 4. add safe live proof when local fixtures cannot establish the behavior | ||
| 5. add only public-safe evidence to this repository | ||
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
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
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
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
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
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
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
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
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
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
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
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
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.
Uh oh!
There was an error while loading. Please reload this page.