Repository navigation
fix: close alternate Windows path policy spellings - #216
Merged
Merged
Conversation
This was referenced Oct 4, 2026
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.
Exact-replay path checks compared raw backslash-only prefixes, although Windows accepts forward/mixed separators. This allowed device and credential-bearing UNC spellings through validation. Compare a normalized separator spelling only for device/UNC checks; keep the reviewed path string and fingerprint input unchanged. Reject NT-namespace device prefixes and empty UNC authorities as well. Closes #212; child of #210.
The patch preserves ordinary drive/UNC paths, including @ in a filename, and does not access output destinations. Invalid drafts fail before planned writes/store creation. Existing stored files are revalidated by both Get and Resolve; old unsafe paths are now rejected there too. The scenario contract also corrects the already-supported schema versions (1 and 2).
Validation: 10 initial regression cases failed before implementation, then five review cases reproduced the NT/empty-authority gaps. All 71 focused scenario tests pass after correction (27 new cases), with zero skips/warnings. Tests verify path spelling round trips, distinct fingerprints for distinct spellings, no persistence on refusal, and revalidation of edited stored paths. Tool-less Claude review completed; Codex confirmed/corrected relevant findings. Release2024/2025/2026/2027 x64 L2 passed on final SHA fc037b4; Both CI runs 37191243341 / 37191210041 passed. Pre-existing malformed fixed-value type handling is tracked separately in #217. No Navisworks execution or L3 claim.