Pathname recreation silently redirects relative operations from the current directory
- Dominant language
- Rust
- Stars
- 2.7k
- Forks
- 144
- Avg merge
- 12h 21m
- Merged PRs (30d)
- 146
Description
One bug found by [Specula](https://github.com/specula-org/Specula):
LiteBox stores CWD as normalized pathname text in Context/ResolvedPath, then cwd_prefix() reserializes that text for later relative operations. If the pathname is removed and recreated, later relative open/openat resolves into the replacement directory instead of preserving the original CWD identity or failing.
See the full [report](https://github.com/specula-org/specula-case-studies/blob/data/litebox-case-study-20260831/systems/litebox/modules/core/runs/litebox-known-aware-rerun-20260830/confirmed-bugs.md#entry-2-pathname-recreation-silently-redirects-relative-operations-from-the-current-directory) for more details.
Contributor guide
Research direction
Start by tracing Context/ResolvedPath and cwd_prefix(), then follow how relative open and openat operations use the stored CWD. Reproduce the pathname removal and recreation case from the linked report, and add coverage showing that later relative operations preserve the original directory identity or fail instead of entering the replacement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100