Skip to main contentCrate edda_store
Source - LockGuard
- File-based exclusive lock guard.
- ensure_dirs
- Ensure all subdirectories exist for a project.
- lock_file
- Acquire an exclusive file lock. Creates the lock file if needed.
- project_dir
- Return the project directory:
store_root/projects/<project_id>/ - project_id
- Compute a deterministic project ID from a repo root or cwd path.
project_id = blake3(normalize_path(input)) → hex string (first 32 chars).
- store_root
- Return the per-user store root:
~/.edda/
Windows: %APPDATA%\edda\ (falls back to %USERPROFILE%\.edda\) - write_atomic
- Atomic write: write to temp file in same dir, then rename.