Expand description
Repository-relative lexical path validation.
Moved here from prikk-replay (DC-54): this is pure lexical grammar with no dependency on
RepoPath or lifecycle state, and object-envelope encoders need to call it without creating a
prikk-object -> prikk-replay dependency cycle (prikk-replay already depends on
prikk-object). prikk-replay::RepoPath::parse calls this function and re-exports it, so
every existing caller of prikk_replay::validate_repo_path / prikk_store::validate_repo_path
keeps compiling unchanged.
Functions§
- ascii_
fold - The single case-folding definition every case-insensitive-collision check across repository
paths, branch ref names, tag ref names, and maintainer trust key ids folds through (DC-72 design
ruling: “one folding definition, four call sites” —
rfcs/accepted/DC-72-PATH-SAFETY-CONFORMANCE.md§3.5).prikk-objectis the lowest crate every surface’s crate already depends on, directly or transitively, so this is the one place a fifth surface’s collision check would also reach. - is_
windows_ reserved_ name - Whether a path component’s basename (before the first
.) is a Windows-reserved device name (CON,PRN,AUX,NUL,COM1-COM9,LPT1-LPT9), checked case-insensitively and regardless of host OS. Exposed for other storage surfaces that build a literal filesystem path component from user-supplied text outside theRepoPathgrammar (DC-72). - validate_
repo_ path - Validate that a path is safe as a repository-relative path.