breadbug: GUI front-end for the report preview and consent dialog #19

Open
opened 2026-10-08 20:14:14 +08:00 by Breadway · 1 comment
Owner

Part of ECO-EP1 (see ECO-66). Builds on the CLI/report builder issue.

GUI wrapper over the same report builder, so the shortcut and the notification action open something friendly. Follow the existing shell-theme conventions (bread-theme bind_window_auto_with_app_css; native GTK4 like the other small bread apps).

Requirements

  • App list, report type, notes box with secrets warning, expandable sections of the exact payload (the same bytes the CLI builds), hash shown, Send / Save to file / Cancel.
  • Clear consent copy explaining what is sent, where, and retention; link to the breadhelp page.
  • Shows the receipt ID after a successful send, and offline-queue status.
  • Falls back to the TTY UI when no display is available.
  • Accessible (keyboard-only operation).

Acceptance

  • Verify visually in the nested headless Hyprland setup (never on the live desktop), with pixel-sampled checks per project convention.
Part of ECO-EP1 (see ECO-66). Builds on the CLI/report builder issue. GUI wrapper over the same report builder, so the shortcut and the notification action open something friendly. Follow the existing shell-theme conventions (bread-theme bind_window_auto_with_app_css; native GTK4 like the other small bread apps). ## Requirements - App list, report type, notes box with secrets warning, expandable sections of the exact payload (the same bytes the CLI builds), hash shown, Send / Save to file / Cancel. - Clear consent copy explaining what is sent, where, and retention; link to the breadhelp page. - Shows the receipt ID after a successful send, and offline-queue status. - Falls back to the TTY UI when no display is available. - Accessible (keyboard-only operation). ## Acceptance - Verify visually in the nested headless Hyprland setup (never on the live desktop), with pixel-sampled checks per project convention.
Author
Owner

PR: #33 (stacked on feature/breadbug-reload).

Done: GTK4 window with consent, pick, details, preview and done pages. Report build and send run off the UI thread. The save/send/queue logic moved into breadbug::session, shared with the CLI. Builds, clippy clean, breadbug and bread-bug tests pass.

Verified visually only in part: dev/walkthrough.sh rendered the pick and details pages in an isolated Broadway display, and the layout looks right. The consent and preview pages produced no screenshot, so they are unchecked. Theme colors could not be judged because Broadway has no compositor for the shared theme to bind; some text looked low-contrast there. Needs one look on a real BOS session.

Not done: packaging in bakery.

PR: https://git.breadway.dev/Breadway/bread/pulls/33 (stacked on feature/breadbug-reload). Done: GTK4 window with consent, pick, details, preview and done pages. Report build and send run off the UI thread. The save/send/queue logic moved into breadbug::session, shared with the CLI. Builds, clippy clean, breadbug and bread-bug tests pass. Verified visually only in part: dev/walkthrough.sh rendered the pick and details pages in an isolated Broadway display, and the layout looks right. The consent and preview pages produced no screenshot, so they are unchecked. Theme colors could not be judged because Broadway has no compositor for the shared theme to bind; some text looked low-contrast there. Needs one look on a real BOS session. Not done: packaging in bakery.
Sign in to join this conversation.
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#19
No description provided.