breadbug: roll out bread-client hook across all bread apps and verify #67

Open
opened 2026-10-08 23:11:42 +08:00 by Breadway · 1 comment
Owner

Part of ECO-EP1 (see ECO-66). Depends on the bread-client hook and release symbol issues.

Requirements

  • Bump bread-client in every bread app (breadbar, breadbox, breadclip, breadsearch, breadpad, breadlock, breadmon, breadcrumbs, breadshot, breadcast, breadpaper, breadarr, bos-settings, breadhelp, ...) through the normal release train (check Cargo.lock is committed and not stale vs local path patches; see the stale lock CI gotcha).
  • For Tauri apps (bos-settings, breadhelp, breadman), cover both the Rust core and make the TS frontend errors reach the store through the Rust side.
  • Mark sensitive apps (breadclip, breadsearch) with the appropriate exclusions/allowlists.
  • Installed-apps manifest lists which apps support breadbug so the picker is accurate.
  • Checklist table in this issue tracking each app: hook installed, build-id present, symbols published, verified crash appears.

Acceptance

  • Each app on the checklist produces a store entry from an induced panic on a release build.
Part of ECO-EP1 (see ECO-66). Depends on the bread-client hook and release symbol issues. ## Requirements - Bump bread-client in every bread app (breadbar, breadbox, breadclip, breadsearch, breadpad, breadlock, breadmon, breadcrumbs, breadshot, breadcast, breadpaper, breadarr, bos-settings, breadhelp, ...) through the normal release train (check Cargo.lock is committed and not stale vs local path patches; see the stale lock CI gotcha). - For Tauri apps (bos-settings, breadhelp, breadman), cover both the Rust core and make the TS frontend errors reach the store through the Rust side. - Mark sensitive apps (breadclip, breadsearch) with the appropriate exclusions/allowlists. - Installed-apps manifest lists which apps support breadbug so the picker is accurate. - Checklist table in this issue tracking each app: hook installed, build-id present, symbols published, verified crash appears. ## Acceptance - Each app on the checklist produces a store entry from an induced panic on a release build.
Author
Owner

Rollout status (bread-utils tag is the gate: bread-ecosystem PR #68 must merge and be tagged before any app PR merges; nothing here has been tagged or released).

app hook notes
clip PR breadclip#19 (pilot, strictest settings) needs bread-utils tag
search not started private text: panic_message=false, forward_logs=false
pad not started private text: panic_message=false, forward_logs=false
bar, box, lock, mon, paper, shot, arr, crumbs, cast, help not started straightforward; GTK apps use attach_glib_main_loop() under the gtk feature
bos-settings, breadman (Tauri) not started settings is not in bread_shared::apps::KNOWN_APPS, so breadd rejects its bug.* calls until the id is registered (one-line edit); the TS frontend part is not designed

Prerequisites to check per app: release profile keeps line tables and the binary has a build-id (ECO-67, bread PR #30 shows the pattern), Cargo.lock committed and not masked by a local [patch] (stale-lock gotcha), and the app is in KNOWN_APPS. The 'verified crash appears' acceptance needs an induced panic on a release build of each app; only the generic bread-utils tests (real panic, real SIGSEGV) exist so far. Leaving this in doing; the remaining apps are mechanical and wait for the tag.

Rollout status (bread-utils tag is the gate: bread-ecosystem PR #68 must merge and be tagged before any app PR merges; nothing here has been tagged or released). | app | hook | notes | |---|---|---| | clip | PR breadclip#19 (pilot, strictest settings) | needs bread-utils tag | | search | not started | private text: panic_message=false, forward_logs=false | | pad | not started | private text: panic_message=false, forward_logs=false | | bar, box, lock, mon, paper, shot, arr, crumbs, cast, help | not started | straightforward; GTK apps use attach_glib_main_loop() under the gtk feature | | bos-settings, breadman (Tauri) | not started | `settings` is not in bread_shared::apps::KNOWN_APPS, so breadd rejects its `bug.*` calls until the id is registered (one-line edit); the TS frontend part is not designed | Prerequisites to check per app: release profile keeps line tables and the binary has a build-id (ECO-67, bread PR #30 shows the pattern), Cargo.lock committed and not masked by a local [patch] (stale-lock gotcha), and the app is in KNOWN_APPS. The 'verified crash appears' acceptance needs an induced panic on a release build of each app; only the generic bread-utils tests (real panic, real SIGSEGV) exist so far. Leaving this in doing; the remaining apps are mechanical and wait for the tag.
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-ecosystem#67
No description provided.