Skip to content

Phase 0: Per-project .dirge/ path resolution - #135

Merged
yogthos merged 2 commits into
mainfrom
phase-0-dirge-infra
May 26, 2026
Merged

Phase 0: Per-project .dirge/ path resolution#135
yogthos merged 2 commits into
mainfrom
phase-0-dirge-infra

Conversation

@yogthos

@yogthos yogthos commented May 26, 2026

Copy link
Copy Markdown
Collaborator

Canonical entry point for per-project .dirge/ storage. Resolves project root by walking CWD to .git/, with DIRGE_PROJECT_ROOT override.

What: ProjectPaths struct + find_git_root + project_root + project_root_override

Files:

  • src/extras/dirge_paths.rs (162 lines, 7 tests)
  • src/extras/mod.rs (register module)

No existing code touched — extras::memory (global ~/.dirge/memories/) serves a different purpose.

Yogthos added 2 commits May 25, 2026 22:17
Add ProjectPaths — the canonical entry point for per-project .dirge/
storage. Resolves the project root by walking up from CWD until .git/
is found (or DIRGE_PROJECT_ROOT env override).

Layout:
  .dirge/
  ├── memory/      (MEMORY.md, PITFALLS.md — Phase 2)
  ├── skills/      (SKILL.md procedural knowledge — Phase 3)
  ├── sessions/    (state.db SQLite + FTS5 — Phase 1)
  └── config.yaml  (per-project dirge config)

7 tests: root detection, env override, missing dir fallback,
subdirectory nesting.

No existing code touched — the existing extras::memory module
stores globally in ~/.dirge/memories/ and serves a different
purpose (user notes, not project knowledge).
@yogthos
yogthos merged commit 0d7abd6 into main May 26, 2026
1 check passed
@yogthos
yogthos deleted the phase-0-dirge-infra branch May 26, 2026 04:10
allen-munsch pushed a commit to allen-munsch/dirge that referenced this pull request Jun 3, 2026
Phase 0: Per-project .dirge/ path resolution
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