Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .changeset/windows-path-guidance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@fission-ai/openspec": patch
---

### Documentation

- Document cross-platform path assertion guidance for tests, especially Windows path separators in CLI output.
7 changes: 7 additions & 0 deletions test/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,13 @@ Applies to tests under `test/`.
- Full suite: `pnpm test`
- Run `pnpm run build` before focused CLI tests when implementation changes may leave `dist/` stale.

## Cross-Platform Paths

- Do not hard-code Unix path separators in CLI output expectations unless the implementation intentionally emits POSIX paths.
- For filesystem paths, build expected values with `path.join(...)`, `path.relative(...)`, or `FileSystemUtils.joinPath(...)`.
- For human-readable output, either assert a deliberately normalized display format or normalize both actual and expected strings before comparing, for example with `FileSystemUtils.toPosixPath()` to convert backslashes to forward slashes for cross-platform consistency.
- When touching path behavior, add coverage that would fail on Windows path separators.

## Path Canonicalization

Path identity is a recurring CI failure mode: Windows short/long paths, symlink or
Expand Down
Loading