Skip to content

feat: extract and abstract home-relative path behind interface - #21

Merged
polymorcodeus merged 1 commit into
mainfrom
resolver-interf
Aug 20, 2026
Merged

feat: extract and abstract home-relative path behind interface#21
polymorcodeus merged 1 commit into
mainfrom
resolver-interf

Conversation

@polymorcodeus

Copy link
Copy Markdown
Owner

Changes:

  • internal/scope/scope.go - new scope.Resolver interface (ToStorage, ToLive, BaseDir) and HomeRelativeResolver.
  • service/service.go - Service now holds a resolver scope.Resolver; New defaults to HomeRelativeResolver from os.UserHomeDir(), with WithResolver option for future injection; added failingResolver to preserve existing home-dir error behavior.
  • service/add.go, service/move.go, service/service.go - homeRelativePath is now a method on Service and uses s.resolver.ToStorage; repointManagedSymlink and profileItems use s.resolver.ToLive.
  • service/doctor.go - scanCrossScope uses s.resolver.ToLive.
  • ResolveRepoPath left unchanged (repo-path resolution, not file-path resolution).

@polymorcodeus
polymorcodeus merged commit 4aa9b66 into main Aug 20, 2026
4 checks passed
@polymorcodeus
polymorcodeus deleted the resolver-interf branch August 20, 2026 00:41
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.

1 participant