Skip to content

fix: include field path in config validation error messages#1047

Closed
Daryna Ishchenko (darynaishchenko) wants to merge 1 commit into
mainfrom
devin/1780998920-improve-config-validation-error-message
Closed

fix: include field path in config validation error messages#1047
Daryna Ishchenko (darynaishchenko) wants to merge 1 commit into
mainfrom
devin/1780998920-improve-config-validation-error-message

Conversation

@darynaishchenko

Copy link
Copy Markdown
Contributor

Summary

Config validation errors now include the field path that caused the failure. Previously, the error message from check_config_against_spec_or_exit only forwarded the raw jsonschema message (e.g. "None is not of type 'string'"), making it impossible for users to identify which config field was invalid without inspecting the full schema.

Before:

Config validation error: None is not of type 'string'

After:

Config validation error: Field "credentials.api_key" - None is not of type 'string'.

The internal_message now also includes both the field path and schema path for developer debugging.

Resolves: https://github.com/airbytehq/oncall/issues/12826

Requested by Daryna Ishchenko (@darynaishchenko).

Link to Devin session: https://app.devin.ai/sessions/d23f16e36da04eb5ac2aa780284ad11e

Previously, config validation errors only showed the jsonschema
message (e.g. 'None is not of type string') without identifying
which field caused the failure. Now the error message includes the
full dotted field path when available.

Resolves: airbytehq/oncall#12826
Co-Authored-By: Daryna Ishchenko <darina.ishchenko17@gmail.com>
@devin-ai-integration

Copy link
Copy Markdown
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown

👋 Greetings, Airbyte Team Member!

Here are some helpful tips and reminders for your convenience.

💡 Show Tips and Tricks

Testing This CDK Version

You can test this version of the CDK using the following:

# Run the CLI from this branch:
uvx 'git+https://github.com/airbytehq/airbyte-python-cdk.git@devin/1780998920-improve-config-validation-error-message#egg=airbyte-python-cdk[dev]' --help

# Update a connector to use the CDK from this branch ref:
cd airbyte-integrations/connectors/source-example
poe use-cdk-branch devin/1780998920-improve-config-validation-error-message

PR Slash Commands

Airbyte Maintainers can execute the following slash commands on your PR:

  • /autofix - Fixes most formatting and linting issues
  • /poetry-lock - Updates poetry.lock file
  • /test - Runs connector tests with the updated CDK
  • /prerelease - Triggers a prerelease publish with default arguments
  • /poe build - Regenerate git-committed build artifacts, such as the pydantic models which are generated from the manifest JSON schema in YAML.
  • /poe <command> - Runs any poe command in the CDK environment
📚 Show Repo Guidance

Helpful Resources

📝 Edit this welcome message.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown

PyTest Results (Fast)

4 097 tests  +3   4 085 ✅ +3   7m 22s ⏱️ -14s
    1 suites ±0      12 💤 ±0 
    1 files   ±0       0 ❌ ±0 

Results for commit 6cdb26a. ± Comparison against base commit 7da322d.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown

PyTest Results (Full)

4 100 tests  +3   4 088 ✅ +3   11m 29s ⏱️ + 2m 5s
    1 suites ±0      12 💤 ±0 
    1 files   ±0       0 ❌ ±0 

Results for commit 6cdb26a. ± Comparison against base commit 7da322d.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant