Repository navigation
fix(source-zoho-crm, source-google-ads): fix two Docker read reds of the standard tests - #88944
Anatolii Yatsuk (tolik0) wants to merge 4 commits into
Conversation
The stream schemas listed a picklist field's current values as an `enum`. Zoho keeps a value on existing records after it is removed from the picklist, so those records fail schema validation: the test account has one lead (`Industry`) and one contact (`Lead_Source`) with such a value, and the Docker read test of the standard tests turns red on them. The field stays a nullable string. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
13 of the 16 suggested streams used names from before 2.0.0 (campaigns, accounts, ad_group_ads, ...), which no discovered stream has, so the suggested set shrank to 3 streams in the Cloud UI and in the standard tests' Docker read. Map each to the stream it was renamed to. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
👋 Greetings, Airbyte Team Member!Here are some helpful tips and reminders for your convenience. 💡 Show Tips and TricksPR Slash CommandsAirbyte Maintainers (that's you!) can execute the following slash commands on your PR:
📚 Show Repo GuidanceHelpful Resources
|
|
Note Autopilot progressive rollouts are not enabled for the following modified connector(s):
This is a courtesy heads-up only — it does not block merge or fail any check. |
…e changelog rows The changelog row was written with a placeholder before the pull request existed; it now links the pull request. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
master released source-google-ads 6.1.5 and 6.1.6 and source-zoho-crm 0.3.5 since this branch was cut. Re-bump to 6.1.7 and 0.3.6 and keep master's changelog rows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Detected
|
| | Version | Date | Pull Request | Subject | | ||
| |:------------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
There was a problem hiding this comment.
[markdownlint-fix] reported by reviewdog 🐶
| | Version | Date | Pull Request | Subject | | |
| |:------------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------| | |
| | Version | Date | Pull Request | Subject | | |
| | :------------ | :----------- | :--------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
What
source-zoho-crm: stop declaring a picklist field's values as an
enumin the generated stream schemas, for bothpicklistandmultiselectpicklistfields. The field stays a nullable string (or an array of them).source-google-ads: correct
suggestedStreamsin metadata.yaml. 13 of the 16 names were the stream names from before 2.0.0, which no discovered stream has any more. Each one is mapped to the stream it was renamed to:campaignscampaignaccountscustomerad_group_adsad_group_adad_group_ad_reportad_group_ad_legacyad_groupsad_groupkeyword_reportkeyword_viewcampaign_labelscampaign_labelad_group_labelsad_group_labelad_group_ad_labelsad_group_ad_labeluser_location_reportuser_location_viewdisplay_keyword_performance_reportdisplay_keyword_viewshopping_performance_reportshopping_performance_viewdisplay_topics_performance_reporttopic_viewclick_view,account_performance_reportandgeographic_view_with_metricswere already current.Why
Industry) and one contact (Lead_Source) with such a value, and the default Docker read of airbytehq/airbyte-internal-issues#17137 reports them as schema violations.validate_schema: falseis not available, since the connector is attest_strictness_level: high. Droppingenumonly widens the schema; the JSON type is unchanged, so no destination column changes.Verification
poetry run pytest unit_tests: 107 passed (the two picklist cases now expect noenum).discoverandreadofincremental_leads_zoho_crm_stream(21 records) andincremental_contacts_zoho_crm_stream(13 records) with the GSM test secret, validated withjsonschemaagainst the discovered schemas: on master, 1 lead failsIndustryenumand 1 contact failsLead_Sourceenum; on this branch, 0 records fail, and no field keeps anenum.discoverwith the publishedlatestimage and the GSM test secret lists all 16 new names.CheckVersionIncrementand the documentation checks on the changelog rows.CheckVersionIncrementrequires the source-google-ads bump for a metadata-only change (it fails without it).ruff checkandruff format --check(0.8.3) pass on the changed Python files.Known gap
The default Docker read of source-google-ads stays red after this PR, and now lists more streams. With both test configs (windows 2022-06-01..05 and 2025-05-10..11), the published image returns rows only for
customer; every other suggested stream completes with no rows, althoughexpected_records.jsonlandexpected_records_click.jsonlhold rows for most of them from earlier runs. The test account's data has to be checked or the windows moved in the GSM test secret. That is not a code change, and it is listed as a follow-up in airbytehq/airbyte-internal-issues#17133.Merge order
Independent of the other PRs, the CI PR #88945 included: source-zoho-crm pins CDK 1.8.0, so the new in-process step only warns for it, and the in-process suite of source-google-ads does not read
suggestedStreams. Merge it before the CDK release of airbytehq/airbyte-internal-issues#17137 that turns the Docker read on by default, so that source-zoho-crm does not go red there.Part of airbytehq/airbyte-internal-issues#17133, together with the CI step in #88945, the other connector fix PRs (#88940, #88941, #88942, #88943) and the CDK change in airbytehq/airbyte-python-cdk#1232, which this PR does not depend on.
🤖 Generated with Claude Code
Important
Active progressive rollout warning for source-google-ads.