Repository navigation
[Feedback][macOS] /feedback shows task ID as ready, then diagnostics upload fails #39892
Description
Summary
In the current unified ChatGPT desktop app on macOS, the Codex task /feedback flow reaches a partial-looking state and then fails:
- The dialog says Uploading feedback.
- It says: “Your Feedback ID is ready while diagnostics finish uploading.”
- It displays
01a02352-42e0-7db0-a2eb-c68dba704dd2. - That value exactly matches the current Codex task ID.
- The app then shows: “We couldn't submit your feedback. Please try again in a moment.”
This leaves the submission state ambiguous. The UI presents an identifier as ready, but it does not establish whether the feedback text was accepted, whether only diagnostics failed, or whether the entire submission failed.
Environment
- Product surface: unified ChatGPT desktop app → Codex task
- Platform: macOS
- Subscription: ChatGPT Pro
- Date reproduced: 2026-08-21
- Client identifier observed in the same current task context:
Codex Desktop/26.818.31338 - Correlation/current task ID:
01a02352-42e0-7db0-a2eb-c68dba704dd2
Steps to reproduce
- Open a Codex task in the ChatGPT desktop app.
- Run
/feedback. - Enter feedback and submit it with diagnostics enabled.
- Observe the Uploading feedback dialog.
- Observe that the dialog presents the current Codex task ID as the Feedback ID while diagnostics continue uploading.
- Wait for completion.
- Observe the red error banner: “We couldn't submit your feedback. Please try again in a moment.”
After the failure, I also created a local performance trace to preserve diagnostic evidence. The app displayed the Send profile trace? warning that enabled JavaScript and native memory-allocation profiles may contain sensitive data. The trace was not uploaded or attached to this public issue.
Actual behavior
- The UI presents a Feedback ID before the upload finishes.
- The displayed value is the current Codex task ID, so it is not an independent success receipt.
- The flow later reports submission failure.
- The app does not say whether:
- the feedback text was stored;
- only diagnostics or extra files failed;
- the report is queued for retry; or
- nothing was accepted.
- There is no final auditable success state or separate diagnostic-upload status.
Expected behavior
/feedbackshould complete successfully and show a final confirmation.- If the base feedback report succeeds but diagnostics fail, preserve the base report and clearly state feedback submitted; diagnostics failed.
- If the entire submission fails, do not present the task/conversation ID as though it were a completed Feedback ID.
- Expose separate status for:
- feedback text;
- standard logs/diagnostics; and
- optional performance/profile traces or extra files.
- Provide a retry path for only the failed diagnostic component without creating an uncertain duplicate report.
Impact
Users cannot tell whether OpenAI received their feedback. Retrying may create duplicates if the text succeeded, while not retrying may leave the report unsubmitted. The failure is especially problematic when /feedback is the recommended route for supplying diagnostics about another product defect.
The feedback that triggered this reproduction concerns the web Chat/Work Project-picker parity issue documented in #39884.
Related issue / duplicate distinction
- Feedback submission fails with "We couldn't submit your feedback, please try again in a moment" #16304 reports the same final error message on an older desktop build and says it can occur with or without logs.
- This report adds the current identifier-first, diagnostics-still-uploading, then failure sequence, proves that the displayed “Feedback ID” equals the current Codex task ID, and requests separate base-report and diagnostic-upload status.
- [Web][Projects] New Chat lacks general project selector while Work and Desktop Chat provide project selection #39884 is the distinct product issue that the failed feedback submission was attempting to report.
Source basis
Official OpenAI documentation describes:
/feedbackas opening the feedback dialog and optionally including logs.feedback/uploadas submitting classification, optional reason/logs, the conversation ID, and optional extra log-file attachments.
That product shape is consistent with the need to distinguish the base report from optional diagnostic uploads, but it does not establish which component failed in this reproduction.
Routing and privacy
- Type: bug / validation gap
- Scope: public OpenAI/Codex
- Owning surface: ChatGPT desktop app → Codex task
- Target repo:
openai/codex - Privacy class: public-safe, pointer-only diagnostics
- Excluded: raw performance trace, JavaScript/native memory profiles, logs, account details, Project names, local paths, and private conversation content
- Duty verbs: submit, upload, preserve, distinguish, retry
- Priority: P2
- Owner: OpenAI Codex desktop feedback pipeline
- Next safe action: reproduce the post-ID diagnostics failure and inspect server-side handling for the correlation/task ID above
- Approval gate: owner approved this sanitized public issue
- Validation/close criteria: final success is explicit; partial failures identify the failed component; base feedback is preserved when optional diagnostics fail; retrying diagnostics does not create duplicate feedback reports
Activity
nos1609 commentedon Aug 25, 2026
Independent Windows ARM64 confirmation on the same current Desktop release family.
Environment:
26.818.8289.026.818.61809019f3421-934e-7471-8c1b-95c95f668565Two in-app feedback submissions from the affected task did not produce a durable final success receipt.
A read-only check after the attempts found:
An empty queue does not prove success. It can also mean that the failed report was dropped before durable queuing. Therefore the user still cannot determine whether the feedback text reached the backend, only diagnostics failed, or nothing was accepted.
This reproduces the core ambiguity described here on Windows ARM64. The UI needs separate durable status for the base feedback payload and diagnostics, plus a stable server-issued receipt after acceptance.
Privacy: no feedback text, logs, local paths, account data, hostnames, or project names are included.
aidawilliam41-ops commentedon Aug 30, 2026
Windows x64 reproduction: Sentry upload timeouts with request IDs
OpenAI Support asked me to add the two application request IDs and a sanitized log excerpt so engineering can correlate this Windows reproduction.
Environment:
26.818.5229.00.149.0-alpha.4.126200.8037Sanitized evidence:
Successful upload acknowledgements: 0.
Normal PNG uploads and authenticated Codex account/configuration requests succeeded during the same session. A later read-only check confirmed working DNS, TCP 443, and TLS connectivity to the Sentry host in about 1.6 seconds. No WinHTTP, WinINET, PAC, environment, or system proxy was configured. The feedback POST was not repeated because delivery status was unknown and retry idempotency was not documented.
No third-party antivirus HTTPS scanning or Web Shield was known to be enabled. A current read-only check found no installed/running third-party antivirus or Web Shield and no common HTTPS-inspection root certificate. A historical per-feature antivirus toggle for the exact event minute cannot be proven.
The UI displayed:
Не удалось отправить отзыв.Не удалось отправить отзыв, но его идентификатор остался прежним.The displayed identifier matched the originating Codex task ID; it was not an independently confirmed feedback receipt. Delivery remains unknown.
Privacy: no account/email data, private conversation content, local paths, raw logs, or support case number are included.