Skip to content

Conversation

@delta1
Copy link
Member

@delta1 delta1 commented Apr 3, 2025

  • test: add test for unblinded re/issuance greater than 21 million
  • fix: unblinded re/issuance for greater than 21 million

@delta1
Copy link
Member Author

delta1 commented Apr 3, 2025

closes #1443

@tomt1664
Copy link
Member

tomt1664 commented Apr 3, 2025

utACK d3502ce

@apoelstra
Copy link
Member

utACK d3502ce -- though this is a hardforking change and we need to be careful about where/how we deploy it.

@delta1 delta1 marked this pull request as draft June 12, 2025 15:11
@tomt1664 tomt1664 self-assigned this Jul 22, 2025
@tomt1664
Copy link
Member

Updated to enable this with a consensus parameter (-con_allow_any_issuance) to make the feature available to other applications without affecting existing chains.

@tomt1664
Copy link
Member

tomt1664 commented Sep 5, 2025

Modified to remove MoneyRange check for unblinded issuances/reissuances applied to consensus, and added a new policy check IsIssuanceInMoneyRange. This is enabled with new config option -acceptunlimitedissuances.

This is technically a hard fork, but can be released safely in advance so long as block signers apply -acceptunlimitedissuances=0 to prevent re/issuances out of MoneyRange being confirmed until required. (By default -acceptunlimitedissuances=1).

@tomt1664 tomt1664 requested a review from apoelstra September 5, 2025 09:51
@tomt1664 tomt1664 marked this pull request as ready for review September 5, 2025 09:51
Copy link
Member Author

@delta1 delta1 left a comment

Choose a reason for hiding this comment

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

ACK 0c6faca

Ran tests locally, left a few comments

@tomt1664 tomt1664 force-pushed the issues/1443 branch 2 times, most recently from 41f3833 to 2b7dd1a Compare September 19, 2025 10:42
@tomt1664 tomt1664 self-requested a review September 22, 2025 12:22
Copy link
Member Author

@delta1 delta1 left a comment

Choose a reason for hiding this comment

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

ACK 2b7dd1a

Ran tests locally


std::vector<std::string> elements_hidden_args = {"-con_fpowallowmindifficultyblocks", "-con_fpownoretargeting", "-con_nsubsidyhalvinginterval", "-con_bip16exception", "-con_bip34height", "-con_bip65height", "-con_bip66height", "-con_npowtargettimespan", "-con_npowtargetspacing", "-con_nrulechangeactivationthreshold", "-con_nminerconfirmationwindow", "-con_powlimit", "-con_bip34hash", "-con_nminimumchainwork", "-con_defaultassumevalid", "-npruneafterheight", "-fdefaultconsistencychecks", "-fmineblocksondemand", "-fallback_fee_enabled", "-pchmessagestart"};

argsman.AddArg("-acceptunlimitedissuances", strprintf("Relay and mine unblinded issuance transactions (default: %u)", DEFAULT_ACCEPT_UNLIMITED_ISSUANCES), ArgsManager::ALLOW_ANY, OptionsCategory::ELEMENTS);
Copy link
Member Author

Choose a reason for hiding this comment

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

Minor, can be done in followup: I think this could be slightly more descriptive

Suggested change
argsman.AddArg("-acceptunlimitedissuances", strprintf("Relay and mine unblinded issuance transactions (default: %u)", DEFAULT_ACCEPT_UNLIMITED_ISSUANCES), ArgsManager::ALLOW_ANY, OptionsCategory::ELEMENTS);
argsman.AddArg("-acceptunlimitedissuances", strprintf("Allow unblinded issuance amounts to exceed 21 million units (default: %u)", DEFAULT_ACCEPT_UNLIMITED_ISSUANCES), ArgsManager::ALLOW_ANY, OptionsCategory::ELEMENTS);

@delta1 delta1 merged commit 93c84a9 into ElementsProject:master Sep 23, 2025
14 checks passed
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.

3 participants