()
| 241 | * user can drag it onto the issue; nothing is uploaded automatically. |
| 242 | */ |
| 243 | export const reportAProblem = async () => { |
| 244 | await exportDiagnosticsInteractive(); |
| 245 | const body = [ |
| 246 | "<!-- Describe what happened and what you expected. -->", |
| 247 | "", |
| 248 | "", |
| 249 | "---", |
| 250 | "", |
| 251 | "| | |", |
| 252 | "|---|---|", |
| 253 | `| Version | ${app.getVersion()} |`, |
| 254 | `| OS | ${process.platform} ${process.arch} |`, |
| 255 | `| Run ID | ${runId} |`, |
| 256 | "", |
| 257 | "_A diagnostics zip was saved to your Downloads folder — please drag it into this issue._", |
| 258 | ].join("\n"); |
| 259 | const url = new URL("https://github.com/UsefulSoftwareCo/executor/issues/new"); |
| 260 | url.searchParams.set("title", "[desktop] "); |
| 261 | url.searchParams.set("body", body); |
| 262 | await shell.openExternal(url.toString()); |
| 263 | }; |
| 264 | |
| 265 | /** Menu-item wrapper: surface failures in a dialog instead of dying silently. */ |
| 266 | export const exportDiagnosticsInteractive = async () => { |
no test coverage detected