Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 19:39
· 8 commits to main since this release
9bca94a

Changelog

  • c8e623d build: drop Windows from releases
  • 3f2d70b build: pin bubbles to the v0.21.1 tag
  • 105b952 docs(ui): help explains the transition and mute keys
  • 93b616e docs(wizard): note the existing-file pre-check is only an early warning
  • cef16ad feat(alert): pause stuck alerts while the board is stale
  • 78a60a9 feat(alert): stuck events carry incomplete and decode_errors
  • ec8a9e3 feat(alert): stuck webhooks ported from coolify-green
  • 62db7bb feat(alert): surface webhook failures on the status line
  • ae64dcf feat(config): Waiting lane includes unassigned issues
  • 91b875a feat(config): load, validate, token resolution, mutes
  • bfde0b7 feat(config): merge threshold defaults per column
  • f8bb4b3 feat(config): reject unknown config keys
  • e0d8c28 feat(config): warn when config.toml is readable by others
  • dffcd9c feat(jira): board config, boards, changelog, transitions, fields
  • f911bde feat(jira): client transport, time, errors, myself
  • 75b1c58 feat(jira): search with pagination and issue conversion
  • a046b2e feat(model): age thresholds
  • 85567b3 feat(model): board layout and epic grouping
  • 73682ee feat(model): evaluate card health
  • 8d6bc49 feat(model): issue types and time in status
  • f918c2f feat(model): stoplight
  • 1451526 feat(model): unanswered mention detection
  • 0586b03 feat(poller): Backlog lane for my issues outside the open sprint
  • 8a387e4 feat(poller): epic progress as done/total child counts
  • cc535aa feat(poller): lanes, changelog cache, stale, auth stop, backoff
  • e851d61 feat(poller): roll subtasks up to their story's epic
  • 3f839f0 feat(poller): scope Mine and Done to the board's saved filter
  • caea365 feat(ui): Backlog lane, collapsed by default
  • 5cb43a3 feat(ui): dashboard navigation, view toggle, done, refresh, open
  • 471c2a2 feat(ui): detail pane and transition picker
  • 476fd31 feat(ui): detail pane cleanup and open errors
  • 9929429 feat(ui): epic progress in list group headers
  • a46fa9f feat(ui): kanban renderer with golden tests
  • 0ee65cf feat(ui): list renderer grouped by epic
  • daf9233 feat(ui): manage marks cards under a muted epic
  • 233a004 feat(ui): manage screen for muting
  • 21ca163 feat(ui): scroll kanban, list, and manage to keep the cursor in view
  • 8785a39 feat(ui): status line says last good after a failed poll
  • 960609a feat(ui): subtasks name their story
  • cb154df feat(wizard): interactive init
  • 977c9db feat: main routes init and reports config and token errors
  • b689db8 feat: remember the last view in state.toml
  • 2af2b00 feat: tag the status line unscoped when the board has no filter
  • 2fe56a3 feat: wire dashboard, poller, alerts, transitions
  • 6257203 fix(config): Create refuses to clobber, atomically
  • 1cb0754 fix(config): DefaultPath returns an error when there is no home directory
  • c53b216 fix(config): SetMuted rolls back the mute list when the save fails
  • 9c8be42 fix(config): WriteStarter says already exists, surfaces Stat errors
  • eb34bd0 fix(config): drop literal token, fail on unset token_env, time out token_command
  • c1a47c9 fix(config): guard Muted with an RWMutex so SetMuted can race the poller
  • c192c52 fix(config): save atomically with mode 0600
  • ed394fa fix(config): validate intervals, email, https site, and threshold order
  • 59906d1 fix(jira): decode fields one at a time; mark undecodable issues stale
  • 933c19c fix(jira): escape issue keys, strict Time parsing, 1xx is an error
  • 76ca01f fix(jira): fetch the rest of truncated comments
  • e2b7084 fix(jira): guard pagination against loops and runaway servers
  • 677fbf3 fix(jira): only 401 stops polling
  • cd1475e fix(jira): parse Retry-After dates; default 429 backoff to 60s
  • a2114a3 fix(jira): summarize Jira error bodies
  • 9ad2fbb fix(model): ParseAge rejects zero durations
  • 656f844 fix(model): hide only Done-lane cards, not the whole last column
  • 8201973 fix(model): lane light and count reflect only visible columns
  • 52371c2 fix(model): no mentions when my account ID is unknown
  • fe91e45 fix(model): one reason per label, clamp future ages, safe String()
  • 359fe02 fix(poller): Start emits no snapshot for a poll cut short by cancel
  • aa37bcf fix(poller): a 429 or 401 on the comment fetch fails the poll; cache comments
  • 716760d fix(poller): a failed board refresh keeps the cached columns
  • 2fa6109 fix(poller): non-blocking Refresh replaces the raw refresh channel
  • 9f12328 fix(poller): one bad changelog degrades only its card
  • ae1f787 fix(ui): 401 status says to fix the token and restart
  • 56f3abe fix(ui): a nil openURL defaults to OpenBrowser
  • dff6700 fix(ui): collapsed list Backlog row shows its worst light
  • c007c75 fix(ui): detail names an epic with no summary by its key
  • 592fd5d fix(ui): every view fits a terminal 1-6 lines tall
  • 693c46d fix(ui): manage screen takes the terminal size
  • 1004fc6 fix(ui): picker clears the last error when a new confirmation starts
  • 90856ce fix(ui): picker ignores a late transitions reply
  • 367bd7a fix(ui): picker says esc is disabled while a move is in flight
  • 9a853b1 fix(ui): renderer review fixes, zero lane counts hidden
  • d21961f fix(ui): stale and token-rejected status segments are colored, not dim
  • a43cb59 fix(ui): the narrow-terminal fallback keeps the selected card
  • e984125 fix(ui): transition picker fits the terminal width
  • d9c1d59 fix(wizard): validate before replacing on --force
  • 6b6da3f fix: review minors across jira, poller, and alert
  • be8d815 fix: review minors in config, wizard, and ui
  • d131c43 refactor(config): drop NewStarter; the harness calls New
  • 300c5eb refactor(config): keep only user-written keys, resolve defaults on read
  • 4d5a71f refactor(main): pass ui.OpenBrowser to the dashboard explicitly
  • 6b4666a refactor(model): Card.Incomplete replaces the data-incomplete reason
  • b86b991 test(wizard): --force keeps the old file when Jira fails
  • 72d0c92 test(wizard): use a reserved example domain for the old config