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

KarpelesLab / libwallet / 24421247051
25%

Build:
DEFAULT BRANCH: master
Ran 14 Apr 2026 08:35PM UTC
Jobs 1
Files 78
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

14 Apr 2026 08:26PM UTC coverage: 23.073% (-1.4%) from 24.463%
24421247051

push

github

MagicalTux
WalletConnect v2: pairing, sessions, requests, events, Dart surface

Ties together the crypto + relay foundations into a full
WalletConnect v2 wallet-side implementation.

Go (wltwc):
- Manager: owns the relay WebSocket with reconnect + backoff,
  replays subscriptions for every non-disconnected session on
  startup, decrypts inbound envelopes, classifies wc_* methods.
- session.go: SQL-backed wcSession struct (pairing / proposed /
  active / disconnected), persists topic, symKey, X25519 keys,
  peer metadata, approved namespaces, and expiry.
- pairing.go: parses wc:TOPIC@2?relay-protocol=irn&symKey=... URIs
  and validates the symKey-derived topic matches.
- manager: handles wc_sessionPropose (stashes + emits
  wc_session_propose host event), wc_sessionRequest (emits
  wc_session_request), wc_sessionDelete (marks disconnected),
  wc_sessionEvent / ping (ACK only). Builds wc_sessionSettle on
  approval with CAIP-10 accounts mapped per namespace.
- api.go: endpoints WalletConnect:start / stop / pair / sessions /
  approveSession / rejectSession / respond / respondError /
  emitEvent / disconnect.
- wltbase.InitEnv now calls wltwc.InitEnv (creates the SQL table,
  wires the per-env Manager).

Dart:
- client.walletConnect (WalletConnectApi) with all endpoints.
- client.walletConnectProposals / walletConnectRequests streams
  built on top of the existing event bus (WcSessionProposal /
  WcSessionRequest models).
- Typed WcSession with isPairing/isProposed/isActive/isDisconnected
  getters and peerName convenience.

Docs:
- dart/doc/walletconnect_integration.md: full host walkthrough
  (start → pair → approve → respond → emitEvent → disconnect),
  CAIP-10 / CAIP-2 notes, troubleshooting table.
- dart/README.md + api.md updated.

Tests: 106 Dart integration tests pass (4 new WC smoke tests);
wltwc unit tests cover crypto + URI parsing.

v1 scope notes:
- Signing approvals still go through the existing
  client.pendingRequests flow inside client.web3.request... (continued)

57 of 749 new or added lines in 5 files covered. (7.61%)

2095 of 9080 relevant lines covered (23.07%)

2.77 hits per line

Uncovered Changes

Lines Coverage ∆ File
547
0.0
wltwc/manager.go
85
12.37
wltwc/api.go
41
0.0
wltwc/session.go
18
71.43
wltwc/pairing.go
1
38.41
-0.28% wltbase/env.go
Jobs
ID Job ID Ran Files Coverage
1 24421247051.1 14 Apr 2026 08:35PM UTC 78
23.07
GitHub Action Run
Source Files on build 24421247051
  • Tree
  • List 78
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24421247051
  • a664d388 on github
  • Prev Build on master (#24420236433)
  • Next Build on master (#24421574149)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc