airbyte-internal-ops 0.6.1__tar.gz → 0.7.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/PKG-INFO +6 -1
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/conftest.py +0 -2
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/__main__.py +40 -2
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/pyproject.toml +5 -5
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/ruff.toml +2 -2
- airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp/_sentry.py +101 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/app.py +1 -1
- airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/cli/repo.py → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp/cli/local.py +131 -8
- airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp/connector_ops/__init__.py +17 -0
- airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp/connector_ops/utils.py +859 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/assets.py +4 -5
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/__init__.py +1 -1
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/documentation.py +23 -22
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/models.py +7 -7
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/metadata.py +15 -15
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/packaging.py +11 -9
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/security.py +16 -20
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/version.py +94 -18
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/cli.py +6 -8
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/models.py +7 -8
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/utils.py +2 -2
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/_guidance.py +37 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/cloud_connector_versions.py +46 -9
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/server.py +5 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/integration_tests/test_documentation.py +1 -1
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_version.py +5 -7
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_models.py +4 -4
- airbyte_internal_ops-0.7.1/tests/test_sentry.py +109 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/uv.lock +23 -10
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.env.template +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/copilot-instructions.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/dependabot.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/pr-welcome-message.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/autofix-command.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/connector-regression-test.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/format-check.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/lint-check.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/lock-command.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/pdoc_preview.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/pdoc_publish.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/poe-command.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/pr-welcome.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/publish.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/pytest-fast.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/pytest-matrix.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/regression-tests-ci.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/release-drafter.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/semantic-pr-check.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/sentry-apply-command.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/sentry-preview.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/slash-command-dispatch.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/tk-todo-check.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.github/workflows/validate-build.yml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.gitignore +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/.mcp.json.template +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/CONTRIBUTING.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/docs/.gitignore +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/docs/generate.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/docs/templates/custom.css +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/docs/templates/theme.css +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/.gitignore +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/CONTRIBUTING.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/Pulumi.prod.yaml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/Pulumi.yaml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/infra/sentry/requirements.txt +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/poe_tasks.toml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/pyrefly.toml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/pytest.ini +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/dbml_assembler.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/erd_service.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/relationships.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/cli.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/hacks.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/insights.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/models.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/pylint.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/pylint_plugins/cdk_deprecation_checkers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/result_backends.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/connector/hooks.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/connector/normalization.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/pipx.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/poetry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/remote_storage.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/secrets.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/system/common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/system/docker.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/git.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/internal_tools.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/java.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/python.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/cache_keys.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/cli.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/cdk_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/command.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/dagger_fs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/format.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/modifed.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/yaml.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/argument_parsing.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/run_steps.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/gcs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/git.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/github.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/pip.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/sentry_utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/slack.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/build_customization.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/java_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/normalization.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/python_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/consts.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/context.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/list/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/list/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/reports.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/context.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/java_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/python_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/templates/test_report.html.j2 +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/steps.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/templates/up_to_date_pr_body.md.j2 +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/base_image.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/docker.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/gradle.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/no_op.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/poetry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/pull_request.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/models.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/pipeline.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/update/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/update/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/airbyte_ci.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/auto_update.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/click_decorators.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/confirm_prompt.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/dagger_pipeline_command.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/dagger_run.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/ensure_repo_root.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/lazy_group.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/secrets.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/telemetry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/consts.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/hacks.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/artifacts.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/ci_requirements.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/click_pipeline_context.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/pipeline_context.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/reports.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/secrets.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/singleton.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/steps.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/commands.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/constants.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/docs/external_documentation_urls.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/gcs_upload.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/files.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/gcs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/object_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/slack.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/.env.template +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/README.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/dagster_cloud.yaml +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/connector_metrics.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/github.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/metadata.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry_entry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry_report.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/slack.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/config.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/fetcher/connector_cdk_version.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/hacks.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/jobs/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/logging/publish_connector_lifecycle.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/logging/sentry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/models/ci_report.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/models/metadata.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/ops/slack.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/file_managers/local_file_manager.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/gcp.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/github.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/local.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/gcs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/github.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/base.html +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/connector_registry_locations.html +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/render.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/blob_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/object_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/poetry.lock +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/conftest.py.disabled +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/cloud_registry.json +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/oss_registry.json +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_connector_metrics.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_dagster_helpers.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_debug.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_partition_jobs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry_entry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry_report.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/sentry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/spec_cache.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/stale_metadata_report.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/base.html +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/connector_registry_locations.html +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/render.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/airbyte_repo/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/airbyte_repo/bump_version.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/airbyte_repo/list_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/airbyte_repo/utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/_base.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/_shared.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/cloud.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/gh.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cli/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cloud_admin/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cloud_admin/api_client.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cloud_admin/auth.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cloud_admin/connection_config.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/cloud_admin/models.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/connection_config_retriever/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/connection_config_retriever/audit_logging.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/connection_config_retriever/retrieval.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/connection_config_retriever/secrets_resolution.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/README.md +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/helpers.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/templates/documentation_headers_check_description.md.j2 +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/templates/section_content_description.md.j2 +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/checks/documentation/templates/template.md.j2 +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/consts.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/templates/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1/src/airbyte_ops_mcp/_legacy/airbyte_ci → airbyte_internal_ops-0.7.1/src/airbyte_ops_mcp}/connector_qa/templates/qa_checks.md.j2 +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/constants.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/docker_hub.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/gcp_auth.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/gcp_logs/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/gcp_logs/error_lookup.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/github_actions.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/github_api.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/connector_analysis.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/connector_qa.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/gcp_logs.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/github_actions.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/github_repo_ops.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/metadata.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/prerelease.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/prod_db_queries.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/prompts.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/mcp/regression_tests.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/metadata_validator.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/prod_db_access/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/prod_db_access/db_engine.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/prod_db_access/py.typed +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/prod_db_access/queries.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/prod_db_access/sql.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/py.typed +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/registry/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/registry/models.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/registry/publish.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/cdk_secrets.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/ci_output.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/commons/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/config.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/connection_fetcher.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/connection_secret_retriever.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/connector_runner.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/evaluation_modes.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/http_metrics.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/message_cache/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/message_cache/duckdb_cache.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/models.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/obfuscation.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/regression/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/regression/comparators.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/schema_generation.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/validation/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/validation/catalog_validators.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/regression_tests/validation/record_validators.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/src/airbyte_ops_mcp/telemetry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_erd_generator/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_erd_generator/builder.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_erd_generator/test_dbml_assembler.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_erd_generator/test_relationships.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/conftest.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/bad-header.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/bad-title.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/extra-header.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/missing-entry.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/out-of-order.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_ops/test_utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/conftest.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/integration_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/correct.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/incorrect_not_all_structure.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/invalid_links.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_assets.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_documentation.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_metadata.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_packaging.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_security.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/conftest.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_actions/test_environments.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_bases.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_build_image/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_build_image/dummy_build_customization.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_python_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_steps/test_common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/changelog_header_no_newline.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/changelog_header_no_separator.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/no_changelog_header.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/changelog_header_no_newline.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/changelog_header_no_separator.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_version_date_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_version_date_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_versions_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_versions_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/duplicate_entry_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/duplicate_entry_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/existing_entries_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/existing_entries_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/no_changelog_header.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/single_insert_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/single_insert_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_changelog.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_cli/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_cli/test_click_decorators.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_commands/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_commands/test_groups/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_commands/test_groups/test_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_dagger/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/test_python/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/test_python/test_common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_gradle.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/test_argument_parsing.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/test_run_steps.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_pip.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_models/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_models/test_click_pipeline_context.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_models/test_singleton.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_poetry/test_poetry_publish.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_publish.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_steps/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_steps/test_simple_docker_step.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_steps/test_version_check.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_tests/test_common.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_tests/test_python_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/test_upgrade_java_cdk.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/legacy/airbyte_ci/pipelines/utils.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/test_airbyte_admin_mcp.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/test_bump_version.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/test_cli_registry.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/test_list_connectors.py +0 -0
- {airbyte_internal_ops-0.6.1 → airbyte_internal_ops-0.7.1}/tests/test_prerelease.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-internal-ops
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7.1
|
|
4
4
|
Summary: MCP and API interfaces that let the agents do the admin work
|
|
5
5
|
Author-email: Aaron Steers <aj@airbyte.io>
|
|
6
6
|
Keywords: admin,airbyte,api,mcp
|
|
@@ -15,6 +15,7 @@ Requires-Dist: airbyte-cdk<8.0,>=7.3.9
|
|
|
15
15
|
Requires-Dist: airbyte-connector-models<1.0,>=0.1.3
|
|
16
16
|
Requires-Dist: airbyte-protocol-models-pdv2>=0.13.0
|
|
17
17
|
Requires-Dist: airbyte==0.35.4
|
|
18
|
+
Requires-Dist: asyncclick<9.0,>=8.1.7
|
|
18
19
|
Requires-Dist: asyncer<1.0,>=0.0.4
|
|
19
20
|
Requires-Dist: click<9.0,>=8.1.3
|
|
20
21
|
Requires-Dist: cloud-sql-python-connector[pg8000]<2.0,>=1.7.0
|
|
@@ -28,12 +29,16 @@ Requires-Dist: google-cloud-logging<4.0,>=3.9.0
|
|
|
28
29
|
Requires-Dist: google-cloud-secret-manager<3.0,>=2.18.0
|
|
29
30
|
Requires-Dist: google-cloud-storage<3.0,>=2.8.0
|
|
30
31
|
Requires-Dist: jinja2<4.0,>=3.1.2
|
|
32
|
+
Requires-Dist: markdown-it-py<3.0,>=2.2.0
|
|
31
33
|
Requires-Dist: pydantic>=2.0.0
|
|
34
|
+
Requires-Dist: pydash<8.0,>=6.0.2
|
|
32
35
|
Requires-Dist: python-dotenv<2.0,>=1.0.0
|
|
33
36
|
Requires-Dist: pyyaml<7.0,>=6.0.0
|
|
34
37
|
Requires-Dist: requests<3.0,>=2.31.0
|
|
35
38
|
Requires-Dist: rich<14.0,>=13.0.0
|
|
36
39
|
Requires-Dist: semver<4.0,>=3.0.1
|
|
40
|
+
Requires-Dist: sentry-sdk>=2.50.0
|
|
41
|
+
Requires-Dist: simpleeval<1.0,>=0.9.13
|
|
37
42
|
Requires-Dist: slack-sdk<4.0,>=3.36.0
|
|
38
43
|
Requires-Dist: sqlalchemy<3.0,>=2.0.0
|
|
39
44
|
Requires-Dist: toml<1.0,>=0.10.2
|
|
@@ -5,10 +5,8 @@
|
|
|
5
5
|
# - connector_insights: https://github.com/airbytehq/airbyte-ops-mcp/issues/50
|
|
6
6
|
# - connector_ops: https://github.com/airbytehq/airbyte-ops-mcp/issues/52
|
|
7
7
|
# - connector_pipelines: https://github.com/airbytehq/airbyte-ops-mcp/issues/53
|
|
8
|
-
# - connector_qa: https://github.com/airbytehq/airbyte-ops-mcp/issues/54
|
|
9
8
|
# - metadata_models: https://github.com/airbytehq/airbyte-ops-mcp/issues/55
|
|
10
9
|
# - metadata_service: https://github.com/airbytehq/airbyte-ops-mcp/issues/56
|
|
11
|
-
# Note: connector_live_tests was migrated to regression_tests/ (issue #51 closed)
|
|
12
10
|
|
|
13
11
|
collect_ignore_glob = [
|
|
14
12
|
# Legacy airbyte_ci source modules (recursive)
|
|
@@ -75,6 +75,8 @@ ABCTL_PROJECT_ALIAS = "abctl"
|
|
|
75
75
|
ABCTL_PROJECT_ID = "abctl"
|
|
76
76
|
CORAL_AGENTS_PROJECT_ALIAS = "coral-agents"
|
|
77
77
|
CORAL_AGENTS_PROJECT_ID = "coral-agents"
|
|
78
|
+
AIRBYTE_OPS_MCP_PROJECT_ALIAS = "airbyte-internal-ops-app"
|
|
79
|
+
AIRBYTE_OPS_MCP_PROJECT_ID = "internal-ops-app" # Actual Sentry project slug
|
|
78
80
|
|
|
79
81
|
# =============================================================================
|
|
80
82
|
# PROJECT CONFIGURATIONS
|
|
@@ -174,6 +176,12 @@ CORAL_AGENTS_GROUPING_ENHANCEMENTS = """\
|
|
|
174
176
|
# python: mark coral_agents modules as in-app
|
|
175
177
|
stack.module:coral_agents* +app"""
|
|
176
178
|
|
|
179
|
+
# Grouping enhancements for airbyte-internal-ops-app project
|
|
180
|
+
# Mark airbyte_ops_mcp modules as in-app for better stack trace grouping
|
|
181
|
+
AIRBYTE_OPS_MCP_GROUPING_ENHANCEMENTS = """\
|
|
182
|
+
# python: mark airbyte_ops_mcp modules as in-app
|
|
183
|
+
stack.module:airbyte_ops_mcp* +app"""
|
|
184
|
+
|
|
177
185
|
|
|
178
186
|
# =============================================================================
|
|
179
187
|
# PROJECTS
|
|
@@ -252,7 +260,6 @@ def define_abctl_project() -> tuple[sentry.Project, OutputVarsMap]:
|
|
|
252
260
|
filters=sentry.ProjectFiltersArgs(
|
|
253
261
|
error_messages=[
|
|
254
262
|
"*kong.ParseError: unexpected argument start",
|
|
255
|
-
"*errors.joinError: failed to determine if any previous psql version exists: error reading pgdata version file*",
|
|
256
263
|
"*values.yaml*no such file or directory*",
|
|
257
264
|
"*values.yml*no such file or directory*",
|
|
258
265
|
],
|
|
@@ -290,7 +297,6 @@ def define_coral_agents_project() -> tuple[sentry.Project, OutputVarsMap]:
|
|
|
290
297
|
grouping_enhancements=CORAL_AGENTS_GROUPING_ENHANCEMENTS,
|
|
291
298
|
opts=pulumi.ResourceOptions(
|
|
292
299
|
protect=True,
|
|
293
|
-
import_=f"{ORGANIZATION}/{CORAL_AGENTS_PROJECT_ID}",
|
|
294
300
|
),
|
|
295
301
|
)
|
|
296
302
|
outputs: OutputVarsMap = {
|
|
@@ -305,6 +311,36 @@ def define_coral_agents_project() -> tuple[sentry.Project, OutputVarsMap]:
|
|
|
305
311
|
return project, outputs
|
|
306
312
|
|
|
307
313
|
|
|
314
|
+
def define_airbyte_ops_mcp_project() -> tuple[sentry.Project, OutputVarsMap]:
|
|
315
|
+
"""Define the airbyte-internal-ops-app project for MCP server error monitoring.
|
|
316
|
+
|
|
317
|
+
This project monitors the airbyte-internal-ops package, which provides MCP tools
|
|
318
|
+
for Airbyte admin operations. It captures errors during server startup,
|
|
319
|
+
tool execution, and API interactions.
|
|
320
|
+
"""
|
|
321
|
+
project = sentry.Project(
|
|
322
|
+
AIRBYTE_OPS_MCP_PROJECT_ALIAS,
|
|
323
|
+
organization=ORGANIZATION,
|
|
324
|
+
name=AIRBYTE_OPS_MCP_PROJECT_ID,
|
|
325
|
+
slug=AIRBYTE_OPS_MCP_PROJECT_ID,
|
|
326
|
+
platform="python",
|
|
327
|
+
teams=[
|
|
328
|
+
"airbyte",
|
|
329
|
+
],
|
|
330
|
+
grouping_enhancements=AIRBYTE_OPS_MCP_GROUPING_ENHANCEMENTS,
|
|
331
|
+
)
|
|
332
|
+
outputs: OutputVarsMap = {
|
|
333
|
+
"projects.airbyte-internal-ops-app.slug": project.slug,
|
|
334
|
+
"projects.airbyte-internal-ops-app.url": project.slug.apply(
|
|
335
|
+
lambda s: f"https://{ORGANIZATION}.sentry.io/projects/{s}/"
|
|
336
|
+
),
|
|
337
|
+
"projects.airbyte-internal-ops-app.issue_grouping_url": project.slug.apply(
|
|
338
|
+
lambda s: f"https://{ORGANIZATION}.sentry.io/settings/projects/{s}/issue-grouping/"
|
|
339
|
+
),
|
|
340
|
+
}
|
|
341
|
+
return project, outputs
|
|
342
|
+
|
|
343
|
+
|
|
308
344
|
def define_connector_incidents_alert_rules(
|
|
309
345
|
project: sentry.Project,
|
|
310
346
|
) -> list[sentry.IssueAlert]:
|
|
@@ -739,6 +775,7 @@ def main() -> None:
|
|
|
739
775
|
_, connector_ci_outputs = define_connector_ci_project()
|
|
740
776
|
_, abctl_outputs = define_abctl_project()
|
|
741
777
|
_, coral_agents_outputs = define_coral_agents_project()
|
|
778
|
+
_, airbyte_ops_mcp_outputs = define_airbyte_ops_mcp_project()
|
|
742
779
|
|
|
743
780
|
# Create alert rules for connector-incidents project
|
|
744
781
|
# Note: Alert resources are created for side effects; return value not needed
|
|
@@ -758,6 +795,7 @@ def main() -> None:
|
|
|
758
795
|
**connector_ci_outputs,
|
|
759
796
|
**abctl_outputs,
|
|
760
797
|
**coral_agents_outputs,
|
|
798
|
+
**airbyte_ops_mcp_outputs,
|
|
761
799
|
}
|
|
762
800
|
for key, value in all_outputs.items():
|
|
763
801
|
pulumi.export(key, value)
|
|
@@ -12,6 +12,7 @@ dependencies = [
|
|
|
12
12
|
"airbyte-cdk>=7.3.9,<8.0",
|
|
13
13
|
"airbyte-connector-models>=0.1.3,<1.0",
|
|
14
14
|
"airbyte-protocol-models-pdv2>=0.13.0",
|
|
15
|
+
"asyncclick>=8.1.7,<9.0",
|
|
15
16
|
"asyncer>=0.0.4,<1.0",
|
|
16
17
|
"click>=8.1.3,<9.0",
|
|
17
18
|
"cloud-sql-python-connector[pg8000]>=1.7.0,<2.0",
|
|
@@ -25,12 +26,16 @@ dependencies = [
|
|
|
25
26
|
"google-cloud-secret-manager>=2.18.0,<3.0",
|
|
26
27
|
"google-cloud-storage>=2.8.0,<3.0",
|
|
27
28
|
"jinja2>=3.1.2,<4.0",
|
|
29
|
+
"markdown-it-py>=2.2.0,<3.0",
|
|
28
30
|
"pydantic>=2.0.0",
|
|
31
|
+
"pydash>=6.0.2,<8.0",
|
|
29
32
|
"python-dotenv>=1.0.0,<2.0",
|
|
30
33
|
"pyyaml>=6.0.0,<7.0",
|
|
31
34
|
"requests>=2.31.0,<3.0",
|
|
32
35
|
"rich>=13.0.0,<14.0",
|
|
33
36
|
"semver>=3.0.1,<4.0",
|
|
37
|
+
"sentry-sdk>=2.50.0",
|
|
38
|
+
"simpleeval>=0.9.13,<1.0",
|
|
34
39
|
"slack-sdk>=3.36.0,<4.0",
|
|
35
40
|
"sqlalchemy>=2.0.0,<3.0",
|
|
36
41
|
"toml>=0.10.2,<1.0",
|
|
@@ -105,11 +110,6 @@ ops-tools = [
|
|
|
105
110
|
"pytest-mock>=3.10.0,<4.0",
|
|
106
111
|
"simpleeval>=0.9.13,<1.0",
|
|
107
112
|
]
|
|
108
|
-
qa = [
|
|
109
|
-
"asyncclick>=8.1.7,<9.0",
|
|
110
|
-
"pydash>=6.0.2,<8.0",
|
|
111
|
-
"pytest-asyncio>=0.23.5,<1.0",
|
|
112
|
-
]
|
|
113
113
|
metadata-service = [
|
|
114
114
|
"datamodel-code-generator>=0.17.1,<1.0",
|
|
115
115
|
"gcloud>=0.18.3,<1.0",
|
|
@@ -13,13 +13,13 @@ exclude = [
|
|
|
13
13
|
"src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/50
|
|
14
14
|
"src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/52
|
|
15
15
|
"src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/53
|
|
16
|
-
"src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/54
|
|
17
16
|
"src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/56
|
|
18
17
|
# Legacy tests for the above subprojects
|
|
19
18
|
"tests/legacy/airbyte_ci/connector_erd_generator/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/49
|
|
20
19
|
"tests/legacy/airbyte_ci/connector_ops/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/52
|
|
21
20
|
"tests/legacy/airbyte_ci/pipelines/*", # https://github.com/airbytehq/airbyte-ops-mcp/issues/53
|
|
22
|
-
#
|
|
21
|
+
# Migrated from legacy but contains pre-existing lint issues - to be cleaned up separately
|
|
22
|
+
"src/airbyte_ops_mcp/connector_ops/utils.py", # Migrated from _legacy/airbyte_ci/connector_ops
|
|
23
23
|
]
|
|
24
24
|
|
|
25
25
|
[lint]
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# Copyright (c) 2025 Airbyte, Inc., all rights reserved.
|
|
2
|
+
"""Sentry error tracking integration for airbyte-ops-mcp.
|
|
3
|
+
|
|
4
|
+
This module provides automatic error tracking via Sentry for the airbyte-ops-mcp
|
|
5
|
+
package. Errors during server startup, tool execution, and API interactions are
|
|
6
|
+
automatically captured and reported.
|
|
7
|
+
|
|
8
|
+
The Sentry DSN is embedded in the package since it only allows write access
|
|
9
|
+
(sending errors), not read access. This is standard practice for client-side
|
|
10
|
+
error tracking.
|
|
11
|
+
|
|
12
|
+
To disable Sentry tracking, set the environment variable:
|
|
13
|
+
AIRBYTE_DISABLE_SENTRY=1
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
import logging
|
|
17
|
+
import os
|
|
18
|
+
from typing import Literal
|
|
19
|
+
|
|
20
|
+
import sentry_sdk
|
|
21
|
+
|
|
22
|
+
# Valid Sentry severity levels
|
|
23
|
+
SentryLevel = Literal["fatal", "error", "warning", "info", "debug"]
|
|
24
|
+
|
|
25
|
+
logger = logging.getLogger(__name__)
|
|
26
|
+
|
|
27
|
+
# Environment variable to disable Sentry tracking
|
|
28
|
+
DISABLE_SENTRY_ENV_VAR = "AIRBYTE_DISABLE_SENTRY"
|
|
29
|
+
|
|
30
|
+
# Sentry DSN for the airbyte-ops-mcp project
|
|
31
|
+
# This DSN only allows sending errors to Sentry, not reading data.
|
|
32
|
+
# It is safe to embed in client-side code per Sentry's documentation.
|
|
33
|
+
# Project: https://airbytehq.sentry.io/projects/internal-ops-app/
|
|
34
|
+
_SENTRY_DSN = "https://292842cbf7f632f34c68cff23f2deee3@o1009025.ingest.us.sentry.io/4510746336559104"
|
|
35
|
+
|
|
36
|
+
_sentry_initialized = False
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def _get_package_version() -> str:
|
|
40
|
+
"""Get the package version for Sentry release tracking."""
|
|
41
|
+
try:
|
|
42
|
+
from importlib.metadata import version
|
|
43
|
+
|
|
44
|
+
return version("airbyte-internal-ops")
|
|
45
|
+
except Exception as exc:
|
|
46
|
+
logger.debug("Failed to get package version for Sentry release", exc_info=exc)
|
|
47
|
+
return "unknown"
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
def init_sentry_tracking() -> bool:
|
|
51
|
+
"""Initialize Sentry error tracking if not already initialized.
|
|
52
|
+
|
|
53
|
+
Returns:
|
|
54
|
+
True if Sentry was initialized successfully, False otherwise.
|
|
55
|
+
"""
|
|
56
|
+
global _sentry_initialized
|
|
57
|
+
|
|
58
|
+
if _sentry_initialized:
|
|
59
|
+
return True
|
|
60
|
+
|
|
61
|
+
if os.getenv(DISABLE_SENTRY_ENV_VAR):
|
|
62
|
+
logger.debug("Sentry tracking is disabled via environment variable")
|
|
63
|
+
return False
|
|
64
|
+
|
|
65
|
+
try:
|
|
66
|
+
sentry_sdk.init(
|
|
67
|
+
dsn=_SENTRY_DSN,
|
|
68
|
+
release=f"airbyte-ops-mcp@{_get_package_version()}",
|
|
69
|
+
environment=os.getenv("SENTRY_ENVIRONMENT", "production"),
|
|
70
|
+
# Only send errors, not performance data
|
|
71
|
+
traces_sample_rate=0.0,
|
|
72
|
+
# Attach request data for better debugging
|
|
73
|
+
send_default_pii=False,
|
|
74
|
+
# Set server name to help identify the source
|
|
75
|
+
server_name=os.getenv("HOSTNAME", "unknown"),
|
|
76
|
+
)
|
|
77
|
+
_sentry_initialized = True
|
|
78
|
+
logger.debug("Sentry initialized successfully")
|
|
79
|
+
return True
|
|
80
|
+
except Exception as e:
|
|
81
|
+
logger.warning(f"Failed to initialize Sentry: {e}")
|
|
82
|
+
return False
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def capture_exception(exception: BaseException) -> None:
|
|
86
|
+
"""Capture an exception and send it to Sentry.
|
|
87
|
+
|
|
88
|
+
This is a convenience wrapper that ensures Sentry is initialized
|
|
89
|
+
before capturing the exception.
|
|
90
|
+
"""
|
|
91
|
+
if init_sentry_tracking():
|
|
92
|
+
sentry_sdk.capture_exception(exception)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def capture_message(message: str, level: SentryLevel = "info") -> None:
|
|
96
|
+
"""Capture a message and send it to Sentry.
|
|
97
|
+
|
|
98
|
+
This is useful for logging important events that aren't exceptions.
|
|
99
|
+
"""
|
|
100
|
+
if init_sentry_tracking():
|
|
101
|
+
sentry_sdk.capture_message(message, level=level)
|
|
@@ -12,8 +12,8 @@ and provides the main() function for the CLI entry point.
|
|
|
12
12
|
from airbyte_ops_mcp.cli import (
|
|
13
13
|
cloud, # noqa: F401
|
|
14
14
|
gh, # noqa: F401
|
|
15
|
+
local, # noqa: F401
|
|
15
16
|
registry, # noqa: F401
|
|
16
|
-
repo, # noqa: F401
|
|
17
17
|
)
|
|
18
18
|
from airbyte_ops_mcp.cli._base import app
|
|
19
19
|
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
"""CLI commands for local Airbyte monorepo operations.
|
|
3
3
|
|
|
4
4
|
Commands:
|
|
5
|
-
airbyte-ops
|
|
6
|
-
airbyte-ops
|
|
7
|
-
airbyte-ops
|
|
5
|
+
airbyte-ops local connector list - List connectors in the monorepo
|
|
6
|
+
airbyte-ops local connector info - Get metadata for a single connector
|
|
7
|
+
airbyte-ops local connector bump-version - Bump connector version
|
|
8
|
+
airbyte-ops local connector qa - Run QA checks on a connector
|
|
9
|
+
airbyte-ops local connector qa-docs-generate - Generate QA checks documentation
|
|
8
10
|
"""
|
|
9
11
|
|
|
10
12
|
from __future__ import annotations
|
|
@@ -15,6 +17,7 @@ from typing import Annotated, Literal
|
|
|
15
17
|
|
|
16
18
|
import yaml
|
|
17
19
|
from cyclopts import App, Parameter
|
|
20
|
+
from jinja2 import Environment, PackageLoader, select_autoescape
|
|
18
21
|
from rich.console import Console
|
|
19
22
|
|
|
20
23
|
from airbyte_ops_mcp.airbyte_repo.bump_version import (
|
|
@@ -31,6 +34,19 @@ from airbyte_ops_mcp.airbyte_repo.list_connectors import (
|
|
|
31
34
|
)
|
|
32
35
|
from airbyte_ops_mcp.cli._base import app
|
|
33
36
|
from airbyte_ops_mcp.cli._shared import exit_with_error, print_json
|
|
37
|
+
from airbyte_ops_mcp.connector_ops.utils import Connector
|
|
38
|
+
from airbyte_ops_mcp.connector_qa.checks import ENABLED_CHECKS
|
|
39
|
+
from airbyte_ops_mcp.connector_qa.consts import CONNECTORS_QA_DOC_TEMPLATE_NAME
|
|
40
|
+
from airbyte_ops_mcp.connector_qa.models import (
|
|
41
|
+
Check,
|
|
42
|
+
CheckCategory,
|
|
43
|
+
CheckStatus,
|
|
44
|
+
Report,
|
|
45
|
+
)
|
|
46
|
+
from airbyte_ops_mcp.connector_qa.utils import (
|
|
47
|
+
get_all_connectors_in_directory,
|
|
48
|
+
remove_strict_encrypt_suffix,
|
|
49
|
+
)
|
|
34
50
|
from airbyte_ops_mcp.mcp.github_repo_ops import list_connectors_in_repo
|
|
35
51
|
|
|
36
52
|
console = Console()
|
|
@@ -138,13 +154,13 @@ def _get_connector_info(
|
|
|
138
154
|
}
|
|
139
155
|
|
|
140
156
|
|
|
141
|
-
# Create the
|
|
142
|
-
|
|
143
|
-
app.command(
|
|
157
|
+
# Create the local sub-app
|
|
158
|
+
local_app = App(name="local", help="Local Airbyte monorepo operations.")
|
|
159
|
+
app.command(local_app)
|
|
144
160
|
|
|
145
|
-
# Create the connector sub-app under
|
|
161
|
+
# Create the connector sub-app under local
|
|
146
162
|
connector_app = App(name="connector", help="Connector operations in the monorepo.")
|
|
147
|
-
|
|
163
|
+
local_app.command(connector_app)
|
|
148
164
|
|
|
149
165
|
|
|
150
166
|
@connector_app.command(name="list")
|
|
@@ -486,3 +502,110 @@ def bump_version(
|
|
|
486
502
|
"new_version": result.new_version,
|
|
487
503
|
}
|
|
488
504
|
)
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
@connector_app.command(name="qa")
|
|
508
|
+
def run_qa_checks(
|
|
509
|
+
name: Annotated[
|
|
510
|
+
list[str] | None,
|
|
511
|
+
Parameter(
|
|
512
|
+
help="Connector technical name(s) (e.g., source-github). Can be specified multiple times."
|
|
513
|
+
),
|
|
514
|
+
] = None,
|
|
515
|
+
connector_directory: Annotated[
|
|
516
|
+
str | None,
|
|
517
|
+
Parameter(
|
|
518
|
+
help="Directory containing connectors to run checks on all connectors in this directory."
|
|
519
|
+
),
|
|
520
|
+
] = None,
|
|
521
|
+
check: Annotated[
|
|
522
|
+
list[str] | None,
|
|
523
|
+
Parameter(help="Specific check(s) to run. Can be specified multiple times."),
|
|
524
|
+
] = None,
|
|
525
|
+
report_path: Annotated[
|
|
526
|
+
str | None,
|
|
527
|
+
Parameter(help="Path to write the JSON report file."),
|
|
528
|
+
] = None,
|
|
529
|
+
) -> None:
|
|
530
|
+
"""Run QA checks on connector(s).
|
|
531
|
+
|
|
532
|
+
Validates connector metadata, documentation, packaging, security, and versioning.
|
|
533
|
+
Exit code is non-zero if any checks fail.
|
|
534
|
+
"""
|
|
535
|
+
# Determine which checks to run
|
|
536
|
+
checks_to_run = ENABLED_CHECKS
|
|
537
|
+
if check:
|
|
538
|
+
check_names = set(check)
|
|
539
|
+
checks_to_run = [c for c in ENABLED_CHECKS if type(c).__name__ in check_names]
|
|
540
|
+
if not checks_to_run:
|
|
541
|
+
exit_with_error(
|
|
542
|
+
f"No matching checks found. Available checks: {[type(c).__name__ for c in ENABLED_CHECKS]}"
|
|
543
|
+
)
|
|
544
|
+
|
|
545
|
+
# Collect connectors to check
|
|
546
|
+
connectors: list[Connector] = []
|
|
547
|
+
if name:
|
|
548
|
+
connectors.extend(Connector(remove_strict_encrypt_suffix(n)) for n in name)
|
|
549
|
+
if connector_directory:
|
|
550
|
+
connectors.extend(get_all_connectors_in_directory(Path(connector_directory)))
|
|
551
|
+
|
|
552
|
+
if not connectors:
|
|
553
|
+
exit_with_error("No connectors specified. Use --name or --connector-directory.")
|
|
554
|
+
|
|
555
|
+
connectors = sorted(connectors, key=lambda c: c.technical_name)
|
|
556
|
+
|
|
557
|
+
# Run checks synchronously (simpler than async for CLI)
|
|
558
|
+
all_results = []
|
|
559
|
+
for connector in connectors:
|
|
560
|
+
for qa_check in checks_to_run:
|
|
561
|
+
result = qa_check.run(connector)
|
|
562
|
+
status_icon = (
|
|
563
|
+
"[green]PASS[/green]"
|
|
564
|
+
if result.status == CheckStatus.PASSED
|
|
565
|
+
else "[red]FAIL[/red]"
|
|
566
|
+
)
|
|
567
|
+
console.print(
|
|
568
|
+
f"{status_icon} {connector.technical_name}: {result.check.name}"
|
|
569
|
+
)
|
|
570
|
+
if result.message:
|
|
571
|
+
console.print(f" {result.message}")
|
|
572
|
+
all_results.append(result)
|
|
573
|
+
|
|
574
|
+
# Write report if requested
|
|
575
|
+
if report_path:
|
|
576
|
+
Report(check_results=all_results).write(Path(report_path))
|
|
577
|
+
console.print(f"Report written to {report_path}")
|
|
578
|
+
|
|
579
|
+
# Exit with error if any checks failed
|
|
580
|
+
failed = [r for r in all_results if r.status == CheckStatus.FAILED]
|
|
581
|
+
if failed:
|
|
582
|
+
exit_with_error(f"{len(failed)} check(s) failed")
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
@connector_app.command(name="qa-docs-generate")
|
|
586
|
+
def generate_qa_docs(
|
|
587
|
+
output_file: Annotated[
|
|
588
|
+
str,
|
|
589
|
+
Parameter(help="Path to write the generated documentation file."),
|
|
590
|
+
],
|
|
591
|
+
) -> None:
|
|
592
|
+
"""Generate documentation for QA checks.
|
|
593
|
+
|
|
594
|
+
Creates a markdown file documenting all available QA checks organized by category.
|
|
595
|
+
"""
|
|
596
|
+
checks_by_category: dict[CheckCategory, list[Check]] = {}
|
|
597
|
+
for qa_check in ENABLED_CHECKS:
|
|
598
|
+
checks_by_category.setdefault(qa_check.category, []).append(qa_check)
|
|
599
|
+
|
|
600
|
+
jinja_env = Environment(
|
|
601
|
+
loader=PackageLoader("airbyte_ops_mcp.connector_qa", "templates"),
|
|
602
|
+
autoescape=select_autoescape(),
|
|
603
|
+
trim_blocks=False,
|
|
604
|
+
lstrip_blocks=True,
|
|
605
|
+
)
|
|
606
|
+
template = jinja_env.get_template(CONNECTORS_QA_DOC_TEMPLATE_NAME)
|
|
607
|
+
documentation = template.render(checks_by_category=checks_by_category)
|
|
608
|
+
|
|
609
|
+
output_path = Path(output_file)
|
|
610
|
+
output_path.write_text(documentation)
|
|
611
|
+
console.print(f"Documentation written to {output_file}")
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Connector operations utilities."""
|
|
2
|
+
|
|
3
|
+
from airbyte_ops_mcp.connector_ops.utils import (
|
|
4
|
+
Connector,
|
|
5
|
+
ConnectorInvalidNameError,
|
|
6
|
+
ConnectorLanguage,
|
|
7
|
+
ConnectorLanguageError,
|
|
8
|
+
ConnectorVersionNotFound,
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
__all__ = [
|
|
12
|
+
"Connector",
|
|
13
|
+
"ConnectorInvalidNameError",
|
|
14
|
+
"ConnectorLanguage",
|
|
15
|
+
"ConnectorLanguageError",
|
|
16
|
+
"ConnectorVersionNotFound",
|
|
17
|
+
]
|