This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

The guard's foldParents comment (internal/core/guard/match.go:883-885) says a trailing . after a .. is folded, but rm -rf ../. is allowed: the fold of a trailing . happens only past a first segment (./../., $PWD/../. and x/../../. warn on rm-rf-working-directory), while ../., ../../., ./. and /. all allow. Harmless in practice, since rm refuses a path whose last segment is . or .., but the comment promises a reading the code does not make and no test in internal/core/guard names ../. at all. Found by the v0.12.0 release-gate docs review of 4d634c4f0 (a HOLD on 17-guard.md:426, whose sentence c8ddb0425 narrowed to ./../.); pre-existing from 4ef5013bd.

issueresolvedminoriss-2609302306019245

The guard's foldParents comment (internal/core/guard/match.go:883-885) says a trailing . after a .. is folded, but rm -rf ../. is allowed: the fold of a trailing . happens only past a first segment (./../., $PWD/../. and x/../../. warn on rm-rf-working-directory), while ../., ../../., ./. and /. all allow. Harmless in practice, since rm refuses a path whose last segment is . or .., but the comment promises a reading the code does not make and no test in internal/core/guard names ../. at all. Found by the v0.12.0 release-gate docs review of 4d634c4f0 (a HOLD on 17-guard.md:426, whose sentence c8ddb0425 narrowed to ./../.); pre-existing from 4ef5013bd.

Grounds

  • pursued: a recursive delete of the parent spelt with a trailing dot warns as the bare parent does; a guard check of that form returning allow, or a written-form match the fold displaced, would show it wrong

Frontmatter

idiss-2609302306019245
typeissue
lifecycleresolved
severityminor

mentions1