Repository navigation
assert: fix partial matching of Set and Map entries - #67338
Stella050408 wants to merge 1 commit into
Conversation
Retry overlapping partial collection matches with augmenting paths when greedy matching fails, while retaining the existing success paths Handle the alternate pairing for two-element Sets and cover reordered entries, shared references, Map values and cycles Fixes: nodejs#67317 Assisted-by: Codex Signed-off-by: Stella <353917373+Stella050408@users.noreply.github.com>
|
Welcome to Node.js, and thank you for your first contribution! Before review, please take a moment to read:
Please make sure every commit is signed off. For a first pull request, GitHub Actions require collaborator approval and Jenkins CI must be started by a collaborator or triager, so an initial wait is normal. Caution AgentScan found account activity patterns that may be consistent with automation. This is a heuristic, not proof that this pull request was opened by an agent or violates policy. AI-assisted contributions are permitted, but automated tooling must not open pull requests without advance approval, and contributors must personally understand, test, verify, and take responsibility for every submitted change. See the AgentScan analysis, AI use policy, and automation policy for additional context. |
Partial comparisons can greedily consume an entry needed by another Set member or Map entry, rejecting collections that are deeply equal after reordering
Retry failed greedy matches using augmenting paths and cached candidate comparisons, and try both pairings for two-element Sets
Add regression coverage for reordered entries, partial subsets, shared references, Map values and circular entries
Validation on a native macOS arm64 build:
Fixes: #67317