refactor!: remove order flow and pipeline/workflow APIs - #830
Merged
RapidPoseidon merged 1 commit intoAug 21, 2026
Conversation
Fully removes the deprecated order flow and the pipeline/workflow API surface,
and regenerates the client against the current backend.
Order flow (deprecated; superseded by Jobs + Audiences):
- delete RapidataOrder, RapidataOrderBuilder, RapidataOrderManager and the
client.order entry point; drop the order exports.
- drop the order coupling from FailedUploadException (job-definition only now).
Pipeline / workflow APIs:
- remove pipeline and workflow from the OpenAPI service list and drop the
keep-list, so their specs are no longer generated.
- delete the now-unused PipelineService / WorkflowService wrappers and the
openapi_service.pipeline / .workflow accessors.
- delete the orphaned generated pipeline/workflow API classes and the models
used exclusively by them.
Definition-creation QR:
- the post-creation campaign-preview QR resolved its campaign id via the
deprecated GET /pipeline/{id}; it is dropped (the dashboard preview link is
still printed). It can be restored once the backend exposes the definition's
preview campaign id on the definition endpoint.
get_results() (download-results) is unaffected and still works.
BREAKING CHANGE: RapidataOrder, RapidataOrderManager and client.order are
removed; the pipeline and workflow APIs are no longer part of the SDK.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: jorge <24812622+jorgeparavicini@users.noreply.github.com>
RapidPoseidon
force-pushed
the
refactor(order)!/retire-deprecated-order-flow
branch
from
August 21, 2026 08:53
c8fc903 to
19acd0b
Compare
jorgeparavicini
marked this pull request as ready for review
August 21, 2026 09:18
LinoGiger
approved these changes
Aug 21, 2026
RapidPoseidon
deleted the
refactor(order)!/retire-deprecated-order-flow
branch
August 21, 2026 13:15
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.
Removes the deprecated order flow and the pipeline/workflow API surface from the SDK, and regenerates the client against the current backend. Follows #829 (job-progress migration).
What's removed
Order flow (deprecated; superseded by Jobs + Audiences):
RapidataOrder,RapidataOrderBuilder,RapidataOrderManager, and theclient.orderentry point + exports.FailedUploadException(now job-definition only).Pipeline / workflow APIs:
pipelineandworkflowdropped from the OpenAPI service list; keep-list removed — their specs are no longer fetched or generated.PipelineService/WorkflowServicewrappers andopenapi_service.pipeline/.workflowaccessors deleted.Definition-creation QR (see caveat below): dropped.
Client regeneration
Regenerated against current prod. NB: a clean regen (deleting everything not re-emitted) is not safe for this repo — the generator inlines some enums (
AssetType,RapidModality,PromptType) that hand-written SDK code imports as modules, so a blanket "delete non-generated files" would break imports. I therefore removed pipeline/workflow files surgically (only models unreachable from any kept code, verified by import-reachability + the test suite), leaving the rest of the generated client intact.The campaign-preview QR after job-definition creation resolved its campaign id via the deprecated
GET /pipeline/{id}. It is dropped (the dashboard preview link is still printed). This is the agreed final outcome: the frontend also dropped its phone-preview QR (app-frontend #3025), and the backend field that would have been needed to migrate it has been cancelled (zero consumers). May be restored later via a definition-scoped lookup, but not in this PR.Unaffected / left as-is
RapidataJob.get_results()/ job progress (via/job/{jobId}endpoints) — still work.rapidata_client/workflow/_*(task-construction models, unrelated to the HTTP workflow API).Verification
uv run pyright src/rapidata/rapidata_client→ 0 errorsuv run pytest→ 136 passed, 4 failed — the 4 pre-exist onmain(audience cost-warning / explicit-content tests), unrelated.rapidataOK; no remaining SDK reference to pipeline/workflow HTTP APIs or the order flow.BREAKING CHANGE:
RapidataOrder,RapidataOrderManager,client.order, and the pipeline/workflow APIs are removed.🔗 Session: https://poseidon.rapidata.internal/chat/node-f6b42c70