Add identity.lua to resolve stable project identity from Git remote origin, package.json name, directory name, or path hash fallback.
Use the stable identity id for new rules file paths.
Keep legacy path-hash rules as a fallback so existing project rules continue to work.
Add :ProjectSearch identity to inspect current identity and rule paths.
Add :ProjectSearch migrate to copy legacy path-hash rules to the stable identity path.
Report identity and migration status in :ProjectSearch health.
Add docs/project-identity.md.
Stack
This PR is stacked on #4 and uses feat/user-template-dirs as its base branch. Merge #4 first, then this PR.
Notes
Identity resolution reads small local files such as .git/config and package.json; it does not run fd, rg, or scan project files when opening the picker.
## Summary
- Add `identity.lua` to resolve stable project identity from Git remote origin, `package.json` name, directory name, or path hash fallback.
- Use the stable identity id for new rules file paths.
- Keep legacy path-hash rules as a fallback so existing project rules continue to work.
- Add `:ProjectSearch identity` to inspect current identity and rule paths.
- Add `:ProjectSearch migrate` to copy legacy path-hash rules to the stable identity path.
- Report identity and migration status in `:ProjectSearch health`.
- Add `docs/project-identity.md`.
## Stack
This PR is stacked on #4 and uses `feat/user-template-dirs` as its base branch. Merge #4 first, then this PR.
## Notes
Identity resolution reads small local files such as `.git/config` and `package.json`; it does not run `fd`, `rg`, or scan project files when opening the picker.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
identity.luato resolve stable project identity from Git remote origin,package.jsonname, directory name, or path hash fallback.:ProjectSearch identityto inspect current identity and rule paths.:ProjectSearch migrateto copy legacy path-hash rules to the stable identity path.:ProjectSearch health.docs/project-identity.md.Stack
This PR is stacked on #4 and uses
feat/user-template-dirsas its base branch. Merge #4 first, then this PR.Notes
Identity resolution reads small local files such as
.git/configandpackage.json; it does not runfd,rg, or scan project files when opening the picker.