Skip to content

chore: remove old convection code#7392

Open
nickskalkin wants to merge 11 commits intomainfrom
nickskalkin/convection-unstitching
Open

chore: remove old convection code#7392
nickskalkin wants to merge 11 commits intomainfrom
nickskalkin/convection-unstitching

Conversation

@nickskalkin
Copy link
Contributor

@nickskalkin nickskalkin commented Jan 19, 2026

This PR completes the Convection service deprecation by removing all remaining Convection-related code from the Metaphysics codebase. This follows up #6912, where we removed the Convection service integration without breaking the schema to prevent breaking changes to client applications (Eigen).

With the schema preserved in #6912, clients have had time to adapt. This PR now eliminates the unused code entirely.

Schema & Stitching

Removed Convection schema stitching configuration

Fields Removed

  • Removed artworkConsignmentSubmissionType and related fields from Artwork type
  • Removed highEstimateAmount and lowEstimateAmount fields
  • requestPriceEstimate field
  • submissionsConnection field
  • Removed submissionID Artwork field
  • isPriceEstimateRequestable field
  • isListed field
  • listedArtworksConnection field

Mutations Removed

  • addAssetToConsignmentSubmission
  • addAssetsToConsignmentSubmission
  • addUserToSubmission
  • createConsignmentOffer
  • removeAssetFromConsignmentSubmission
  • updateConsignmentSubmission
  • createConsignmentInquiry and related error formatting utilities
  • Removed optional submissionId field from myCollectionUpdateArtworkMutation mutation

Infrastructure & Utilities

  • Removed Convection loaders
  • Removed artworkToSubmissionMapping utility and tests
  • Removed all Convection-related test files and test utilities

Test Plan

  • Ran yarn relay with updated schemas in Eigen, Force, and Forque to verify no breaking changes
  • All tests pass locally and on CI:
  • Plan to deploy to staging with a deploy block to allow for QA on client applications before production release

@nickskalkin nickskalkin self-assigned this Jan 19, 2026
@artsy-peril
Copy link
Contributor

artsy-peril bot commented Jan 19, 2026


Warnings
⚠️ The V2 schema in this PR has breaking changes with Force. Remember to update the Force schema if necessary.

Type 'ArtworkConsignmentSubmission' was removed
Type 'ArtworkConsignmentSubmissionState' was removed
Type 'ConsignmentSort' was removed
Type 'ConsignmentConnection' was removed
Type 'ConsignmentEdge' was removed
Type 'Consignment' was removed
Type 'ConsignmentState' was removed
Type 'ConsignmentSubmission' was removed
Type 'AssetType' was removed
Type 'ConsignmentSubmissionCategoryAsset' was removed
Type 'ConsignmentAttributionClass' was removed
Type 'ConsignmentOffer' was removed
Type 'ConsignmentSubmissionSource' was removed
Type 'ConsignmentSubmissionStateAggregation' was removed
Type 'ConsignmentPageCursors' was removed
Type 'ConsignmentPageCursor' was removed
Type 'ArtworkConsignmentSubmissionConnection' was removed
Type 'ArtworkConsignmentSubmissionEdge' was removed
Type 'ConsignmentOfferSort' was removed
Type 'ConsignmentOfferConnection' was removed
Type 'ConsignmentOfferEdge' was removed
Type 'ConsignmentSubmissionCategoryAggregation' was removed
Type 'ConsignmentSubmissionSort' was removed
Type 'ConsignmentSubmissionConnection' was removed
Type 'SubmissionEdge' was removed
Type 'AddAssetToConsignmentSubmissionInput' was removed
Type 'UploadSource' was removed
Type 'AddAssetToConsignmentSubmissionPayload' was removed
Type 'AddAssetsToConsignmentSubmissionInput' was removed
Type 'UploadSources' was removed
Type 'AddAssetsToConsignmentSubmissionPayload' was removed
Type 'AddUserToSubmissionMutationInput' was removed
Type 'AddUserToSubmissionMutationPayload' was removed
Type 'CreateSubmissionMutationInput' was removed
Type 'CreateSubmissionMutationPayload' was removed
Type 'CreateConsignmentInquiryMutationInput' was removed
Type 'CreateConsignmentInquiryMutationPayload' was removed
Type 'CreateConsignmentInquiryMutationType' was removed
Type 'ConsignmentInquiryMutationFailure' was removed
Type 'ConsignmentInquiryMutationError' was removed
Type 'ConsignmentInquiryMutationSuccess' was removed
Type 'ConsignmentInquiry' was removed
Type 'CreateOfferMutationInput' was removed
Type 'Date' was removed
Type 'CreateOfferMutationPayload' was removed
Type 'CreateOfferResponseMutationInput' was removed
Type 'IntendedState' was removed
Type 'CreateOfferResponseMutationPayload' was removed
Type 'OfferResponse' was removed
Type 'RemoveAssetFromConsignmentSubmissionInput' was removed
Type 'RemoveAssetFromConsignmentSubmissionPayload' was removed
Type 'RequestPriceEstimateInput' was removed
Type 'RequestPriceEstimatePayload' was removed
Type 'RequestPriceEstimateMutationType' was removed
Type 'RequestPriceEstimatedMutationFailure' was removed
Type 'RequestPriceEstimatedMutationSuccess' was removed
Type 'SubmittedPriceEstimateParams' was removed
Type 'UpdateSubmissionMutationInput' was removed
Type 'UpdateSubmissionMutationPayload' was removed
Field 'consignments' was removed from object type 'Query'
Field 'offer' was removed from object type 'Query'
Field 'offers' was removed from object type 'Query'
Field 'submission' was removed from object type 'Query'
Field 'submissions' was removed from object type 'Query'
Field 'consignmentSubmission' (deprecated) was removed from object type 'Artwork'
Field 'isListed' (deprecated) was removed from object type 'Artwork'
Field 'isPriceEstimateRequestable' (deprecated) was removed from object type 'Artwork'
Field 'listedArtworksConnection' (deprecated) was removed from object type 'Artwork'
Field 'submissionId' (deprecated) was removed from object type 'Artwork'
Field 'submissionsConnection' was removed from object type 'Me'
Field 'addAssetToConsignmentSubmission' was removed from object type 'Mutation'
Field 'addAssetsToConsignmentSubmission' was removed from object type 'Mutation'
Field 'addUserToSubmission' was removed from object type 'Mutation'
Field 'convectionCreateConsignmentSubmission' was removed from object type 'Mutation'
Field 'createConsignmentInquiry' was removed from object type 'Mutation'
Field 'createConsignmentOffer' was removed from object type 'Mutation'
Field 'createConsignmentOfferResponse' was removed from object type 'Mutation'
Field 'createConsignmentSubmission' was removed from object type 'Mutation'
Field 'removeAssetFromConsignmentSubmission' was removed from object type 'Mutation'
Field 'requestPriceEstimate' was removed from object type 'Mutation'
Field 'updateConsignmentSubmission' was removed from object type 'Mutation'
Input field 'submissionId' was removed from input object type 'MyCollectionCreateArtworkInput'
Input field 'submissionId' was removed from input object type 'MyCollectionUpdateArtworkInput'

Generated by 🚫 dangerJS against 95052a5

@nickskalkin nickskalkin changed the title chore: un-stitching convection chore: remove old convection code Jan 27, 2026
@nickskalkin nickskalkin marked this pull request as ready for review January 27, 2026 14:58
@artsyit
Copy link
Collaborator

artsyit commented Jan 27, 2026


Warnings
⚠️ The V2 schema in this PR has breaking changes with Force. Remember to update the Force schema if necessary.

Type 'AddAssetToConsignmentSubmissionInput' was removed
Type 'AddAssetToConsignmentSubmissionPayload' was removed
Type 'AddAssetsToConsignmentSubmissionInput' was removed
Type 'AddAssetsToConsignmentSubmissionPayload' was removed
Type 'AddUserToSubmissionMutationInput' was removed
Type 'AddUserToSubmissionMutationPayload' was removed
Type 'ArtworkConsignmentSubmission' was removed
Type 'ArtworkConsignmentSubmissionConnection' was removed
Type 'ArtworkConsignmentSubmissionEdge' was removed
Type 'ArtworkConsignmentSubmissionState' was removed
Type 'AssetType' was removed
Type 'Consignment' was removed
Type 'ConsignmentAttributionClass' was removed
Type 'ConsignmentConnection' was removed
Type 'ConsignmentEdge' was removed
Type 'ConsignmentInquiry' was removed
Type 'ConsignmentInquiryMutationError' was removed
Type 'ConsignmentInquiryMutationFailure' was removed
Type 'ConsignmentInquiryMutationSuccess' was removed
Type 'ConsignmentOffer' was removed
Type 'ConsignmentOfferConnection' was removed
Type 'ConsignmentOfferEdge' was removed
Type 'ConsignmentOfferSort' was removed
Type 'ConsignmentPageCursor' was removed
Type 'ConsignmentPageCursors' was removed
Type 'ConsignmentSort' was removed
Type 'ConsignmentState' was removed
Type 'ConsignmentSubmission' was removed
Type 'ConsignmentSubmissionCategoryAggregation' was removed
Type 'ConsignmentSubmissionCategoryAsset' was removed
Type 'ConsignmentSubmissionConnection' was removed
Type 'ConsignmentSubmissionSort' was removed
Type 'ConsignmentSubmissionSource' was removed
Type 'ConsignmentSubmissionStateAggregation' was removed
Type 'CreateConsignmentInquiryMutationInput' was removed
Type 'CreateConsignmentInquiryMutationPayload' was removed
Type 'CreateConsignmentInquiryMutationType' was removed
Type 'CreateOfferMutationInput' was removed
Type 'CreateOfferMutationPayload' was removed
Type 'CreateOfferResponseMutationInput' was removed
Type 'CreateOfferResponseMutationPayload' was removed
Type 'CreateSubmissionMutationInput' was removed
Type 'CreateSubmissionMutationPayload' was removed
Type 'Date' was removed
Type 'IntendedState' was removed
Type 'OfferResponse' was removed
Type 'RemoveAssetFromConsignmentSubmissionInput' was removed
Type 'RemoveAssetFromConsignmentSubmissionPayload' was removed
Type 'RequestPriceEstimateInput' was removed
Type 'RequestPriceEstimateMutationType' was removed
Type 'RequestPriceEstimatePayload' was removed
Type 'RequestPriceEstimatedMutationFailure' was removed
Type 'RequestPriceEstimatedMutationSuccess' was removed
Type 'SubmissionEdge' was removed
Type 'SubmittedPriceEstimateParams' was removed
Type 'UpdateSubmissionMutationInput' was removed
Type 'UpdateSubmissionMutationPayload' was removed
Type 'UploadSource' was removed
Type 'UploadSources' was removed
Field 'consignmentSubmission' (deprecated) was removed from object type 'Artwork'
Field 'isListed' (deprecated) was removed from object type 'Artwork'
Field 'isPriceEstimateRequestable' (deprecated) was removed from object type 'Artwork'
Field 'listedArtworksConnection' (deprecated) was removed from object type 'Artwork'
Field 'submissionId' (deprecated) was removed from object type 'Artwork'
Field 'submissionsConnection' was removed from object type 'Me'
Field 'addAssetToConsignmentSubmission' was removed from object type 'Mutation'
Field 'addAssetsToConsignmentSubmission' was removed from object type 'Mutation'
Field 'addUserToSubmission' was removed from object type 'Mutation'
Field 'convectionCreateConsignmentSubmission' was removed from object type 'Mutation'
Field 'createConsignmentInquiry' was removed from object type 'Mutation'
Field 'createConsignmentOffer' was removed from object type 'Mutation'
Field 'createConsignmentOfferResponse' was removed from object type 'Mutation'
Field 'createConsignmentSubmission' was removed from object type 'Mutation'
Field 'removeAssetFromConsignmentSubmission' was removed from object type 'Mutation'
Field 'requestPriceEstimate' was removed from object type 'Mutation'
Field 'updateConsignmentSubmission' was removed from object type 'Mutation'
Input field 'submissionId' was removed from input object type 'MyCollectionCreateArtworkInput'
Input field 'submissionId' was removed from input object type 'MyCollectionUpdateArtworkInput'
Field 'consignments' was removed from object type 'Query'
Field 'offer' was removed from object type 'Query'
Field 'offers' was removed from object type 'Query'
Field 'submission' was removed from object type 'Query'
Field 'submissions' was removed from object type 'Query'

Generated by 🚫 dangerJS against 95052a5

@dblandin
Copy link
Member

We should test Eigen directly against a MP server running after these types/mutation/fields are removed. Ideally locally so we don't have to revert a PR if we discover problems in staging.

Hopefully fine but there may be some friction with how Eigen uses persisted queries generated from old schema versions.

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.

3 participants