Improve reliability, scoring transparency, and query classification#1
Merged
rapdev-turner merged 3 commits intomainfrom Mar 19, 2026
Merged
Conversation
Collaborator
rapdev-turner
commented
Mar 19, 2026
- io.py: wrap file operations with IoError for missing files, corrupt JSON, and OS failures
- api_clients.py: add 3-attempt retry with exponential backoff and Retry-After parsing for 429 rate limits
- recommendations.py: replace magic numbers with named constants with inline rationale comments
- heuristics.py: extract COMPLEXITY_BLOCKER_THRESHOLD as a named constant
- compare.py: name title similarity thresholds with explanatory comments
- normalize.py: fix query_family() to strip comments before classifying and use word-boundary regex; distinguish Datadog DDSQL from Dynatrace USQL so Datadog-native SQL is not flagged for translation
- terraform_planner.py: treat ddsql as validate_and_apply; use query family aware placeholders; mark DQL/USQL gaps with TRANSLATE prefix
- tests: add DDSQL vs USQL classification coverage
- io.py: wrap file operations with IoError for missing files, corrupt JSON, and OS failures - api_clients.py: add 3-attempt retry with exponential backoff and Retry-After parsing for 429 rate limits - recommendations.py: replace magic numbers with named constants with inline rationale comments - heuristics.py: extract COMPLEXITY_BLOCKER_THRESHOLD as a named constant - compare.py: name title similarity thresholds with explanatory comments - normalize.py: fix query_family() to strip comments before classifying and use word-boundary regex; distinguish Datadog DDSQL from Dynatrace USQL so Datadog-native SQL is not flagged for translation - terraform_planner.py: treat ddsql as validate_and_apply; use query family aware placeholders; mark DQL/USQL gaps with TRANSLATE prefix - tests: add DDSQL vs USQL classification coverage
- api_clients.py: B310 urlopen targets env-configured API endpoints only - deployment.py: B404/B603 subprocess calls are intentional Terraform invocations
- api_clients.py: fix 429 retry to respect MAX_RETRIES on final attempt and raise RateLimitError instead of generic ApiClientError; remove unused _is_retryable() function - terraform_planner.py: collapse _placeholder_query branches where both definition_type arms returned identical strings; merge dynatrace_dql and sql_like into a single branch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.