feat(graph): Phase 5 — store.py linear walks delegate to iter_ancestors
walk_commits_between_result and get_commits_for_branch replace their inline while-loop first-parent walks with iter_ancestors(first_parent_only=True).
walk_commits_between_result requests max_commits+1 items to detect truncation in a single pass without a second traversal. get_commits_for_branch passes max_commits=max_count when max_count > 0, None for an unbounded walk.
Both functions use a local import of iter_ancestors to avoid the circular import that would arise from a top-level import (graph.py imports store.py).
Tests: 7 new in test_phase5_store_linear_walks.py (P5-1 through P5-7).
sha256:36e7cd783af09ee757e11b4629793237e05b9d50512c4f0cec5d47033646d8c0
sha
sha256:f6b793ee4375fb068885497f2318f81eb0c58893a5d97b15a116f0fbcaaf0ee2
snapshot
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:36e7cd783af09ee757e11b4629793237e05b9d50512c4f0cec5d47033646d8c0 --body "your comment"
No comments yet. Be the first to start the discussion.