Skip to content

Features/update for tsc spec compliance#1

Merged
AustEcon merged 15 commits intomasterfrom
features/update-for-tsc-spec-compliance
Nov 1, 2023
Merged

Features/update for tsc spec compliance#1
AustEcon merged 15 commits intomasterfrom
features/update-for-tsc-spec-compliance

Conversation

@AustEcon
Copy link

@AustEcon AustEcon commented Nov 1, 2023

This is an old PR from here: bitcoin-sv#57
The description below has merely been copied over.
Merging this into an ElectrumSV dedicated fork as this is what the ElectrumSV develop branch has been running against for quite some time now (Jul 2022).


As discussed with @jadwahab and @sirdeggen here is the PR for the latest TSC spec: https://tsc.bitcoinassociation.net/standards/direct_payment_protocol/

Corresponding dual PR here: libsv/go-dpp#69

So far this only updates the PaymentRequest structure which is enough for now to get ElectrumSV through the first part of the data flow for development...

Still to do:

  • Payment
  • PaymentACK
  • Adequate testing end-to-end against this code

Until the dpp-proxy is updated to the TSC spec, ElectrumSV will be building against this feature branch to avoid technical debt of the old message structures.

AustEcon and others added 15 commits October 11, 2022 14:33
…: `features/updates-for-tsc-spec-compliance`

- This in turn results in updates of the other vendored dependencies
… to the latest version of `go-dpp` feature branch commit
…the `JSONEnvelope` based signed model. This also removes `payd` as a dependency, although there are remnants of configuration variables.
… runtime error: invalid memory address or nil pointer dereference'. Generate the swagger update.
- This includes relayed `payment.error` messages over the websocket from the payee (for example: `bad-txns-premature-spend-of-coinbase`)
… fields of the dpp.PaymentACK struct (as this is not a part of the TSC specification)

- The payee wallet returns a `server.ClientError` in the body of the `payment.error` websocket message (this has not changed) and this is parsed and translated into the appropriate http error response. The `PaymentACK` was being inappropriately used in some cases as a way to pass around error details. This is no longer the case.
- A `PaymentACK` object is only returned in the cased of successful payment.
@AustEcon AustEcon merged commit dbc049d into master Nov 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants