fix(fs): keep list paths in requested space through symlinks
Closes openchamber/openchamber#2627 Listing a directory through a workspace symlink was returning realpath entry paths. The file tree then rejected nested expand toggles because those paths fall outside the workspace root. Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
This commit is contained in:
co-authored by
Serhii Dziupin
parent
22766fe0ac
commit
ee57088dfe
@@ -35,3 +35,4 @@ Own filesystem API behavior for the web server runtime, including workspace-boun
|
||||
## Notes for contributors
|
||||
- Keep filesystem policy (workspace root checks, error mapping, exec timeout behavior) inside this module, not in the composition root.
|
||||
- If adding new `/api/fs/*` endpoints, add them in `routes.js` and extend this document.
|
||||
- `GET /api/fs/list` may resolve symlinks with `realpath` to read directory contents, but the response `path` and each entry `path` must stay in the caller's requested path space (`path.join(requestedPath, name)`). Returning real paths breaks file-tree expansion for directories reached through workspace symlinks.
|
||||
|
||||
Reference in New Issue
Block a user