Skip to content

Treat missing JSON paths as expected failures instead of errors#170

Open
cmttt wants to merge 2 commits intomainfrom
ls/silence-missing-json-path-errors
Open

Treat missing JSON paths as expected failures instead of errors#170
cmttt wants to merge 2 commits intomainfrom
ls/silence-missing-json-path-errors

Conversation

@cmttt
Copy link
Collaborator

@cmttt cmttt commented Mar 6, 2026

Summary

  • Remove MissingJsonPath exception class from json_utils.py
  • Missing JSON paths now raise ExpectedUdfException instead, which is already filtered from error_infos before serialization to BigTable
  • Remove MissingJsonPath from _is_spammy_exception in executor (no longer needed)
  • Update test_json_data to expect no error_infos for missing paths with required=True

This eliminates noisy error traces for the common case where actions only have a subset of JSON fields (~498 JsonData calls across ~6000 rules). InvalidJsonType still raises for real type mismatches.

Test plan

  • Existing test_json_data tests pass with updated assertions
  • InvalidJsonType still raised for real type mismatches
  • Deploy to staging, verify reduced Sentry noise and smaller BigTable payloads

Remove MissingJsonPath exception. Missing JSON paths now raise
ExpectedUdfException, which is already filtered from error_infos
before serialization. This eliminates noisy error traces for the
common case where actions only have a subset of fields.

InvalidJsonType still raises for real type mismatches.
@cmttt cmttt requested review from a team, EXBreder, haileyok and vinaysrao1 as code owners March 6, 2026 23:12
Missing paths no longer produce error_infos entries.
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