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

payjoin / rust-payjoin / 16942107516 / 1
83%
master: 83%

Build:
DEFAULT BRANCH: master
Ran 13 Aug 2025 03:40PM UTC
Files 46
Run time 1s
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

13 Aug 2025 03:37PM UTC coverage: 85.902% (+0.03%) from 85.874%
16942107516.1

push

github

web-flow
Decapsulate v1 provisional and payjoin typestate from v2 typestate (#938)

We currently represent a failure to finalize a Payjoin proposal using
the `ReplayableError(ImplementationError)` variant. While this is
appropriate for a v1 Payjoin receiver, it misrepresents the expected
behavior for a v2 receiver. In v2, encountering an implementation error
is considered a transient failure. i.e the receiver should retry the
session rather than respond to the sender and terminate it.

This misclassification stems from the current v2 -> v1 type hierarchy,
which forces the v2 receiver to adopt `ReplayableError`, when a
more suitable variant exists. In reality, the v2 receiver only requires
a shared abstraction (`PsbtContext`) to finalize the PSBT and construct
a
payjoin proposal. It does not need to embed or depend on the v1
receiver’s typestates.

This PR introduces `PsbtContext` as a common abstraction for
proposal finalization and decouples the `ProvisionalProposal` and
`PayjoinProposal` typestates from the v1 typestate. Additionally we map
the finalize proposal error to a new SessionError integration error
variant.

7501 of 8732 relevant lines covered (85.9%)

533.68 hits per line

Source Files on job 16942107516.1
  • Tree
  • List 46
  • Changed 5
  • Source Changed 5
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 16942107516
  • e0e6dff7 on github
  • Prev Job for on master (#16901789693.1)
  • Next Job for on master (#16943032439.1)
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