What's new
fix: make autoMirrorStarred actually trigger auto-mirror (fixes #278)
The "Auto-mirror new starred repositories" checkbox in the GitHub settings was a filter layered on top of scheduleConfig.autoMirror, which itself is only settable via the AUTO_MIRROR_REPOS env var (no UI). So users who checked the box saw their starred repos auto-imported but never mirrored — contradicting the label.
This release makes the two flags independent triggers in the scheduler:
autoMirror=true→ auto-mirror owned (and self-starred) reposautoMirrorStarred=true→ auto-mirror repos starred from other owners- Either flag on its own enters the auto-mirror phase; the filter scopes the work accordingly
Also normalized the owner comparison to lowercase since GitHub usernames are case-insensitive — previously a self-starred repo whose stored owner casing differed from githubConfig.owner would be misclassified as a third-party star and silently skipped.
Behavior change to flag: anyone who currently has the starred checkbox on (broken state) will start getting starred repos mirrored after upgrading. Users with AUTO_MIRROR_REPOS=true see no change.
autoMirror
| autoMirrorStarred
| Before | After |
|---|---|---|---|
| off | off | nothing | nothing |
| on | off | owned + self-starred | owned + self-starred (unchanged) |
| off | on | nothing (bug) | third-party starred only |
| on | on | everything | everything (unchanged) |
A truth-table test in src/lib/scheduler-service.test.ts guards against re-introducing the bug.
Note: this release fixes the starred half of #278. Auto-mirroring all owned repos still requires AUTO_MIRROR_REPOS=true at container start; surfacing that in the UI is the remaining tracked work on the issue.