fix(platform): use icon buttons for inline table row actions and confirm passkey revoke (#1963)#2112
fix(platform): use icon buttons for inline table row actions and confirm passkey revoke (#1963)#2112larryro wants to merge 3 commits into
Conversation
…irm passkey revoke (#1963) Convert non-dropdown table/list row actions to IconButtons (with tooltips via aria-label) and route the destructive passkey revoke through a DeleteDialog confirmation. - passkey-section: the ghost "Remove" text button is now a trash IconButton that opens a DeleteDialog before revoking (previously revoked on click with no confirmation). - moderation-mapping-list: row Edit text button -> IconButton. - chat-filter-config: row Edit/Delete buttons -> IconButton for consistency. - Added passkeys.revokeConfirm{Title,Description} and moderationProvider.editMappingAria keys to en/de/fr; updated the 2FA docs. Resolves #1963.
Desk review — #1963 (icon buttons for row actions + delete-confirmation audit)Verdict: NOT READY — one acceptance-criterion gap remains. The conversions in this PR are correct, clean, and fully green on CI, but the issue's first acceptance criterion ("Inline table actions are icon buttons") is an audit of all tables, and a full-repo sweep finds one inline text per-row action button still unconverted. What was verified (all good)
Blocking gap
Non-blocking nits (optional)
Once "Watch Live" is converted, this meets the bar. |
Desk review — #1963 icon buttons + delete-confirmation auditVerdict: ✅ Ready to merge. Reviewed the whole implementation (not just the diff) across two rounds with parallel review agents, ran the project's own tests locally, and confirmed CI. CIAll required checks pass (Build platform, Lint, Knip, Format, Unit, Migrations, Opengrep, 16× Playwright platform shards, CodeQL js+py, etc.). The only non-green jobs are fork-only ( Tests I ran (locally, this branch)
What's correct
Non-blocking follow-up (optional)Four sibling governance editors — |
Summary
Resolves #1963. Audits non-dropdown table/list row actions and inconsistent delete-confirmation coverage.
IconButton(tooltip viaaria-label) that opens aDeleteDialogconfirmation. Previously it revoked the passkey immediately on click with no confirmation — the exact gap called out in the issue.IconButton.IconButtonfor a consistent icon-only action cluster.passkeys.revokeConfirmTitle/Description,moderationProvider.editMappingAria) in en/de/fr; 2FA admin docs updated in all three locales.Other feature tables (customers, agents, products, vendors, etc.) already use the canonical
EntityRowActions3-dot menu with confirmation dialogs, so no change was needed there.Acceptance criteria
Verification
typecheck(platform): green.oxlint --type-awareon changed files: 0 warnings / 0 errors.lib/i18n/messages.test.ts): 23 passed.chat-filter-config,moderation-provider-config): 12 passed.commitlinton the commit message: clean.