Skip to content

Atomic Swaps: master tracking issue #2070

Description

@Maxnflaxl

Master tracking issue for open Atomic Swap work in the core wallet.

Regression: swap offers rejected as foreign (breaks UI offer board)

Since d4d0e78 ("wallet: AtomicSwapTransaction - using nonce addresses", shipped with 7.3) FillSwapTxParams() allocates a bare key id via AllocateKidRange(1) and no longer persists a WalletAddress. SwapOffersBoard::publishOffer() only recognizes publishers found in IWalletDB::getAddresses(true), so every newly created offer throws ForeignOfferException ("Offer has foreign Pk and will not be published"). User reports: BeamMW/beam-ui#1017, BeamMW/beam-ui#1073. A fix (create and persist the publisher address in FillSwapTxParams(), as the v6 API's createWID() did before the change) is being prepared.

Follow-up to the fix: define the publisher-address lifecycle (expire vs. delete on offer expiration/cancel/accept). The address must stay resolvable while SwapOffersBoard may still re-broadcast the offer status (sendUpdateToNetwork()/isOwnOffer() look it up in the own-address set), i.e. roughly for the BBS message lifetime after the offer reaches a terminal state.

Sub-issues

UI-side issues are tracked in BeamMW/beam-ui#1267.

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions