| … | … | @@ -0,0 +1,44 @@ | |
| 39 | + | ), | |
| 40 | + | ); | |
| 41 | + | }).pipe( | |
| 42 | + | Effect.mapError((cause) => new V2DesktopProfileInitializationError({ destinationPath, cause })), | |
This wraps every filesystem failure in the pipeline with only the destination directory, so failures while probing or reading the source lose the resource and stage where they occurred. The error convention requires structured, bounded context at the known translation boundary.
Suggested fix: map each fallible filesystem operation where it occurs, recording the relevant source/destination path, stage, and normalized filesystem category while preserving the immediate error as cause.
Posted via Macroscope — Effect Service Conventions
Fixed in ace0d4421df. Each filesystem operation now records its operation and relevant resource path, normalizes the category from the filesystem reason, and preserves the immediate error as cause. Added a regression test for a failed source read; focused tests, lint, and desktop typecheck pass.