Fix reset session dialog localization#919
Conversation
Use a runtime session-action cancel label for reset confirmations and avoid promoting Cancel as the default dialog button. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
Codex review: needs maintainer review before merge. Reviewed July 1, 2026, 8:04 PM ET / 00:04 UTC. Summary Reproducibility: yes. Current-main source shows both session confirmation paths still use 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. Next step before merge
Security Review detailsBest possible solution: Land the narrow localization/default-button fix after ordinary maintainer review and status checks, keeping cancel text as a runtime session-action resource. Do we have a high-confidence way to reproduce the issue? Yes. Current-main source shows both session confirmation paths still use Is this the best way to solve the issue? Yes. Replacing both runtime dialog lookups with a session-scoped resource and neutralizing the default button is the narrow maintainable fix, and the source-contract tests cover the regression. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 8b857ecbb1f5. Label changesLabel changes:
Label 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
|
|
Nice focused fix, Caleb. This is exactly the right shape for this bug: both reset confirmation call sites now use a runtime dialog resource instead of a XAML property resource key, every supported locale gets the new label, and the source-contract tests protect both the raw-key regression and the neutral default button choice. I also appreciate the clear UIA proof in the PR body for the destructive reset dialog. I validated locally with the required repo build, Shared tests, and Tray tests, and I’m comfortable taking this. |
Summary
CancelButton.Content, and the dialog promoted Cancel with primary/default styling.SessionActionPrompt_CancelLabelresource in every locale and useContentDialogButton.Noneso Cancel is neutral.Resetand localizedCancel, with Reset as the emphasized action.Change Type (select all)
Scope (select all touched areas)
winnodeLinked Issue/PR
Validation
./build.ps1- passed; Shared, Cli, WinNodeCli, SetupEngine, and WinUI all built successfully.dotnet test ./tests/OpenClaw.Shared.Tests/OpenClaw.Shared.Tests.csproj --no-restore- passed: 2689 passed, 31 skipped, 2720 total.dotnet test ./tests/OpenClaw.Tray.Tests/OpenClaw.Tray.Tests.csproj --no-restore- passed: 1452 passed, 0 skipped, 1452 total.Real behavior proof
winapp run ".\src\OpenClaw.Tray.WinUI\bin\Debug\net10.0-windows10.0.22621.0\win-arm64" --manifest ".\src\OpenClaw.Tray.WinUI\Package.appxmanifest" --executable "OpenClaw.Tray.WinUI.exe" --debug-output.92f750a1.openclaw://activity?filter=session, invoked Sessions > More actions > Reset, then inspected the live ContentDialog withwinapp ui.Cancelinstead ofCancelButton.Content; Reset remains the primary action while Cancel is not the default button.Not Found, so copied UIA proof is included instead.Security Impact (required)
Yes/No) NoYes/No) NoYes/No) NoYes/No) NoYes/No) NoYes, explain risk + mitigation: N/ACompatibility / Migration
Yes/No) YesYes/No) NoYes/No) NoReview Conversations
N/A - no bot review conversations were addressed by this PR.
Screenshots
Before:


After: