Repository navigation
Conversation
| * statements so their reflective uncertainty does not propagate to later reads. | ||
| * Security flow must instead visit those reads so their barriers remain effective. | ||
| */ | ||
| predicate localFlowStepForTypeInference(EarlyStageNode pred, EarlyStageNode succ) { |
Add all migration regressions before changing the implementation. Mark main's known missing and spurious results inline, and record its current consistency-query output. Use the existing internal node names and compare public/native definition coordinates so these tests compile before the migration. The integration commit switches the representation-specific checks to native shared definitions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add opt-in phi-definition retention for JavaScript's public SSA node API. Follow value-preserving uncertain definitions when determining guarded phi inputs. Keep phi retention disabled by default for existing clients. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use shared SSA for definitions, refinements, captures, and local/global data flow. Remove JavaScript's separate liveness, phi insertion, and reaching-definition computation while preserving its public SSA APIs as shared-backed adapters. Keep global continuing-value reads distinct from expression occurrences, preserve captured-variable and legacy Configuration guard behavior, and restrict reflective with-read shortcuts to type inference. Propagate post-updates after operation completion and preserve updates across value-preserving reassignments using the existing modeled may-value flow. Update test expectations and the change note. Keep known baseline clone and short-circuit false positives marked SPURIOUS. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
owen-mc
force-pushed
the
experiments/js-shared-ssa
branch
from
October 29, 2026 16:04
d8a3801 to
fda35fc
Compare
This branch has not been deployed
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.
JavaScript and TypeScript data flow now use the shared SSA implementation, including refinements and conservative captured-variable definitions. The existing public SSA APIs remain available as shared-backed adapters; the separate JavaScript SSA computation has been removed. This improves barrier-guard handling at control-flow joins, reducing false positives when guarded and overwritten values merge, and improves the ordering of post-update flow around calls and assignments.