Comfy-Org / Comfy-Org/Comfy-Desktop

Exportable diagnostic report file for user-shareable debugging

Open
#376 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
458
Forks
59
Avg merge
22h 18m
Merged PRs (30d)
45

Description

Follow-up to #364 / PR #372.

### Problem

When users hit issues, we often need to follow up with them to get environment details. Datadog telemetry helps for opted-in users, but we also need a way for users to manually generate and share a diagnostic report — especially for users who have telemetry disabled or for issues that need deeper context than what fits in RUM events.

### Proposal

Add a "Generate Diagnostic Report" action (in Settings or via a menu) that creates a single JSON or text file the user can share with us. This piggybacks directly off the infrastructure built in PR #372:

**Already available (reuse from existing code):**
- get-system-info: GPU vendor/label, driver version, platform, arch, OS version, RAM, CPU
- get-installation-dd-context: Installation metadata, full snapshot history with diffs
- listSnapshots + diffSnapshots: Complete environment change history

**Additional data to include:**
- App version and Electron/Chrome versions
- All installation records (names, variants, update channels, source IDs — no paths)
- Current running sessions (which installations are active)
- Recent app logs (last N lines from the Electron main process log, scrubbed of PII)
- Disk space for each installation
- ComfyUI args configuration per installation

**PII scrubbing:**
- Apply the existing scrubPII() to all string fields before writing
- Strip absolute paths entirely or redact usernames
- No environment variable values
- No model names or workflow content

**UX:**
- Button in Settings: "Export Diagnostic Report"
- Opens a save dialog, writes a .json file
- Could also be triggered via a CLI flag or keyboard shortcut for cases where the UI is broken

### Why not just use Datadog?

- Not all users opt in to telemetry
- The 256 KB RUM event limit constrains what we can attach
- A diagnostic file can include much more detail (full logs, all installations, disk info)
- Users can review exactly what they are sharing before sending it

Contributor guide

No contributing guide indexed for this repository

Research direction

Review PR #372 and the existing get-system-info, get-installation-dd-context, listSnapshots, diffSnapshots, and scrubPII infrastructure first. Trace how Settings actions open save dialogs and how Electron main-process logs and installation data are accessed. Done means a Settings action writes a reviewable .json report containing the requested details while applying the stated PII exclusions.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, typescript
Domain
desktop, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.