Skip to content

feat(source-smoke-test): new Smoke Test Source for testing destinations#75181

Merged
Aaron ("AJ") Steers (aaronsteers) merged 10 commits intomasterfrom
devin/1773820598-source-smoke-test
Mar 19, 2026
Merged

feat(source-smoke-test): new Smoke Test Source for testing destinations#75181
Aaron ("AJ") Steers (aaronsteers) merged 10 commits intomasterfrom
devin/1773820598-source-smoke-test

Conversation

@aaronsteers
Copy link
Copy Markdown
Member

@aaronsteers Aaron ("AJ") Steers (aaronsteers) commented Mar 18, 2026

What

Adds a new source-smoke-test connector scaffold in the monorepo. This connector generates synthetic test data for destination regression testing (type variations, null handling, naming edge cases, schema variations, batch sizes).

All business logic lives in PyAirbyte's airbyte.cli.smoke_test_source module (shipped in PyAirbyte v0.41.0). This monorepo connector is intentionally a thin wrapper that delegates to it.

Related:

How

Minimal connector scaffold following existing conventions (modeled after source-faker):

  • source_smoke_test/run.py — imports SourceSmokeTest from PyAirbyte and launches via airbyte_cdk.entrypoint
  • pyproject.toml — declares airbyte >= 0.41.0 + airbyte-cdk >= 6.0.0 (CDK is a transitive dep of PyAirbyte; declared explicitly to satisfy the monorepo's pre-release CDK version check)
  • metadata.yaml — alpha release stage, enabled in both OSS and Cloud registries, PyPI publishing declared
  • docs/integrations/sources/smoke-test.md — user-facing documentation with stream catalog and changelog
  • Placeholder icon.svg

Review guide

  1. metadata.yamlVerify definitionId (4eb59af1-...) is unique and doesn't collide with existing connectors. Registry is enabled for both OSS and Cloud. PyPI package name is airbyte-source-smoke-test (does not yet exist on PyPI).
  2. pyproject.toml — Pins airbyte >= 0.41.0 (the version that ships the smoke test source module). Also declares airbyte-cdk >= 6.0.0 as a direct dependency — this is redundant at runtime (PyAirbyte already depends on airbyte-cdk >=7.3.9,<8.0.0) but required to pass the monorepo's detect-python-cdk.py --detect-prerelease check. The loose lower bound is intentional since PyAirbyte controls the actual CDK version.
  3. source_smoke_test/run.py — Imports airbyte_cdk.entrypoint.launch directly. The CDK is provided transitively by airbyte (PyAirbyte).

Human Review Checklist

  • Confirm definitionId 4eb59af1-e69b-4849-84f0-5d81cc5ce490 does not collide with any existing connector
  • Confirm PyPI package name airbyte-source-smoke-test is available / intended
  • Confirm enabling in both OSS and Cloud registries at alpha is acceptable

User Impact

Connector will be registered in both OSS and Cloud at alpha stage. It generates synthetic data only and has no external dependencies or side effects.

Can this PR be safely reverted and rolled back?

  • YES 💚

Link to Devin session: https://app.devin.ai/sessions/9c72389579884c06bf18cef11c4550e8
Requested by: Aaron ("AJ") Steers (@aaronsteers)

@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 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.
  • ❇️ 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.
  • 🚀 Connector Releases:
    • /publish-connectors-prerelease - Publishes pre-release connector builds (tagged as {version}-preview.{git-sha}) for all modified connectors in the PR.
    • /bump-progressive-rollout-version - Bumps connector version with an RC suffix (2.16.10-rc.1) for progressive rollouts (enableProgressiveRollout: true).
      • Example: /bump-progressive-rollout-version changelog="Add new feature for progressive rollout"
  • ☕️ 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.

Co-Authored-By: AJ Steers <aj@airbyte.io>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 18, 2026

source-smoke-test Connector Test Results

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

Results for commit 383a489.

♻️ This comment has been updated with latest results.

Co-Authored-By: AJ Steers <aj@airbyte.io>
@aaronsteers Aaron ("AJ") Steers (aaronsteers) marked this pull request as ready for review March 18, 2026 08:02
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

@devin-ai-integration devin-ai-integration bot changed the title feat(source-smoke-test): add minimal Python scaffold backed by PyAirbyte feat(source-smoke-test): new Destination Smoke Test Source backed by PyAirbyte Mar 18, 2026
@devin-ai-integration devin-ai-integration bot changed the title feat(source-smoke-test): new Destination Smoke Test Source backed by PyAirbyte feat(source-smoke-test): new Smoke Test Source for testing destinations, backed by PyAirbyte Mar 18, 2026
@aaronsteers
Copy link
Copy Markdown
Member Author

Devin, please fix the ci errors

devin-ai-integration bot and others added 4 commits March 18, 2026 22:46
Co-Authored-By: AJ Steers <aj@airbyte.io>
…e-release checks

Co-Authored-By: AJ Steers <aj@airbyte.io>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 19, 2026

Deploy preview for airbyte-docs ready!

✅ Preview
https://airbyte-docs-dta1415l9-airbyte-growth.vercel.app

Built with commit 383a489.
This pull request is being automatically deployed with vercel-action

devin-ai-integration[bot]

This comment was marked as resolved.

devin-ai-integration bot and others added 3 commits March 19, 2026 07:26
…ck is non-required)

Co-Authored-By: AJ Steers <aj@airbyte.io>
Co-Authored-By: AJ Steers <aj@airbyte.io>
… pre-release check)

Co-Authored-By: AJ Steers <aj@airbyte.io>
@aaronsteers Aaron ("AJ") Steers (aaronsteers) changed the title feat(source-smoke-test): new Smoke Test Source for testing destinations, backed by PyAirbyte feat(source-smoke-test): new Smoke Test Source for testing destinations Mar 19, 2026
@aaronsteers Aaron ("AJ") Steers (aaronsteers) merged commit 7de41d9 into master Mar 19, 2026
49 checks passed
@aaronsteers Aaron ("AJ") Steers (aaronsteers) deleted the devin/1773820598-source-smoke-test branch March 19, 2026 19:33
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.

2 participants