• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

KarpelesLab / libwallet / 26161304408
22%

Build:
DEFAULT BRANCH: master
Ran 20 May 2026 12:05PM UTC
Jobs 1
Files 121
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

20 May 2026 12:03PM UTC coverage: 22.26%. Remained the same
26161304408

push

github

MagicalTux
dart: document cross-device-import recovery + bump to 0.4.37

Tibane debugging report on cross-device wallet import landed on
`Wallet:reshare` returning `failed to start remote peer …:
invalid status for wallet sign session: done`. The root cause
isn't a bug — it's a documentation gap. The wallet's stored
`WalletKey.key` (the `crws-…:crwsv-…` resource id) is the server-
side WalletSign session that was created during the original
keygen and marked `done` once that ceremony completed. Calling
`Wallet:reshare` against a `done` session is correctly refused
by the server.

The actual recovery sequence — visible in libwallet's own
`wltwallet/remote_test.go:74-105` but not surfaced anywhere a
host implementor would look — is:

  1. RemoteKey:reshare(key: <wallet's stored RemoteKey.key>, curve)
     → server marks the OLD session `done`, mints a fresh session,
       sends SMS code, returns verification-session token in
       `RemoteKeySession.session`.
  2. RemoteKey:validate(session, code)
     → server verifies, returns `RemoteKeyValidation.remoteKey` —
       the NEW `crws-…:crwsv-…` resource id that supersedes the
       wallet's stored RemoteKey.key for the upcoming reshare
       ceremony.
  3. Wallet:reshare(walletId,
       old: [..., {id: oldRemoteKey.id, key: NEW_remoteKey,
                   type: 'RemoteKey'}, ...],
       new: [..., {type: 'RemoteKey', key: NEW_remoteKey}, ...])
     → critical: same NEW id on BOTH old-committee and
       new-committee RemoteKey descriptors. The server has
       internally bound the new session to the wallet's RemoteKey
       share for the duration of the reshare; engaging on the old
       (done) session would round-trip the same error.

Three doc touch points so the IDE hover surfaces the right
information at every step:

  - `RemoteKeyApi.reshare` docstring: spells out that `key` is
    `WalletKey.key` (the `crws-…:crwsv-…` server resource id),
    NOT `WalletKey.id` (the `wkey-…` uuid). Passing the wron... (continued)

3918 of 17601 relevant lines covered (22.26%)

106.57 hits per line

Jobs
ID Job ID Ran Files Coverage
1 26161304408.1 20 May 2026 12:05PM UTC 121
22.26
GitHub Action Run
Source Files on build 26161304408
  • Tree
  • List 121
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26161304408
  • d29be218 on github
  • Prev Build on master (#26154882372)
  • Next Build on master (#26218873072)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc