refactor(order)!: retire deprecated order flow - #830
Draft
jorgeparavicini wants to merge 1 commit into
Draft
Conversation
Remove RapidataOrder's use of the deprecated GET /pipeline/{pipelineId} and
GET /workflow/{workflowId}/progress endpoints, plus the preliminary-download
path, since the order flow is deprecated (order creation is already superseded
by Jobs) and these endpoints are being removed from the SDK.
Removed:
- display_progress_bar() — relied on the deprecated workflow-progress endpoint.
- preview() — resolved the campaign id by unpacking the pipeline.
- get_results(preliminary_results=...) — the preliminary path used the
pipeline preliminary-download endpoints; get_results() now always returns
the final results via download-results (unchanged, non-deprecated).
- the order-creation campaign-preview QR (unpacked the pipeline).
- the now-dead pipeline/workflow-unpacking helpers and _retry_operation.
BREAKING CHANGE: RapidataOrder.display_progress_bar(), RapidataOrder.preview(),
and the preliminary_results argument of RapidataOrder.get_results() are removed.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: jorge <24812622+jorgeparavicini@users.noreply.github.com>
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.
Goal
Remove all SDK references to the deprecated
GET /pipeline/{pipelineId}andGET /workflow/{workflowId}/progressendpoints, then drop the generator keep-list so they fall out of the generated client on a clean regen. The backend keeps serving them (other consumers exist), but the SDK stops using them. Follows #829 (job-progress migration).Step 1 — order-flow retirement (this commit) ✅
RapidataOrderis deprecated (order creation is superseded by Jobs). Removed its use of the deprecated endpoints:display_progress_bar()— used the workflow-progress endpoint. Removed.preview()— resolved the campaign id by unpacking the pipeline. Removed.get_results(preliminary_results=...)— the preliminary path used the pipeline preliminary-download endpoints. Removed the arg;get_results()still returns final results viadownload-results(unchanged, non-deprecated)._retry_operation.BREAKING:
display_progress_bar(),preview(), and thepreliminary_resultsarg ofget_results()are gone fromRapidataOrder.Step 2 — definition-creation QR (GATED, pending) ⏳
The campaign-preview QR after job-definition creation still resolves the campaign id via
GET /pipeline/{pipelineId}(nojobIdexists at that point). Waiting on the backend to re-add the definition's preview campaign id toCreateJobDefinitionEndpoint_Output+GET /job/definition/{definitionId}; then the SDK reads it directly and drops the pipeline lookup.Step 3 — drop keep-list + clean regen (GATED, pending) ⏳
After step 2, remove the keep-list in
openapi/generate-schema.shand regenerate cleanly so the deprecated endpoints (and the rest of the deprecated workflow-results tree) fall out. Before that regen: audit that no high-level wrapper references any endpoint the regen will strip; if one does, stop and escalate rather than re-adding a keep-list.Verification (step 1)
uv run pyright src/rapidata/rapidata_client→ 0 errorsuv run pytest→ 136 passed, 4 failed — the 4 are pre-existing onmain(audience cost-warning / explicit-content tests), unrelated.get_results()(download-results) unaffected.🔗 Session: https://poseidon.rapidata.internal/chat/node-f6b42c70