Skip to content

fix(source-amazon-seller-partner): classify marketplace errors#78309

Draft
devin-ai-integration[bot] wants to merge 2 commits into
masterfrom
devin/1779322887-amazon-seller-partner-marketplace-error
Draft

fix(source-amazon-seller-partner): classify marketplace errors#78309
devin-ai-integration[bot] wants to merge 2 commits into
masterfrom
devin/1779322887-amazon-seller-partner-marketplace-error

Conversation

@devin-ai-integration
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot commented May 21, 2026

What

Resolves https://github.com/airbytehq/airbyte-internal-issues/issues/16457
Related to https://github.com/airbytehq/oncall/issues/12673

Report creation failures from Amazon SP-API for merchant accounts that are not registered in the selected marketplace were falling through to the default HTTP 400 handler, producing a generic system_error.

How

  • Add a focused HttpResponseFilter for InvalidInput report-creation responses whose message indicates the merchant account is not registered in the marketplace.
  • Classify the failure as config_error with the deterministic user-facing message Merchant account is not registered in the selected marketplace.
  • Add coverage across report-based full-refresh streams.
  • Bump source-amazon-seller-partner from 5.7.6 to 5.7.7 with a changelog entry.

Review guide

  1. airbyte-integrations/connectors/source-amazon-seller-partner/manifest.yaml
  2. airbyte-integrations/connectors/source-amazon-seller-partner/unit_tests/integration/test_report_based_streams.py
  3. airbyte-integrations/connectors/source-amazon-seller-partner/metadata.yaml
  4. docs/integrations/sources/amazon-seller-partner.md

User Impact

Users with a marketplace registration mismatch now receive a config_error that names the specific configuration issue instead of a generic system_error HTTP 400 message. This can stop retries for this specific non-retryable configuration problem.

Can this PR be safely reverted and rolled back?

  • YES 💚
  • NO ❌

Testing

  • cd airbyte-integrations/connectors/source-amazon-seller-partner/unit_tests && poetry run pytest integration/test_report_based_streams.py::TestFullRefresh::test_given_marketplace_registration_error_when_read_then_config_error
  • pre-commit run ruff-format --files airbyte-integrations/connectors/source-amazon-seller-partner/unit_tests/integration/test_report_based_streams.py

Devin session

@devin-ai-integration
Copy link
Copy Markdown
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@github-actions
Copy link
Copy Markdown
Contributor

👋 Greetings, Airbyte Team Member!

Here are some helpful tips and reminders for your convenience.

💡 Show Tips and Tricks

PR Slash Commands

Airbyte Maintainers (that's you!) can execute the following slash commands on your PR:

  • 🛠️ Quick Fixes
    • /format-fix - Fixes most formatting issues.
    • /bump-version - Bumps connector versions, scraping changelog description from the PR title.
      • Bump types: patch (default), minor, major, major_rc, rc, promote.
      • The rc type is a smart default: applies minor_rc if stable, or bumps the RC number if already RC.
      • The promote type strips the RC suffix to finalize a release.
      • Example: /bump-version type=rc or /bump-version type=minor
    • /bump-progressive-rollout-version - Alias for /bump-version type=rc. Bumps with an RC suffix and enables progressive rollout.
  • ❇️ AI Testing and Review (internal link: AI-SDLC Docs):
    • /ai-prove-fix - Runs prerelease readiness checks, including testing against customer connections.
    • /ai-canary-prerelease - Rolls out prerelease to 5-10 connections for canary testing.
    • /ai-review - AI-powered PR review for connector safety and quality gates.
  • 📝 AI Documentation:
    • /ai-docs-review - AI-powered documentation review for PRs with connector changes.
    • /ai-create-docs-pr - Creates a documentation PR for connector changes, stacked on the current PR.
  • 🚀 Connector Releases:
    • /publish-connectors-prerelease - Publishes pre-release connector builds (tagged as {version}-preview.{git-sha}) for all modified connectors in the PR.
  • ☕️ JVM connectors:
    • /update-connector-cdk-version connector=<CONNECTOR_NAME> - Updates the specified connector to the latest CDK version.
      Example: /update-connector-cdk-version connector=destination-bigquery
  • 🐍 Python connectors:
    • /poe connector source-example lock - Run the Poe lock task on the source-example connector, committing the results back to the branch.
    • /poe source example lock - Alias for /poe connector source-example lock.
    • /poe source example use-cdk-branch my/branch - Pin the source-example CDK reference to the branch name specified.
    • /poe source example use-cdk-latest - Update the source-example CDK dependency to the latest available version.
  • ⚙️ Admin commands:
    • /force-merge reason="<REASON>" - Force merges the PR using admin privileges, bypassing CI checks. Requires a reason.
      Example: /force-merge reason="CI is flaky, tests pass locally"
📚 Show Repo Guidance

Helpful Resources

📝 Edit this welcome message.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 21, 2026

Deploy preview for airbyte-docs ready!

Project:airbyte-docs
Status: ✅  Deploy successful!
Preview URL:https://airbyte-docs-asrjlzvjs-airbyte-growth.vercel.app
Latest Commit:fc3ca9d

Deployed with vercel-action

@devin-ai-integration devin-ai-integration Bot changed the title fix(source-amazon-seller-partner): Classify marketplace registration errors fix(source-amazon-seller-partner): classify marketplace errors May 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant