Fix z.ai overview submenu recursion#1279
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed June 5, 2026, 12:48 AM ET / 04:48 UTC. Summary Reproducibility: yes. Source inspection and the reported red/green focused test path show current main can put z.ai overview rows in a state with both a detail submenu and a provider-selection action, though I did not run a live app hover reproduction. Review metrics: 2 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Mantis proof suggestion Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land the narrow guard after a redacted real app proof shows the z.ai overview row opens only its detail submenu, with maintainers explicitly accepting or preserving the submenu-row activation contract. Do we have a high-confidence way to reproduce the issue? Yes. Source inspection and the reported red/green focused test path show current main can put z.ai overview rows in a state with both a detail submenu and a provider-selection action, though I did not run a live app hover reproduction. Is this the best way to solve the issue? Mostly yes. The source patch is narrow and matches the existing submenu no-op helper, but merge should wait for real app proof and maintainer acceptance of the submenu-row activation contract. AGENTS.md: found and applied where relevant. Codex review notes: model gpt-5.5, reasoning high; reviewed against 65e39f4dcb3a. Label changesLabel justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
afd14cc to
9e60be8
Compare
9e60be8 to
24e34db
Compare
|
Reviewed and tested this locally on macOS (Swift 6.3.2 / Xcode 26.5). Fix looks correct, and since CI here wants real-behavior proof, here it is. Root cause is as described: GREEN on this PR: RED on base (reverted only the source-fix hunk, kept the new test): Restoring the fix makes it green again. The test drives One unrelated note: LGTM. |
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
Summary
Why
Hovering the z.ai overview row could open a nested full menu because the row had both a detail submenu and a provider-selection action. Rows with submenus should let hover open only the detail submenu; plain rows still keep the selection action.
Fixes #1246.
Reviewer validation
A contributor reviewed and tested this locally on macOS with Swift 6.3.2 / Xcode 26.5.
This PR passed:
Base check, with only the source fix reverted while keeping the new test, failed as expected:
Restoring the fix made the test green again. The test performs the row action on a z.ai overview row with a confirmed non-nil submenu, so it covers the path that previously rebuilt the menu mid-interaction. The reviewer also reported SwiftFormat and SwiftLint clean on the three changed files.
Unrelated note from local validation:
closed attached menu preparation waits for store refresh to finishfailed under a parallel run but passed in isolation; that test is not touched by this PR and appears to be a pre-existing timing flake.Validation
git diff --check.build/lint-tools/bin/swiftformat Sources Tests --lintswift test --filter StatusMenuTests/selecting_overview_row_switches_to_provider_detailwas blocked locally before project code compiled: the Command Line Tools install cannot loadPreviewsMacrosfor theKeyboardShortcutsdependency#Previewdeclarations.make checkran SwiftFormat successfully, then was blocked when portable SwiftLint trapped loadingsourcekitdInProc.frameworkunder the local Command Line Tools install.