Skip to content

chore(connectors): roll Cloud back to pre-SDM-7.23.7 versions for 19 sources - #83183

Merged
octavia-bot-admin[bot] merged 1 commit into
masterfrom
devin/1785230906-rollback-sdm-7237-connectors
Jul 28, 2026
Merged

octavia-bot-admin[bot] merged 1 commit into
masterfrom
devin/1785230906-rollback-sdm-7237-connectors

Conversation

@Airbyte-Support

Copy link
Copy Markdown
Contributor

What

Requested by Daryna Ishchenko (@darynaishchenko) as a fleet-wide alternative to per-customer version pins.

19 published sources are currently broken in Cloud because they are built on source-declarative-manifest:7.23.7, which requires AIRBYTE_ENABLE_UNSAFE_CODE=true for any Custom* component — including components bundled inside the connector's own published image. Cloud does not set that variable, so check, discover and read all fail immediately with AirbyteCustomCodeNotPermittedError.

Root cause and permanent fix: airbytehq/airbyte-python-cdk#1082 / airbytehq/airbyte-python-cdk#1083.

This PR rolls the Cloud registry back to each connector's last version built on SDM 7.23.6 (7.23.5 for source-klaviyo) using the registryOverrides.cloud.dockerImageTag metadata field, so affected customers recover without an admin applying an actor-level pin one workspace at a time.

How

Per connector: patch version bump (required for the metadata change to be published) plus a Cloud registry override, e.g.

-  dockerImageTag: 0.10.41
+  dockerImageTag: 0.10.42
   registryOverrides:
     cloud:
       enabled: true
+      dockerImageTag: 0.10.40 # last version built on SDM 7.23.6

Cloud rollback targets:

connector new version Cloud serves
source-apify-dataset 2.2.54 2.2.52
source-bing-ads 3.0.5 3.0.3
source-chargebee 0.10.42 0.10.40
source-google-search-console 2.1.7 2.1.5
source-greenhouse 0.7.31 0.7.29
source-instagram 4.2.37 4.2.35
source-klaviyo 2.19.2 2.19.0
source-linkedin-ads 5.6.12 5.6.10
source-monday 2.5.16 2.5.14
source-nexus-datasets 0.1.13 0.1.11
source-notion 4.0.18 4.0.16
source-outreach 1.1.39 1.1.37
source-paypal-transaction 2.6.42 2.6.40
source-pinterest 2.2.9 2.2.7
source-pylon 0.0.17 0.0.15
source-qualaroo 0.4.54 0.4.52
source-recurly 1.3.58 1.3.56
source-retently 0.3.54 0.3.52
source-slack 3.2.16 3.2.14

Target versions were derived by walking each connector's published registry metadata backwards until connectorBuildOptions.baseImage was no longer 7.23.7.

Review guide

  1. airbyte-integrations/connectors/*/metadata.yaml — two-line change each; no manifest, spec or component changes.
  2. docs/integrations/sources/*.md — changelog rows.

Note deliberately not done here: the new versions still declare baseImage: 7.23.7, so OSS/Self-Managed users continue to receive a broken image unless they set AIRBYTE_ENABLE_UNSAFE_CODE=true. Reverting baseImage to the 7.23.6 digest instead would cover OSS too, at the cost of 19 real rebuilds. Happy to switch this PR to that shape if preferred.

User Impact

Affected Cloud customers stop failing without any per-workspace intervention, at the cost of missing the newest connector patch until airbytehq/airbyte-python-cdk#1083 ships and the connectors are rebuilt on a fixed base image. At that point the registryOverrides.cloud.dockerImageTag lines must be removed again — this is a temporary rollback, not a permanent state.

Can this PR be safely reverted and rolled back?

  • YES 💚

Link to Devin session: https://app.devin.ai/sessions/fbef868f12844f26b7cb6edbc1b3a8b0
Requested by: Airbyte Support (@Airbyte-Support)

…sources

Co-Authored-By: syed.khadeer@airbyte.io <cloud-support@airbyte.io>
@devin-ai-integration

Copy link
Copy Markdown
Contributor

🤖 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, 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 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

Copy link
Copy Markdown
Contributor

Note

Autopilot progressive rollouts are not enabled for the following modified connector(s):

  • source-apify-dataset
  • source-bing-ads
  • source-chargebee
  • source-google-search-console
  • source-greenhouse
  • source-instagram
  • source-klaviyo
  • source-linkedin-ads
  • source-monday
  • source-nexus-datasets
  • source-notion
  • source-outreach
  • source-paypal-transaction
  • source-pinterest
  • source-pylon
  • source-qualaroo
  • source-recurly
  • source-retently
  • source-slack

This is a courtesy heads-up only — it does not block merge or fail any check.
To enable automatic progressive rollouts for the connector(s) above, comment
/enable-autopilot-rollouts on this PR. This sets defaultRolloutMode: autopilot
and enableProgressiveRollout: true in each connector's metadata.yaml,
preserving any existing autopilotConfig.

@github-actions

github-actions Bot commented Jul 28, 2026 •

Copy link
Copy Markdown
Contributor

source-apify-dataset Connector Test Results

5 tests   2 ✅  6s ⏱️
1 suites  3 💤
1 files    0 ❌

Results for commit dc2f2bd.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jul 28, 2026 •

Copy link
Copy Markdown
Contributor

source-greenhouse Connector Test Results

6 tests   3 ✅  7s ⏱️
2 suites  3 💤
2 files    0 ❌

Results for commit dc2f2bd.

♻️ This comment has been updated with latest results.

@devin-ai-integration

Copy link
Copy Markdown
Contributor

Re Daryna Ishchenko (@darynaishchenko)'s request to drop any connector here that doesn't use custom components: I re-verified all 19 and none can be dropped — every one of them bundles a components.py and resolves at least one class_name from its manifest, so all 19 hit the AirbyteCustomCodeNotPermittedError gate on SDM 7.23.7.

connector custom classes referenced from the manifest
source-apify-dataset WrappingDpathExtractor
source-bing-ads BingAdsCampaignsRecordTransformer, BingAdsGzipCsvDecoder, BingAdsReportDownloadRequester, BingAdsReportZipCsvDecoder, BulkDatetimeToRFC3339, BulkStreamsStateMigration, CustomReportSchemaLoader, CustomReportTransformation, DuplicatedRecordsFilter, LightSubstreamPartitionRouter
source-chargebee CustomFieldTransformation
source-google-search-console CustomReportExtractDimensionsFromKeys, CustomReportSchemaLoader, LoadQuotaBackoffStrategy, NestedSubstreamStateMigration, SanitizeNumericFields
source-greenhouse GreenhouseStateMigration
source-instagram InstagramBreakDownResultsTransformation, InstagramClearUrlTransformation, InstagramInsightsTransformation, InstagramMediaChildrenTransformation, RFC3339DatetimeSchemaNormalization, UserInsightsExtractor, UserInsightsSubstreamPartitionRouter
source-klaviyo ArchivedToPerPartitionStateMigration, CampaignsDetailedTransformation, CampaignsStateMigration, KlaviyoErrorHandler
source-linkedin-ads LinkedInAdsErrorHandler, LinkedInAdsRecordExtractor, SafeEncodeHttpRequester
source-monday ItemCursorPaginationStrategy, ItemPaginationStrategy, MondayActivityExtractor, MondayGraphqlRequester, MondayIncrementalItemsExtractor, MondayStateMigration, MondayTransformation
source-nexus-datasets FlexibleDecoder, NexusCustomAuthenticator
source-notion BlocksRetriever, NotionPropertiesTransformation, NotionUserTransformation
source-outreach CustomExtractor
source-paypal-transaction PayPalOauth2Authenticator
source-pinterest AdAccountRecordExtractor, PinterestAnalyticsBackoffStrategy
source-pylon MigrateIssuesCursorFromCreatedAtToUpdatedAt
source-qualaroo CustomAuthenticator, CustomExtractor
source-recurly ExportDatesExtractor
source-retently AuthenticatorRetently
source-slack ChannelMembersExtractor, ChannelsRetriever, MessagesAndThreadsHttpRequester, ThreadsStateMigration

Worth noting the gate is not limited to Custom*-prefixed class names — it fires on any class_name resolution in create_custom_component, which is why connectors like source-paypal-transaction (a custom authenticator only) are affected too. The selection criterion for this list was exactly that: published on SDM 7.23.7 and resolving a class_name; other connectors on 7.23.7 without custom components are unaffected and are not in this PR.

Verification of the fix on a real Cloud connection (Devin sandbox workspace, dummy Chargebee credentials, Dev Null destination):


Devin session

@github-actions

Copy link
Copy Markdown
Contributor

source-instagram Connector Test Results

90 tests   87 ✅  41s ⏱️
 2 suites   3 💤
 2 files     0 ❌

Results for commit dc2f2bd.

@github-actions

Copy link
Copy Markdown
Contributor

source-chargebee Connector Test Results

142 tests   139 ✅  3m 22s ⏱️
  2 suites    3 💤
  2 files      0 ❌

Results for commit dc2f2bd.

@darynaishchenko
Daryna Ishchenko (darynaishchenko) marked this pull request as ready for review July 28, 2026 09:38
@github-actions

Copy link
Copy Markdown
Contributor

source-monday Connector Test Results

44 tests   36 ✅  25s ⏱️
 2 suites   8 💤
 2 files     0 ❌

Results for commit dc2f2bd.

@github-actions

Copy link
Copy Markdown
Contributor

source-nexus-datasets Connector Test Results

10 tests   9 ✅  6s ⏱️
 2 suites  1 💤
 2 files    0 ❌

Results for commit dc2f2bd.

@darynaishchenko

Daryna Ishchenko (darynaishchenko) commented Jul 28, 2026 •

Copy link
Copy Markdown
Collaborator

/force-merge reason="version rollback for sources affected by cdk update"

Force-merge job started... Check job output.

Force merge successful! This PR has been merged.

@octavia-bot-admin
octavia-bot-admin Bot merged commit d270354 into master Jul 28, 2026
229 of 251 checks passed
@octavia-bot-admin
octavia-bot-admin Bot deleted the devin/1785230906-rollback-sdm-7237-connectors branch July 28, 2026 09:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment