Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Coin Selection Specification: Draft 1 #16

Draft
wants to merge 89 commits into
base: master
Choose a base branch
from

Conversation

jonathanknowles
Copy link
Contributor

@jonathanknowles jonathanknowles commented Mar 20, 2020

Related Issue

#21

Summary

This PR contains a draft of a specification for the coin selection algorithms used by Cardano Wallet.

The purpose of the specification is to provide an easy-to-understand, human-readable description of these algorithms that doesn't require an understanding of Haskell.

The purpose of this PR is to gain feedback on areas for improvement. Please feel free to leave comments and constructive suggestions!

The document is written in Markdown, and can be read in its rendered form.

Please note that there are several areas not addressed by this specification:

  • There is no description of the algorithm used for migration of funds from one wallet to another.
  • Descriptions of fee balancing algorithms are not included.

@jonathanknowles jonathanknowles self-assigned this Mar 20, 2020
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from 463368d to 3d43e27 Compare March 23, 2020 03:31
Copy link
Contributor

@rvl rvl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice doc - very clear.

Will there be a discussion of the tx fee being dependent on the coin selection which is dependent on tx fee? Is that what fee balancing is?

information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
information/specification.md Outdated Show resolved Hide resolved
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch 13 times, most recently from dea8f77 to 79122b7 Compare May 5, 2020 08:11
Explain the motivation behind choosing a UTxO selection whose value is
approximately twice the value of the output to which it corresponds.
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from 79122b7 to 4cf7b13 Compare May 5, 2020 08:13
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from 75d9e00 to 3471486 Compare May 5, 2020 08:34
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from edc91a8 to e93c24a Compare May 5, 2020 09:50
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from e93c24a to 01a1faf Compare May 5, 2020 09:55
@jonathanknowles jonathanknowles force-pushed the jonathanknowles/specification-draft-1 branch from 7247429 to 4a99359 Compare May 5, 2020 10:00
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.

5 participants