mirror of
https://github.com/storytold/craft-repo-status-app.git
synced 2026-10-13 15:09:09 +00:00
Each poll ran 24 GraphQL searches per repo (~360 per poll), which trips GitHub's search secondary rate limit even with plenty of hourly budget left. Per-window PR/issue counts now come from walking recent PRs and issues newest first and bucketing them locally; no search at all. A rate-limited repo now halts the rest of the poll, the error reports GitHub's retry-after time, and two repos are fetched at a time, not four. The UI rebuilt the window dropdown on every render (every 15 s and per repo during a poll), which could close it mid-choice. The group header row is now built once. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
48 lines
1.3 KiB
TOML
48 lines
1.3 KiB
TOML
# Craft Status — ~/.craft_status_config.toml
|
|
# The app re-reads this file before every poll; changes apply without a restart
|
|
# (window/tray/shortcut changes apply on the next poll or relaunch).
|
|
|
|
# Repositories to watch: "owner/name" or full GitHub URLs.
|
|
repos = [
|
|
"storytold/photocraft",
|
|
"storytold/lightcraft",
|
|
"storytold/filmcraft",
|
|
"storytold/designcraft",
|
|
"storytold/vectorcraft",
|
|
"storytold/pdfcraft",
|
|
"storytold/effectcraft",
|
|
"storytold/wordcraft",
|
|
"storytold/deckcraft",
|
|
"storytold/gridcraft",
|
|
"storytold/cadcraft",
|
|
"storytold/soundcraft",
|
|
"storytold/craft-libs",
|
|
"storytold/craft-launcher",
|
|
"storytold/figcraft",
|
|
]
|
|
|
|
# How often to poll GitHub (minutes, at least 1). Each poll costs roughly
|
|
# 6 GraphQL requests + 1 REST request per repo, far below GitHub's 5000/hour.
|
|
poll_minutes = 5.0
|
|
|
|
# Data older than this is flagged STALE in the window (never less than poll_minutes).
|
|
stale_minutes = 15.0
|
|
|
|
# Leave empty to use $GITHUB_TOKEN / $GH_TOKEN, or else `gh auth token`.
|
|
github_token = ""
|
|
|
|
[window]
|
|
width = 1340.0
|
|
height = 560.0
|
|
always_on_top = false
|
|
start_hidden = false
|
|
opacity = 0.96
|
|
|
|
[tray]
|
|
hide_dock_icon = true # macOS: menu-bar-only app (restart to apply)
|
|
visible_on_all_workspaces = true # summon onto the current desktop/space
|
|
close_to_tray = true
|
|
|
|
[shortcuts]
|
|
toggle_window = "CmdOrCtrl+Shift+G" # "" disables
|