feat(bug): status check and opt-in fixed notifications #26

Merged
Breadway merged 3 commits from feature/breadbug-status into main 2026-10-20 10:14:40 +08:00
Owner

Refs BUG-9 (with breadbug-server PR #7)

Stacked on #25. Part of ECO-EP1.

What

  • breadbug status [--notify] [--quiet]: asks the server how the reports you sent are doing, stores the answer and the fix version in your history, and says when a fix is available as an update (installed version older than the fix version, via bakery's installed state).
  • Opt-in notifications: notify_fixed = true in breadbug.toml (off by default; a bos-settings toggle) plus --notify shows one desktop notification per fix (notify-send), remembered per receipt so it never repeats.
  • Privacy and consent: only receipts you hold are polled, nothing is sent, no push channel, no email. With sending off nothing touches the network (including this command).
  • history shows status and fix version; history --refresh shares the same refresh path.
  • Daily user timer + oneshot service in packaging/systemd/ (wired into packaging by BOS-86).
  • bread-bug::version compares dev / rc / release builds (0.9.1-dev.2026... < 0.9.1 < 0.9.2).

Tests

  • 61 bread-bug tests (new: version ordering, history fix fields, RemoteStatus parsing) and 23 CLI tests (new: fix reported with update suggestion, history shows it, notifications opt-in and sent once, no update suggested when already on the fixed version, quiet and offline while sending is off). Test notification counting is thread-local so parallel tests cannot interfere (ran 3x to check).
  • clippy -D warnings clean, xtask check-docs passes.
Refs BUG-9 (with breadbug-server PR #7) Stacked on #25. Part of ECO-EP1. ## What - `breadbug status [--notify] [--quiet]`: asks the server how the reports you sent are doing, stores the answer and the fix version in your history, and says when a fix is available as an update (installed version older than the fix version, via bakery's installed state). - Opt-in notifications: `notify_fixed = true` in `breadbug.toml` (off by default; a bos-settings toggle) plus `--notify` shows one desktop notification per fix (`notify-send`), remembered per receipt so it never repeats. - Privacy and consent: only receipts you hold are polled, nothing is sent, no push channel, no email. With sending off nothing touches the network (including this command). - `history` shows status and fix version; `history --refresh` shares the same refresh path. - Daily user timer + oneshot service in `packaging/systemd/` (wired into packaging by BOS-86). - `bread-bug::version` compares dev / rc / release builds (`0.9.1-dev.2026...` < `0.9.1` < `0.9.2`). ## Tests - 61 bread-bug tests (new: version ordering, history fix fields, `RemoteStatus` parsing) and 23 CLI tests (new: fix reported with update suggestion, history shows it, notifications opt-in and sent once, no update suggested when already on the fixed version, quiet and offline while sending is off). Test notification counting is thread-local so parallel tests cannot interfere (ran 3x to check). - clippy `-D warnings` clean, `xtask check-docs` passes.
feat(bug): status check and opt-in fixed notifications
Some checks failed
check / check (push) Failing after 1m58s
3b4ad71f65
breadbug status asks the server about the reports you sent, records the
answer (and the fix version) in your history and says when a fix is available
as an update. With notify_fixed (off by default) and --notify it shows one
desktop notification per fix. Only receipts held locally are polled; nothing
is sent; with sending off nothing touches the network. A daily user timer
runs it quietly. Adds version comparison for dev/rc/release builds.

Refs BUG-9
Merge branch 'feature/breadbug-upload' into feature/breadbug-status
Some checks failed
check / check (push) Failing after 12m13s
5d99dc1de4
# Conflicts:
#	bread-bug/src/livestack.rs
#	breadbug/src/lib.rs
#	breadbug/src/tests.rs
Merge branch 'feature/breadbug-upload' into feature/breadbug-status
All checks were successful
check / check (push) Successful in 24m31s
dea16a1e4e
Breadway changed target branch from feature/breadbug-upload to main 2026-10-20 10:12:33 +08:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Breadway/bread!26
No description provided.