BE-500, BE-501: HashQL: Unify mixed parameter resolution in data dependency analysis#8607
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
2 Skipped Deployments
|
Merging this PR will not alter performance
Comparing Footnotes
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## bm/be-494-hashql-scc-loop-breaker-inlining #8607 +/- ##
==============================================================================
- Coverage 59.09% 59.08% -0.01%
==============================================================================
Files 1343 1342 -1
Lines 129632 129546 -86
Branches 5858 5850 -8
==============================================================================
- Hits 76601 76546 -55
+ Misses 52124 52096 -28
+ Partials 907 904 -3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
fb80624 to
d2ad307
Compare
1bebdcc to
1cba715
Compare
d2ad307 to
93fba40
Compare
1cba715 to
1da0f0a
Compare
PR SummaryMedium Risk Overview
Also folds Reviewed by Cursor Bugbot for commit 53acbb7. Bugbot is set up for automated code reviews on this repo. Configure here. |
93fba40 to
ffe8840
Compare
1da0f0a to
979bf1e
Compare
ffe8840 to
f3d71ce
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
There are 2 total unresolved issues (including 1 from previous review).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 4f7a295. Configure here.


🌟 What is the purpose of this PR?
This PR consolidates the parameter resolution logic in the data dependency analysis by unifying the handling of graph edges and constant bindings. Previously, these two sources of parameter values were handled by separate functions, but now they are processed together in a single unified approach that can handle mixed scenarios where parameters come from both sources.
🔍 What does this change?
resolve_params_constfunction and merges its functionality intoresolve_paramsresolve_paramsto handle both graph edges and constant bindings simultaneously usingtry_reducefor consensus checkingiterator_try_reduceandmaybe_uninit_uninit_array_transposelibrary featuresassert_matchesfeature from multiple library modulesload_param_mixedthat validates parameter resolution when predecessors provide a mix of constants and projectionsPre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
🛡 What tests cover this?
load_param_mixedvalidates the unified parameter resolution logic❓ How to test this?
load_param_mixedtest passes and validates mixed parameter resolution