Skip to content

feat: multirepo support#14

Merged
Flyrell merged 3 commits intomainfrom
feat/multirepo-support
Mar 26, 2026
Merged

feat: multirepo support#14
Flyrell merged 3 commits intomainfrom
feat/multirepo-support

Conversation

@Flyrell
Copy link
Copy Markdown
Owner

@Flyrell Flyrell commented Mar 26, 2026

No description provided.

Flyrell and others added 3 commits March 26, 2026 16:58
When a project has multiple repos, time attribution broke in two ways:
idle gaps from one repo were incorrectly applied to segments in another
repo (precise mode), and commits were orphaned when a cross-repo checkout
terminated the session they belonged to (both modes).

Introduce synthetic checkouts from commit-based repo switches so that
commits in different repos are never orphaned. Make all dedup, commit
matching, and idle gap logic repo-aware by comparing branch+repo pairs
instead of branch alone.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use safe allocation (make + append) instead of append(checkouts,
synthetic...) which could mutate the caller's backing array. Also set
the Previous field on synthetic checkouts and add per-row minute
assertions plus a dedicated mutation regression test.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Address code review feedback with two inline comment additions:
- buildCheckoutBucket: note that it does not inject synthetic checkouts
  from commits, directing readers to the segment-based pipeline instead
- buildIdleGaps: explain why only stop-repos are iterated (starts without
  a preceding stop cannot form a gap)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Flyrell Flyrell merged commit 15f264b into main Mar 26, 2026
2 checks passed
@Flyrell Flyrell deleted the feat/multirepo-support branch March 26, 2026 16:58
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