This fix addresses issue #11208 where WriteToFileTool would fail with
EACCES permission denied when the LLM outputs an absolute path like
"/plans" instead of a relative path.
The fix adds the same absolute path handling that already exists in
SearchReplaceTool and EditFileTool:
- Detect if the provided path is absolute using path.isAbsolute()
- Convert absolute paths to relative paths using path.relative(task.cwd, absolutePath)
This ensures that absolute paths get normalized to workspace-relative
paths rather than attempting to write to system root level directories.
Also adds two new tests for absolute path handling to prevent regression.