-
Notifications
You must be signed in to change notification settings - Fork 8
Fix Windows symlink compatibility in framework validators #77
Copy link
Copy link
Closed
Labels
bugSomething isn't workingSomething isn't workingcross-platformCross-platform compatibility (Windows/macOS/Linux)Cross-platform compatibility (Windows/macOS/Linux)framework-reviewIdentified during comprehensive framework reviewIdentified during comprehensive framework reviewpriority-criticalMust fix immediatelyMust fix immediately
Description
Activity
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingcross-platformCross-platform compatibility (Windows/macOS/Linux)Cross-platform compatibility (Windows/macOS/Linux)framework-reviewIdentified during comprehensive framework reviewIdentified during comprehensive framework reviewpriority-criticalMust fix immediatelyMust fix immediately
The
.opencode/agents,.opencode/skills,.opencode/commands,.opencode/rulesfiles are Git symlinks stored as text files containing paths like../.agents/agents. On Windows checkouts withcore.symlinks=false(default without Developer Mode), these materialize as plain text files instead of resolving as symlinks, causing all framework validators to crash withENOTDIR.Not affected: Plugin tests (they use temp directories) — these pass on Windows.
Affected validators:
tests/agents/validate.mjs— agent/skill/command structural validationtests/workflow/run-all.mjs— 4 workflow integrity suitestests/modules/validate-modules.mjs— module system validationCI runs on ubuntu-latest where symlinks work, so this is local development friction.
Tasks
.agents/canonical paths directly instead of.opencode/symlinks, ORgit config core.symlinks truerequirement in READMEAffected Files
tests/agents/validate.mjs(lines 92, 196, 284, 361)tests/workflow/references.mjs(line 32)tests/workflow/paths.mjstests/workflow/gates.mjs(line 184)tests/workflow/invariants.mjs(line 55)tests/modules/validate-modules.mjs(lines 12-17)Identified during comprehensive framework review on 2026-07-21