Summary
The Supabase plugin's auth store (src/server/store.ts) has not been tested or validated on Windows. OpenCode CLI supports Windows, so the plugin should work there too.
Known discrepancies
resolveStoreRoot() L27 uses worktree === dirname(worktree) to reject filesystem root paths. On Windows, path.dirname("C:\\") returns "C:\\" (same behavior as POSIX /), but UNC roots like \\server\share are untested. Node's path functions are platform-specific — running POSIX path.dirname on a Windows path produces wrong results and vice versa.
- The
..${sep} guard on L34 assumes POSIX sep === "/". On Windows sep === "\\".
- No Windows CI or cross-platform path tests exist yet.
Acceptance criteria
References
- Original bug:
worktree="/" caused EROFS on auth callback (9fd8d5a)
- Hardening:
fa92b13, f4c1c9c
- Code:
src/server/store.ts:20-40
Summary
The Supabase plugin's auth store (
src/server/store.ts) has not been tested or validated on Windows. OpenCode CLI supports Windows, so the plugin should work there too.Known discrepancies
resolveStoreRoot()L27 usesworktree === dirname(worktree)to reject filesystem root paths. On Windows,path.dirname("C:\\")returns"C:\\"(same behavior as POSIX/), but UNC roots like\\server\shareare untested. Node'spathfunctions are platform-specific — running POSIXpath.dirnameon a Windows path produces wrong results and vice versa...${sep}guard on L34 assumes POSIXsep === "/". On Windowssep === "\\".Acceptance criteria
path.win32or CI on Windows)parse(worktree).root === worktreeas a cross-platform root guard\\?\) handlingReferences
worktree="/"caused EROFS on auth callback (9fd8d5a)fa92b13,f4c1c9csrc/server/store.ts:20-40