feat(git): add worktree branch roots#401
Conversation
10d7207 to
b8b7bfb
Compare
|
Heads-up: this project now validates every PR automatically — tests, lint, security/license gates, and DCO sign-off (CONTRIBUTING.md). Your branch predates this, so CI will flag the missing |
b8b7bfb to
dad1710
Compare
Signed-off-by: pcristin <xxxokzxxx@protonmail.com>
dad1710 to
f8d1b43
Compare
|
Hey @pcristin, you can work further on it for sure. I just need a little break, this week was tough. Sorry for the delay (the disadvantage of being a solo maintainer). I will dig into all PRs tomorrow |
|
Hey @DeusData ! |
|
Thanks @pcristin — this is clean, well-scoped work, and first-class git worktree/branch awareness is genuinely valuable (it's exactly how a lot of us work day to day). I reviewed and built it locally on a full ASan+UBSan run: it's a clean merge and the suite is fully green — the local failures you saw were environmental (missing Merging now. Thank you for the contribution! 🙏 |
Summary
Fixes #351.
Adds first-class git worktree awareness by introducing a git context resolver and using branch nodes as the graph root beneath each project:
Project -[:HAS_BRANCH]-> Branchand reparent top-level structural containment to the branch node while preserving existing file/folder/function qualified names.list_projectsandindex_status.Notes
cbm_popenusage is limited to git metadata lookup and is documented inscripts/security-allowlist.txt.Verification
make -f Makefile.cbm build/c/test-runnerpasses.git diff --checkpasses.scripts/test.shwas run; it fails in existing incremental dump/status tests with final summary3513 passed, 112 failed, 16 skipped.scripts/lint.shwas run; it fails becausecppcheckis not installed locally and because of existing broad clang-tidy findings outside this diff. The diff-specific formatting finding was fixed.