Skip to content

Conversation

@epcim
Copy link
Owner

@epcim epcim commented Jan 7, 2026

…est suite

  • Implement relative path resolution for git cross diff and status

    • Support ., .., relative, and absolute paths
    • Resolve symlinks and convert to repo-relative paths
    • Fix worktree path resolution bug (always join with repo root)
  • Fix status command conflict detection

    • Check for conflicts in both worktree and local paths
    • Add git ls-files -u check for local working directory
  • Comprehensive test suite improvements

    • test/003: Add 5 test cases for relative path resolution
    • test/007: Fix stash conflict cleanup after sync
    • test/008: Handle Rust CLI output format variations
    • test/010: Add skip logic for Justfile implementation
    • test/015: Complete rewrite with 3 prune test scenarios

All three implementations (Justfile, Go, Rust) now support:

  • cd vendor/lib && git cross diff .
  • git cross diff ../sibling
  • git cross diff /absolute/path
  • git cross status

Technical fix: Metadata paths are repo-relative, so we must always join them with repo root before resolving, regardless of CWD.

Added SESSION_SUMMARY.md documenting the complete implementation.

…est suite

- Implement relative path resolution for git cross diff and status
  - Support ., .., relative, and absolute paths
  - Resolve symlinks and convert to repo-relative paths
  - Fix worktree path resolution bug (always join with repo root)

- Fix status command conflict detection
  - Check for conflicts in both worktree and local paths
  - Add git ls-files -u check for local working directory

- Comprehensive test suite improvements
  - test/003: Add 5 test cases for relative path resolution
  - test/007: Fix stash conflict cleanup after sync
  - test/008: Handle Rust CLI output format variations
  - test/010: Add skip logic for Justfile implementation
  - test/015: Complete rewrite with 3 prune test scenarios

All three implementations (Justfile, Go, Rust) now support:
- cd vendor/lib && git cross diff .
- git cross diff ../sibling
- git cross diff /absolute/path
- git cross status <any-path-format>

Technical fix: Metadata paths are repo-relative, so we must always
join them with repo root before resolving, regardless of CWD.

Added SESSION_SUMMARY.md documenting the complete implementation.
These commands with --dry flag work locally but hang in CI environment.
Added FIXME comments and skip logic. Full testing in test/010_worktree.sh.
@epcim epcim merged commit 31ebe45 into master Jan 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants