Repository navigation
Conformance: explain the 390 divergences undefined support left unexplained - #201
Merged
Merged
Conversation
…unexplained Every line #193 added to `unexplained.txt` now has a reason in its case's `.triage`, and the list is empty. 60 cases: - By design (spec): `+` never coerces, `<` on non-number/string operands, `&&`/`||` result types, `void` truthiness, rest-parameter function types, `super(...)` as its own statement, `this` in a parameter default, `instanceof` an unrelated class, method references, `Intl`, no `any`. - Bugs already filed: SUB-1154, SUB-1433, SUB-1437, SUB-1500, SUB-1555. - Bugs filed now: SUB-1607 to SUB-1623. - Artifacts: error-recovery types, the runner pairing a synthesized node, a module-level pattern binding's global slot, and the error reported at `super()` rather than at the use. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017nKeavEGsPEA8r3mcATdmj
…e-unexplained-triage-hd4dym # Conflicts: # crates/conformance/typescript/types/union/unionTypeReduction2.triage
|
|
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.
Requested by Shmuel Lamm · project thread
Undefined support (#193) re-ported the TypeScript conformance suite and put 390 divergences, across 60 cases, on
unexplained.txtwithout a reason. This PR gives each one a reason in its case's.triagefile, so the list is empty again and the guard once more covers every divergence the suite has.What the reasons are
+never coerces (most of the template-string cases), a rest-parameter function type is only satisfied by a rest function, the&&/||result types,voidtruthiness,super(...)as its own statement,thisin a parameter default,instanceofan unrelated class, bare method references,Intl, noanysuper()instead of at the useEach new issue was reproduced with
submilli checkbefore it was filed, and gives its repro, tsc's answer and the conformance lines. The largest groups are destructuring defaults (SUB-1607, SUB-1608), narrowing of destructured variables (SUB-1609), the template-literal folding of&(SUB-1612) andtypeof xas a value (SUB-1613).The by-design reasons reuse the wording earlier triage entries use, and cite spec sections. Four of the rules they cite are added to the spec in submilli/submilli-private on the branch of the same name.
The PR changes only
.triagefiles andunexplained.txt. No divergence changes and no compiler code changes.Relation to the open PRs
I built main with #199 and #200 merged in. Neither changes any of these 390 lines, so the entries stay valid whichever lands first. On main, the guard still fails on
types/union/unionTypeReduction2lines 51 and 52, which this PR leaves alone because both #199 and #200 already explain them.How to verify
SUBMILLI_SKIP_HTTP_TESTS=1 SUBMILLI_TEST_NIGHTLY_ONLY=1 cargo test --release -p conformance --test typescriptOn this branch the only failure is the
unionTypeReduction251/52 one from main.crates/conformance/typescript/unexplained.txtis empty. To spot-check a bug reason, take the repro from its Linear issue and runsubmilli checkon it.🤖 Generated with Claude Code
https://claude.ai/code/session_017nKeavEGsPEA8r3mcATdmj
Generated by Claude Code