Repository navigation
ChatGPT parity: Retry from the reply footer - #34983
Conversation
teamleaderleo
left a comment
There was a problem hiding this comment.
Review (codex gpt-6-astra high, next-review, since=20261104T074607Z): SHIP at 8147f3d
SHIP at 8147f3d
Visual verdict: no images; Leo tries the build
No blocking correctness findings from code review. Focused tests could not run because Bun is unavailable; localization JSON and added-line whitespace checks passed.
- [P2] [follow-up] [category:ux] [finding:F1] [outcome:pending]
webviews/src/agent-session/acpmux/conversation/TurnRows.tsx:444: Capture the completed reply footer and open model menu to verify alignment and visibility against ChatGPT; no after screenshots were supplied.
Follow-ups:
- Capture the footer and model-menu visuals described above.
teamleaderleo
left a comment
There was a problem hiding this comment.
Review (gpt-6.1-sol high): SHIP at 8147f3d
Independent review: SHIP at 8147f3d.
Checked reply Retry routing, model menu preservation, completed full-file net-change proof, and source/version invalidation. No base, data, security, compile, or crash blocker found.
Visual verdict: before/after captures were not supplied; add them as a follow-up.
Follow-ups:
- F1 [correctness] [P2 follow-up] outcome:pending — Canonical path enrichment can split net-change buckets: completed
file.tsA→B without canonical path, then the same path with canonical/repo/file.tsB→A, can report changed files despite a net revert. Merge aliases or remain neutral when file identity changes. - F2 [visual] [follow-up] outcome:pending — Add the reply-footer gallery captures.
8147f3d to
f6bb395
Compare
teamleaderleo
left a comment
There was a problem hiding this comment.
Review (gpt-6.1-sol high): SHIP at f6bb395
Independent delta review: SHIP at f6bb395.
The raw-path alias check conservatively invalidates histories when canonical enrichment splits their identity. The added test covers an A→B→A net revert across that transition. The scan remains limited to the settled retry target; prior reply Retry and model-menu review carries forward.
Visual verdict: captures remain a follow-up.
Follow-ups: prior review-5766057615/F1 is fixed in this head; owner outcome pending. Prior review-5766057615/F2 remains pending for reply-footer captures.
|
Finding outcome: review-5766057615/F1 fixed f6bb395 |
f6bb395 to
8a24af7
Compare
Leo: "Retry on the reply" and "what do we want? ... look at the existing references ... and just see it" Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-3f1e636923a58cc977ad
8a24af7 to
e4c448e
Compare
teamleaderleo
left a comment
There was a problem hiding this comment.
Review (gpt-6.1-sol high): SHIP at e4c448e
The same independent reviewer checked the final alias delta. Ambiguous path histories keep a neutral tooltip, complete chains alone establish net changes, and alias handling is linear in edit events. The scan remains outside live per-token rendering. No blocking finding.
Visual verdict: after captures remain follow-up only.
Follow-ups:
- F2 [follow-up] [category:visual] outcome:pending — Add light/dark before/after captures for reply Retry and model switching.
…-retry-reply # Conflicts: # webviews/src/agent-session/acpmux/conversation/turns.ts
|
Owned by an agent session · session |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
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
|
|
This PR changes a hunk marked |
|
Review (subagent claude-opus-5-5 medium): BLOCK at dec0ad7 The head commit Its parent |
|
Review (subagent claude-opus-5-5 medium): SHIP at 8dbc4d7 Scoped to the base integration since the passing product review at e4c448e. The tree at 8dbc4d7 equals 0d5e93c's tree. The net diff against the merge base matches the reviewed one except one hunk: the turns.ts model import now keeps base's Checked at the head: |
|
Not merged at b95d440: the classifier refuses CI run 41860245074 web / react-apps-check (1): 'test/summary-scroll-steady.test.ts timed out (killed at the wrapper's hard limit) (a crash or a cut-short run is never a base red)'. The webview verdict waits on this shard. Every other red is excused: nightly-guards (exit 0, same failure on base run 41865097385). Waiting on a decision about a rerun. |
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
|
Review (subagent claude-opus-5-5 medium): SHIP at 9a46744 Carried from 5f29ffe. The delta is a base merge of feat-cmux-next e01bbae (update-branch), which brings in #35839 and #35851. The net diff against merge base e01bbae (6 files, +270/-8) has |
|
Not merged at 9a46744. The webview verdict is clear, CI and fast gates are green, and the patch-id is unchanged. The base classifier refuses the remaining reds (see the coordinator report): the gallery-health agent-start shimmer CLS (cmux#35744) and a cmux-next guards infra failure. Parked for a coordinator decision. |
|
Review (next-review patch-id; carried): SHIP at 3cf6d4d Carried from the SHIP at 9a46744 (#34983 (comment)). The delta is cmux-bot's base merge of feat-cmux-next fe924c0 (update-branch, 21:40Z). The net diff against merge base fe924c0 has |
|
Overlap note: #34779 (now at 490ffcd) also puts Retry and its model switch on the last turn's reply footer, failed or not, as one split control ( |
Picks up #35928 (gallery CLS fixes) for the gallery-health reds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review (next-review patch-id; carried): SHIP at 26a01c0 Carried from the SHIP at 3cf6d4d (#34983 (comment)). The delta is a base merge of feat-cmux-next ec3cc0a, which brings in #35928 (the gallery CLS fixes for the shimmer and new-tab-page#prefixes reds). The net diff against the merge base has |
Resolve against base's footer Retry (#34983): the prompt row draws Retry only in the Messages view or where retryPlacement puts it on the prompt, and there it still takes hasAttachment, so an attachment-only prompt keeps Retry when every attachment can go again. The bubble tests render in the Messages view, where a sent prompt draws its own Retry. Agent-Session: https://cmux.com/deeplink/agent?id=aid-f687051acb493685d626 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo's parity ask: “the latest copy buttons auto showing when the turn is done like chatgpt”. He also said: “this should not be placed in front of the copy/whatever buttons. those buttons should always just be there left aligned”.
Adds ChatGPT-style Retry beside the reply footer for the latest completed retryable turn. Earlier completed turns remain unchanged, and failed turns keep their existing Retry and Retry-with-model actions. When a settled turn has a proven net whole-file edit, Retry's tooltip says the turn changed files; unknown-old writes, fragments, failed or pending edits, no-ops, broken chains, and edits reverted within the turn stay neutral.
The net-edit projection is deliberately conservative and runs only for a settled retry target, so live token snapshots do not scan the turn body. The feature is on by default and is isolated to the existing Retry action, making it easy to revert.
Verification:
webviews/src/agent-session/acpmux/conversation/TurnFooter.test.tsxandfooterActions.test.tsx(latest-turn Retry, older-turn exclusion, failed Retry/model menu preservation, tooltip text, known net edit gating, unknown-old/fragment/failed/pending/no-op/reverted cases).git diff --check.Performance:
turns.ts), guard exercised by focused footer testsagent-identity footer --repo OWNER/REPO
🤖 Generated with Codex
Agent session: agent session
Open in [code]smith · Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Adds ChatGPT-style Retry (with its model menu) to the reply footer of the latest completed turn, so a finished reply can be retried without scrolling back to its prompt.
Written for commit 26a01c0. Summary will update on new commits.