Show reply timestamp in the native More menu
Add the reply time as a quiet, disabled header at the top of the assistant reply’s native More/right-click menu. The pane formats the date when opening the menu; the native shell uses a standard menu item and preserves existing actions.
Leo: “in general lawrence was askin ab parity wrt the chatgpt DESIGN as a whole for our gui/app/functionality and stuff...”
Private reference id: chatgpt/live/transcript-worked-for-branch-menu (the Today/time header). Design spec: design/menus.md in leo-workspace. Prior art: #24350 (native More menu), #31640 (timestamp visibility while open), #31229 (popup placement); this extends the existing native menu.
Changelog
- Show the localized reply date/time above the native reply menu’s actions.
Performance
| Metric | Before | After | Delta | Harness or run |
|---|---|---|---|---|
| Timestamp headers supplied per reply-menu opening | 0 | 1 | +1 | Paired report harness, 500 openings per revision |
| Report preparation p95 | 0.036108 ms | 0.044905 ms | +0.008797 ms | Same paired harness, 500 samples after 100 warmups |
Formatting is on demand, with no new timer, observer, animation or transcript pass. Ships on by default; reverting this commit restores the prior menu.
Observed
-
git diff --checkand static pre-push checks passed. -
Final-head fleet step
de58e6a3ab263f61e7cb20ff: both focused web test files passed (date/localization and More-button bridge), with zero failures or timeouts. -
Invalid/unknown timestamps omit the header; the regression test includes zero.
-
Localization audit found no new or changed macOS keys or web English keys; existing catalog parity debt remains on base.
-
Native compile and all 7
AgentPaneMenuLookTestspassed in fleet step697f46cddcc8a7b9dedff552.
Checks
- Chromium Objective-C contract job is red on the same version/hash mismatch on base
31ffec470c461d37bdc64d2a4d42b60dc0e9745c: the reviewed CEF contract and pinned engine differ. The menu changes neither file. Failure. - Independent Claude Opus 5.5 medium review: SHIP at
1596bc31170176917f99bf57e329701acd07f237. - Paired lint/measurement run: https://github.com/manaflow-ai/cmux/actions/runs/41759545539 measured implementation head
8a878213fa62c8142cb999af7c538e0ec0c793fdagainst base31ffec470c461d37bdc64d2a4d42b60dc0e9745c. It found a formatter wrap corrected before the final head, plus existing base type/format/design-token findings. The final head also rejects unknown timestamps.
Not run
- No capture: no real-app capture yet. This change uses standard native menu chrome; a light/dark capture remains a follow-up.
🤖 Generated with Codex
Agent session: agent session