| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
somePropertyReducesToNever ranged over a map, so the combined properties it creates were created in a random order, and when there was more than one candidate, which of them got created before it returned varied between runs. Keep the counts in an OrderedMap so the properties are checked in the order they were found. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
This PR doesn't have any linked issues. Please open an issue that references this PR. From there we can discuss and prioritise. |
Sorry, something went wrong.
There was a problem hiding this comment.
The focused change correctly preserves existing behavior while eliminating nondeterministic iteration.
Review effort: Balanced
Findings: None
Makes intersection-property checking deterministic by preserving property discovery order.
Changes:
| File | Description |
|---|---|
| tsc/internal/checker/checker.go | Stabilizes property processing during intersection reduction. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
follow up to:
somePropertyReducesToNever ranges over a map, so the order it builds the combined properties in is random. when an intersection has more than one candidate, which ones get built before it returns changes from run to run, so the same program does slightly different work each time
on vscode from typescript-benchmarking with --singleThreaded, the symbol count comes out 8557485 / 8557513 / 8557486 on main, and 8557373 every time with this. before that PR it was stable too
diagnostics were the same in everything i ran (the 6 typescript-benchmarking tsc projects give the same output with and without this), but different work run to run is how order dependent output sneaks in, and it makes perf comparisons noisy
this keeps the counts in a collections.OrderedMap so the names are checked in the order they were found
used claude code to help write this, ive reviewed it