Skip to content

chore(source-amazon-seller-partner): DO NOT MERGE - pin prerelease SDM 7.39.0.post5.dev39879313492 (airbyte-python-cdk#1248) - #89694

Closed
devin-ai-integration[bot] wants to merge 1 commit into
masterfrom
pnilan/sdm-prerelease-1248-source-amazon-seller-partner
Closed

devin-ai-integration[bot] wants to merge 1 commit into
masterfrom
pnilan/sdm-prerelease-1248-source-amazon-seller-partner

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

🤖 This PR was generated by an AI Agent.

DO NOT MERGE. Test-only PR, requested by Patrick Nilan (@pnilan). It pins source-amazon-seller-partner to the SDM prerelease built from airbyte-python-cdk#1248 so a connector prerelease can be published and tested.

What

Points connectorBuildOptions.baseImage at airbyte/source-declarative-manifest:7.39.0.post5.dev39879313492. That image was built by CDK publish run 39879313492 from devin/1792688475-check-skip-dynamic-streams.

How

  • metadata.yaml:
    • baseImage changes from SDM 7.37.1 to 7.39.0.post5.dev39879313492@sha256:a45420a851310e75d893c93c73e8a353d610bc214788c39384f7bd776b614d7f.
    • dockerImageTag goes from 7.0.0 to 7.0.1.
  • No manifest, changelog or docs change.

Review guide

  1. airbyte-integrations/connectors/source-amazon-seller-partner/metadata.yaml

User Impact

None. This is never merged. Use /publish-connectors-prerelease to get a 7.0.1-preview.<sha> image for pinning.

The title contains "DO NOT MERGE", so the semantic-title check fails on purpose. Checks that expect a changelog entry may fail too.

Can this PR be safely reverted and rolled back?

  • YES 💚
  • NO ❌

Link to Devin session: https://app.devin.ai/sessions/a359f078a4634bbab6d79afaaf709c17
Open in Devin Desktop: https://app.devin.ai/desktop/session/a359f078a4634bbab6d79afaaf709c17?variant=devin


Important

Autopilot Progressive Rollout Enabled

Autopilot progressive rollouts are enabled for one or more connector(s) modified in this PR. Check the box below if you need to bypass normal rollout safety processes and release to all users immediately upon merge:

  • ⚡ Release immediately (bypasses automatic progressive rollout)

Note:

  • ⚠️ The above bypass option is for emergency/hotfix use only.
  • 🔗 You can monitor or manually advance a rollout at ops.internal.airbyte.ai.

…M 7.39.0.post5.dev39879313492 (airbyte-python-cdk#1248)

Co-Authored-By: patrick.nilan@airbyte.io <patrick.nilan@airbyte.io>
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict 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-breaking-change-review - Step 1 for a connector breaking change. Reviews whether the change needs to be breaking, destination data-loss risk, and whether the migration guide, metadata message, and docs let users upgrade safely. Opens one conversation on the PR for each item the author needs to handle.
    • /ai-breaking-change-ready - Step 2, after you've replied to and resolved each of those conversations. Checks that every one has a reply and is resolved, then pings the breaking-change reviewers in Slack for human review.
  • 📝 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.
    • /enable-autopilot-rollouts - Enables autopilot progressive rollouts for the modified connector(s) in the PR, remediating "autopilot rollouts not enabled for {connector-name}" auto-merge blockers. Sets defaultRolloutMode: autopilot and enableProgressiveRollout: true, preserving any existing autopilotConfig.
      • Optional args: connector=<CONNECTOR_NAME> (defaults to the modified connectors in the PR), strategy=fast|slow|default (defaults to fast).
      • Example: /enable-autopilot-rollouts or /enable-autopilot-rollouts connector=source-faker strategy=slow
  • ☕️ 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.

@pnilan

Patrick Nilan (pnilan) commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

/ai-prove-fix specifically want to confirm this stack of PRs functions as expected.

Connector What it exercises Expected result
source-google-ads streams() override; a config with end_date: "" SUCCEEDED after the P0 fix (FAILED on this head)
source-amazon-seller-partner CheckDynamicStream, stream_count: 1, api_budget, spec validators Same status as 7.39.0
source-airtable CheckDynamicStream over dynamic streams only Same status as 7.39.0
source-hubspot HttpComponentsResolver and api_budget Same status as 7.39.0
source-bing-ads Slowest check in the epic benchmark; dynamic streams Same status, faster
source-github config_overrides on the check component Same status as 7.39.0

AI Prove Fix Started

Running readiness checks and testing against customer connections.
View workflow run
🔍 AI Prove Fix session starting... Running readiness checks and testing against customer connections. View playbook

✅ Devin AI session created successfully!

@airbyte-support-bot

Airbyte Support Bot (airbyte-support-bot) commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

🧪 Fix Validation Evidence

🟢 Outcome: Fix Proven

On the prerelease SDM/CDK 7.39.0.post5.dev39879313492 (airbyte-python-cdk#1248 stacked on #1247), CHECK gave the same status as the latest published version for source-amazon-seller-partner (on a real customer connection), source-hubspot, source-github, and source-google-ads. That includes source-google-ads with end_date: "", which now SUCCEEDS. DISCOVER returned the same stream counts on both versions. source-airtable and source-bing-ads could not be tested: their stale GSM OAuth credentials made CHECK fail on both versions.

Next steps: Before treating the whole stack as proven, get a human-approved live check for source-airtable and source-bing-ads. Both use OAuth refresh tokens, so testing them on a customer connection needs approval. The "bing-ads is faster" claim is still unmeasured.

Item Value
Connector source-amazon-seller-partner (primary) + 5 stack siblings
PR #89694 (siblings #89693, #89695, #89696, #89697, #89699)
Validated SHA d3e8eec12ef433650b051d8a07e73d3a1ae806dc
Pre-release Version Tested dev (built from PR head with BASE_IMAGE=docker.io/airbyte/source-declarative-manifest:7.39.0.post5.dev39879313492@sha256:a45420a8…)
Comparison Baseline latest (auto): source-amazon-seller-partner:7.0.0 (SDM 7.37.1)
Evidence Harness run_regression_tests (GSM creds; one customer-connection escalation for amazon-seller-partner, no pins) + local poetry run source-google-ads check
Read Result github: 1074 records / 63 states on both versions. hubspot and amazon-seller-partner READ were still running when this report was posted (the change only affects the check path)
True-positive case discover/read still raise dynamic-stream errors: covered by unit tests in the CDK PRs only, not run live
Detailed results Private issue airbytehq/airbyte-internal-issues#17934

Per-connector results

Connector Control CHECK target / control DISCOVER streams target / control Verdict
source-amazon-seller-partner (customer conn, CHECK/DISCOVER only) 7.0.0 SUCCEEDED / SUCCEEDED 48 / 48 ✅ same status
source-amazon-seller-partner (GSM) 7.0.0 FAILED / FAILED (401 on LWA token: stale creds) 48 / 48 ⚪ creds
source-hubspot (GSM) 6.13.0 SUCCEEDED / SUCCEEDED 52 / 52 ✅ same status
source-github (GSM) 2.8.0 SUCCEEDED / SUCCEEDED ✅ ✅ PASS (read 1074/1074 records)
source-google-ads (GSM, CI) 6.1.6 SUCCEEDED / SUCCEEDED harness: gRPC SSL through the replay proxy failed on both versions ✅ check
source-google-ads (local, end_date: "") 6.1.6 / CDK 7.37.1 SUCCEEDED / SUCCEEDED 33 / 33 ✅ P0 fix confirmed
source-airtable (GSM) 4.6.43 FAILED / FAILED (invalid_grant) n/a ⚪ could not test
source-bing-ads (GSM) 3.0.16 FAILED / FAILED (invalid_grant AADSTS700082) ✅ ⚪ could not test
📝 Evidence Plan
  • Proving: on the prerelease CDK, CHECK/DISCOVER/READ on the target match the latest published version for each stack connector, and source-google-ads CHECK SUCCEEDS with end_date: "".
  • Disproving: CHECK flips from SUCCEEDED to FAILED, or DISCOVER/READ regresses, on the target; or source-google-ads fails with end_date: "".
  • Baseline: latest (auto). No known-bad version was named.
  • Strategy: GSM regression tests on all 6 PRs. Escalate to an unpinned TIER_2 non-EU customer connection (isolated, no pin) when GSM creds are stale and token rotation is not a risk. Run a local check for the google-ads end_date: "" variant.
✅ Pre-flight Checklist
  • Viability: the CDK change only narrows which streams check builds. The streams() override guard is kept, which source-google-ads relies on.
  • Safety: the connector PRs only bump the base image/lock to the published CDK prerelease. No suspicious code.
  • Breaking change: none (patch bumps, no spec/schema/state change).
  • Reversible: yes. These are test-only DO-NOT-MERGE pins.
  • No live pins created.
🔍 Detailed Evidence Log
  • amazon-seller-partner, customer connection: run 39886655507. Both versions returned {"type":"CONNECTION_STATUS","connectionStatus":{"status":"SUCCEEDED"}}. The target built with BASE_IMAGE=…source-declarative-manifest:7.39.0.post5.dev39879313492.
  • amazon-seller-partner, GSM: run 39882545367. Both versions: 401 Client Error: Unauthorized for url: https://api.amazon.com/auth/o2/token.
  • hubspot: run 39882545408. CHECK SUCCEEDED on both versions; 52 streams on both.
  • github: run 39882544973. All verbs passed; "RECORD": 1074, "STATE": 63 on both versions.
  • google-ads: run 39882545091. CHECK SUCCEEDED on both versions. DISCOVER failed on both with CERTIFICATE_VERIFY_FAILED (gRPC through mitmproxy, a harness limitation).
  • google-ads, local: target 7503342c (airbyte-cdk 7.39.0.post5.dev39879313492) and control master (7.37.1), each run with the config as-is and with end_date: "". All 4 runs returned {"type":"CONNECTION_STATUS","connectionStatus":{"status":"SUCCEEDED"}}; discover found 33 streams on both.
  • airtable: run 39882545551. Bing-ads: run 39882545291. Both versions failed with invalid_grant.

Devin session

@github-actions

Copy link
Copy Markdown
Contributor

source-amazon-seller-partner Connector Test Results

688 tests   683 ✅  17m 45s ⏱️
  2 suites    5 💤
  2 files      0 ❌

Results for commit d3e8eec.

@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

Closing: test-only DO NOT MERGE PR; the /ai-prove-fix run is complete (see the Fix Validation Evidence comment above). Requested by Patrick Nilan (@pnilan).

Written by Devin

@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-breaking-change-review - Step 1 for a connector breaking change. Reviews whether the change needs to be breaking, destination data-loss risk, and whether the migration guide, metadata message, and docs let users upgrade safely. Opens one conversation on the PR for each item the author needs to handle.
    • /breaking-change-ready - Step 2, after you've replied to and resolved each of those conversations. Checks that every one has a reply and is resolved, then pings the breaking-change reviewers in Slack for human review.
  • 📝 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.
    • /enable-autopilot-rollouts - Enables autopilot progressive rollouts for the modified connector(s) in the PR, remediating "autopilot rollouts not enabled for {connector-name}" auto-merge blockers. Sets defaultRolloutMode: autopilot and enableProgressiveRollout: true, preserving any existing autopilotConfig.
      • Optional args: connector=<CONNECTOR_NAME> (defaults to the modified connectors in the PR), strategy=fast|slow|default (defaults to fast).
      • Example: /enable-autopilot-rollouts or /enable-autopilot-rollouts connector=source-faker strategy=slow
  • ☕️ 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

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Pre-release Connector Publish Started

Publishing pre-release build for connector source-amazon-seller-partner.
PR: #89694

Pre-release versions will be tagged as {version}-preview.d3e8eec
and are available for version pinning via the scoped_configuration API.

View workflow run
⚠️ Pre-release Publish CANCELLED for source-amazon-seller-partner.

@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

Prerelease published from this PR's original head commit, as requested. Closing again (DO NOT MERGE test PR).

Written by Devin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants