Add desktop bug reporting and session summaries - #749
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Adds a desktop-first bug-reporting flow (renderer UI → preload API → main-process uploader) and a privacy-safe “session report” summary generated from stream diagnostics, surfaced after stream completion and attachable to bug reports.
Changes:
- Introduce shared bug-report/session-report contracts + new IPC channel +
window.openNow.submitBugReport()API. - Implement main-process bug report upload (redacted logs + optional session report + optional system info) to the PrintedWaste endpoint.
- Add renderer session report accumulator, modal UI, settings toggle, and bug-report review/consent UX (with new copy in
en.json).
Reviewed changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| opennow-stable/src/shared/ipc.ts | Adds BUG_REPORT_SUBMIT IPC channel constant. |
| opennow-stable/src/shared/gfn/settings.ts | Adds showSessionReport setting and updates telemetry install ID doc. |
| opennow-stable/src/shared/gfn/api.ts | Extends OpenNowApi with submitBugReport. |
| opennow-stable/src/shared/bugReport.ts | Defines bug report + session report types and shared validation helpers/constants. |
| opennow-stable/src/renderer/src/utils/sessionReport.ts | Implements stream diagnostics accumulator + scoring/findings/recommendations. |
| opennow-stable/src/renderer/src/utils/sessionReport.test.ts | Adds unit tests for scoring and accumulator privacy expectations. |
| opennow-stable/src/renderer/src/styles.css | Adds styling for “report bug” button, bug report review UI, and session report modal. |
| opennow-stable/src/renderer/src/components/StreamView.tsx | Plumbs onReportBug callback into stream view. |
| opennow-stable/src/renderer/src/components/stream/quick-menu/StreamQuickMenu.tsx | Adds “Report a stream bug” button in the quick menu UI. |
| opennow-stable/src/renderer/src/components/settings/stream/StatsOverlayControls.tsx | Adds settings toggle for showing session reports. |
| opennow-stable/src/renderer/src/components/settings/settingsTypes.ts | Adds settings search terms for “session report / quality report”. |
| opennow-stable/src/renderer/src/components/SessionReportModal.tsx | Adds modal UI to display the session report and jump to bug reporting. |
| opennow-stable/src/renderer/src/components/FeedbackModal.tsx | Expands feedback modal into bug-report flow with validation + review + consent + upload. |
| opennow-stable/src/renderer/src/App.tsx | Wires session report lifecycle, modal presentation, and bug-report entry points. |
| opennow-stable/src/preload/index.ts | Exposes submitBugReport via contextBridge using IPC invoke. |
| opennow-stable/src/main/telemetry/posthog.ts | Uses centralized installation ID owner instead of local generation. |
| opennow-stable/src/main/settings.ts | Migrates persisted settings to include showSessionReport. |
| opennow-stable/src/main/services/desktopBugReports.ts | Implements upload orchestration and attachment building (logs/session report/system info). |
| opennow-stable/src/main/services/desktopBugReportProtocol.ts | Implements request/response protocol, reporter ID hashing, multipart building, error parsing. |
| opennow-stable/src/main/services/desktopBugReportProtocol.test.ts | Adds unit tests for reporter ID + multipart + parsing + validation. |
| opennow-stable/src/main/ipc/coreHandlers.ts | Registers IPC handler that calls bug report uploader and normalizes thrown errors. |
| opennow-stable/src/main/installationId.ts | Adds main-process helper to get/create telemetryInstallId. |
| locales/en.json | Adds UI strings for bug reporting and session report UX. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4b58f8cc1a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
No description provided.