Skip to content

feat(cli): cdd add and cdd forget for non-git Projects (#68) - #83

Merged
hammadmajid merged 5 commits into
mainfrom
feat/68-add-forget
Oct 1, 2026
Merged

hammadmajid merged 5 commits into
mainfrom
feat/68-add-forget

Conversation

@hammadmajid

Copy link
Copy Markdown
Contributor

What

  • cdd add [dir] makes a directory a Project, git or not, records a Visit, and brings back a Forgotten one. cdd forget [dir] hides any Project for good. Both default to the current directory and are passed through by the Wrapper (the list is derived from the command tree).
  • New project.Store (internal/project/store.go): a projects file beside History with add <abs path> / forget <abs path> lines, last line wins, append-only via a single O_APPEND write.
  • The Picker lists Added directories (after visited ones when they have no Visits), hides Forgotten Projects, and treats an Added directory as Stale once it is gone. scan.Run and jump.Resolve take the Store; Scan skips Forgotten Projects.
  • ADR 0002 (partly supersedes 0001), CONTEXT.md (Project, Added, Forgotten, Stale Visit, Scan), README.

Verified

  • gofmt, go vet, golangci-lint (0 issues), go test ./... (only the known local fish cases of TestScriptExecution fail).
  • Smoke test with a built binary against temp XDG dirs: add non-git, scan, forget then scan (not resurrected), re-add, add of a missing dir exits 1.

Closes #68

@hammadmajid
hammadmajid merged commit a79955d into main Oct 1, 2026
3 checks passed
@hammadmajid
hammadmajid deleted the feat/68-add-forget branch October 1, 2026 20:53
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.

feat(cli): cdd add and cdd forget for non-git Projects

1 participant