fix(frontend): unstick Keplr + Ledger Nano signing #1091

Merged
PlasticDigits merged 2 commits from fix/567-keplr-ledger into main 2026-08-19 02:00:38 +00:00
PlasticDigits commented 2026-08-19 01:07:32 +00:00 (Migrated from gitlab.com)

Summary

  • Fixes Keplr + Ledger Nano signing stalls (#567): detect isNanoLedger, split-path amino (never signDirect for Ledger), best-effort pre-sign experimentalSuggestChain, signing-phase LUNA-app hint, and a 4-minute sign wait with recovery copy that is not the 30s #173 broadcast timeout.
  • Software Keplr stays on signDirect. Post-sign behavior remains #359 (no immediate retry). Mainnet fee guard stays off (#429). No second signAmino (#208).
  • Docs: docs/frontend.md K567-1–K567-8, QA matrix, FAQ recovery, skills/AGENTS_FRONTEND_KEPLR_LEDGER.md. Verify: make verify-issue-567.

Closes #567

Test plan

  • make verify-issue-567 (unit + doc markers)
  • Amino vs signDirect unit tests (software Keplr / Ledger / Station)
  • Pre-sign Keplr suggest is best-effort; Station path unchanged
  • Sign-stall copy ≠ TERRA_TX_BROADCAST_TIMEOUT_MESSAGE; late signature does not broadcast
  • make verify-issue-429 (fee guard remains LocalTerra-only)
  • Broadcast recovery tests (#359) still pass
  • Manual columbus-5: Keplr + Ledger Nano — Cosmos-app stall, LUNA app + chain refresh, then successful swap (any pair)
  • Manual: software Keplr swap — no Ledger copy, no extra click
  • Manual LocalTerra: Keplr software / simulated wallet only (#235)
## Summary - Fixes Keplr + Ledger Nano signing stalls ([#567](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/567)): detect `isNanoLedger`, split-path **amino** (never `signDirect` for Ledger), best-effort pre-sign `experimentalSuggestChain`, signing-phase LUNA-app hint, and a **4-minute** sign wait with recovery copy that is not the 30s #173 broadcast timeout. - Software Keplr stays on `signDirect`. Post-sign behavior remains #359 (no immediate retry). Mainnet fee guard stays off (#429). No second `signAmino` (#208). - Docs: `docs/frontend.md` **K567-1–K567-8**, QA matrix, FAQ recovery, `skills/AGENTS_FRONTEND_KEPLR_LEDGER.md`. Verify: `make verify-issue-567`. Closes #567 ## Test plan - [x] `make verify-issue-567` (unit + doc markers) - [x] Amino vs `signDirect` unit tests (software Keplr / Ledger / Station) - [x] Pre-sign Keplr suggest is best-effort; Station path unchanged - [x] Sign-stall copy ≠ `TERRA_TX_BROADCAST_TIMEOUT_MESSAGE`; late signature does not broadcast - [x] `make verify-issue-429` (fee guard remains LocalTerra-only) - [x] Broadcast recovery tests (#359) still pass - [ ] Manual columbus-5: Keplr + Ledger Nano — Cosmos-app stall, LUNA app + chain refresh, then successful swap (any pair) - [ ] Manual: software Keplr swap — no Ledger copy, no extra click - [ ] Manual LocalTerra: Keplr software / simulated wallet only (#235)
PlasticDigits commented 2026-08-19 02:00:24 +00:00 (Migrated from gitlab.com)

added 5 commits

  • 6ef456e5...45c9e4c6 - 4 commits from branch main
  • adc91bb4 - Merge origin/main into fix/567-keplr-ledger.

Compare with previous version

added 5 commits <ul><li>6ef456e5...45c9e4c6 - 4 commits from branch <code>main</code></li><li>adc91bb4 - Merge origin/main into fix/567-keplr-ledger.</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/373/diffs?diff_id=1969754214&start_sha=6ef456e5167a0d3f872e893244205da363486a65)
PlasticDigits commented 2026-08-19 02:00:38 +00:00 (Migrated from gitlab.com)

mentioned in commit d89a8c7a61

mentioned in commit d89a8c7a61347aa371b22946fb2f1c7a90ca3eba
PlasticDigits (Migrated from gitlab.com) merged commit d89a8c7a61 into main 2026-08-19 02:00:38 +00:00
PlasticDigits commented 2026-08-19 02:16:59 +00:00 (Migrated from gitlab.com)

mentioned in issue #567

mentioned in issue #567
PlasticDigits commented 2026-08-19 02:28:47 +00:00 (Migrated from gitlab.com)

mentioned in issue #573

mentioned in issue #573
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
code/cl8y-dex-terraclassic!1091
No description provided.