Skip to content

Commit 3294481

Browse files
committed
refactor(tools): drop the unused guard API from this PR
safeUrlPath, safeOpaqueUrlSegment and SafeUrlPathOptions had zero call sites -- 469 lines of unused API in a docs-generator change, including an allowEmptySegments flag whose own TSDoc documents a host-takeover footgun ('//evil.com' under new URL(relative, base)). They belong with the ~693 traversal call sites that use them, where they can be reviewed against real usage. What stays is the part with 44 live consumers: safeUrlPathSegment now accepts number and bigint. Staging already rejected every non-string, so this only widens acceptance -- a differential over 87 real call-site values shows 87 identical, 0 differing. Also: encodeURIComponent throws an unnamed URIError on a lone surrogate, which JSON.parse accepts, so a truncated emoji lost the param name the file claims as its invariant. And the exponential rejection told tiny values like 1e-7 they were 'too large' when they round-trip exactly; the rejection is right -- a path segment should not rewrite 0.0000001 into other text -- but the stated ground was not.
1 parent cb3a166 commit 3294481

2 files changed

Lines changed: 147 additions & 614 deletions

File tree

0 commit comments

Comments
 (0)