fix: pds check <file> resolves the workspace root (refs #67) - #72
Merged
Conversation
…efs #67) A relative file argument bottomed out at the empty path during the ancestor walk, whose `pds.toml` probe resolved against the cwd and was then handed to WalkDir — `walking ``` IO error. Absolutise `start` first. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Deploying pseudoscript-landing with
|
| Latest commit: |
4cfd1dc
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://ec2a937f.pseudoscript-landing.pages.dev |
| Branch Preview URL: | https://starscream-issue-67.pseudoscript-landing.pages.dev |
Deploying pseudoscript-ide with
|
| Latest commit: |
4cfd1dc
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://81f62e81.pseudoscript-ide.pages.dev |
| Branch Preview URL: | https://starscream-issue-67.pseudoscript-ide.pages.dev |
Deploying pseudoscript-model with
|
| Latest commit: |
4cfd1dc
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://7eea5c9e.pseudoscript-model.pages.dev |
| Branch Preview URL: | https://starscream-issue-67.pseudoscript-model.pages.dev |
Contributor
|
Shockwave — verification pass Scope: 3 files, +71/−5. Fix measured correct. Confirmed
Finding (low, non-blocking)
Verdict: PASS on correctness. Regression covered by 3 unit tests + bare-name repro scenario. One untested output-format change — flagged for awareness, non-blocking. |
JonathanTurnock
approved these changes
Jun 23, 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.
Problem
` worked (refs #67).pds check main.pdsexits 1 withwalking ``` IO error; onlypds checkCause
find_rootwalked the ancestors of a relative path. The chain bottoms out at the empty path"";"".join("pds.toml")resolves against the cwd, so the probe matched and""was returned as the root — then handed toWalkDir, which fails on an empty path. Affected any relative.pdsargument; a relative root above the cwd was also unreachable.Fix
Absolutise
start(lexically, no disk access) before the ancestor walk. The walk now climbs the real tree to the filesystem root; no empty-path ancestor.Verified
pds check main.pds,pds check pkg/svc.pds,pds check .— all exit 0 from inside a workspace.find_rootover a root-level file, a nested file, and a no-manifest tree.pds check <bare-name>from the workspace cwd (the exact repro).cargo test(pseudoscript, pseudoscript-project), clippy, rustfmt, model_conformance — green.🤖 Generated with Claude Code