HenrikJannsen
eeaafc1e04
Use HashSet instead Lists.
...
Remove sorting as not needed.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
7cbc5d6263
Increase ISSUANCE_BOOST_FACTOR to 3
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
4ce6ce745a
Add check for isActivated and if not return LEGACY_BURNING_MAN_BTC_FEES_ADDRESS
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
4e08bcd53d
Split up legacy BM into DPT and BTC fee BM
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
d30ec07d94
Cleanup/add comments
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
8ab2582db6
Use check for isRegtest instead of test for isDevTesting to set dev parameters
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:15 -05:00
HenrikJannsen
0e79582819
Refactoring: Move isActivated method to BurningManService
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
dff6d48333
Refactoring: Move BM model classes into model package. Adjust visibility.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
c1dc317783
Remove unused methods
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
d31493b1e9
Use TradeWalletService.MIN_DELAYED_PAYOUT_TX_FEE as min value for miner fee in DelayedPayoutTxReceiverService.getSpendableAmount
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
d4646cc19f
Add LegacyBurningMan to UI
...
It is not included in BurningManCandidate candidate map as that would complicate things.
We only want to show it in the UI for informational purposes.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
883b0542a1
Fix getSnapshotHeight method
...
For chainHeights < genesisHeight+3*grid we ended up with future chainHeights
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:14 -05:00
HenrikJannsen
2b4b6fe715
Add logs for delayedPayoutTx receiver data
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
b7a5b569ca
Add legacy burningman to btc fee distribution in case we do not reach 100% from capped burn shares.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
c1b8871fda
Fix burn target calculations
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
3a7af07e86
Improve burn target calculation and display
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
c747a486a7
Fix duration calculations
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
3213c5e770
Avoid negative cycle index
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
683bc409c7
Use cycles for periods instead of blocks in months/years.
...
A cycle is the fundamental unit in the DAO, months/years have no relevance, so using
cycles as base helps avoids some potential weird behaviour with data getting updated at cycle events.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:13 -05:00
HenrikJannsen
2799ccabad
Add util class for cycle related methods with caching
...
Add getCycleAtIndex convenience method to DaoStateService
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
516004dfaf
Change ISSUANCE_BOOST_FACTOR to 3
...
Use lower dev test value for BURN_TARGET_BOOST_AMOUNT
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
1e8ec6f206
Add details if donationAddressOfDelayedPayoutTx check fails
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
625939b0f9
Bugfix: set burningManSelectionHeight and tradeTxFee at dispute clone
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
a6a018883d
Add isDevTesting method for adjusting behaviour for dev testing purposes
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
4e25d2f253
Add isDevMode check to set dev params
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:12 -05:00
HenrikJannsen
402c4075d0
Add option to add opReturn data at BSQ wallet send screen for non-BSQ balance.
...
This can be used for providing proof of ownership of a genesis output when attaching a custom BM receiver address.
See: https://github.com/bisq-network/proposals/issues/390#issuecomment-1306075295
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:11 -05:00
HenrikJannsen
78d3fd8d44
Fix wrong initial value.
...
For myGenesisOutputNames we check for null not Optional.empty as empty is a valid case and we do not
want to wrap the optional field into another Optional.
Also myCompensationRequestNames is using a null check and gets reset to null instead of an
empty set as the empty set is a valid case as well.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:11 -05:00
HenrikJannsen
88cf28c526
Add applyBlock method and call at constructor (some classes get not initiated at app startup but created by UI activity).
...
Remove accumulatedDecayedBurnAmount at getAllowedBurnAmount. Was incorrect.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:11 -05:00
HenrikJannsen
fb51861c4b
Use months and not cycles for burn target and average.
...
Add checks for chainHeight to make code more generic (in the current usage its always last block anyway)
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:11 -05:00
HenrikJannsen
befe166bc7
Refactor out fields from BurningManCandidate which are not affecting data for delayed payout tx receivers.
...
This allows to split off the burn target related code to separate classes.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:11 -05:00
HenrikJannsen
52d48eb90a
Rename getDelayedPayoutTxReceivers to getReceivers
...
Cleanup
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
f0faa44804
Remove Current
from method names
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
7724b5b3ea
Rename getBtcFeeReceiverAddress to getAddress
...
Cleanup
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
92b38ed20f
Move BurningManUtil.getLegacyBurningManAddress to BurningManService.
...
Remove BurningManUtil
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
508081ad16
Rearrange methods
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
ec25722d08
Split up calculateShare into 4 distinct methods
...
Reduce visibility to package scope
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
3fda949526
Add sorting for output index needed for genesis tx outputs.
...
Use static factory methods for the 2 diff. use cases of CompensationModel.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:10 -05:00
HenrikJannsen
22f7b089f4
Remove reference to delayedPayoutTxReceiverService and btcFeeReceiverService inside BurningManService.
...
Use DelayedPayoutTxReceiverService and BtcFeeReceiverService in client code instead of BurningManService.
Make BurningManService package private.
2022-12-11 11:15:09 -05:00
HenrikJannsen
40a03ebdc5
Move getAverageDistributionPerCycle to BurningManService and use from BurningManInfoService.
...
Remove reference to BurningManInfoService inside BurningManService.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:09 -05:00
HenrikJannsen
559ba6e9b9
Refactor BurningManService
...
Split up into 4 service classes
- BurningManService: Common stuff
- BurningManInfoService: For displaying BurningMan data
- BtcFeeReceiverService: For getting btcFeeReceivers
- DelayedPayoutTxReceiverService: For getting delayedPayoutTxReceivers. This is the critical part where we need to have a deterministic data and which could break trade consensus.
WIP refactoring. More to come...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:09 -05:00
HenrikJannsen
19067acbcd
Cleanup
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:09 -05:00
HenrikJannsen
7407ab87f9
Subtract accumulatedDecayedBurnAmount from allowedBurnAmount
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:09 -05:00
HenrikJannsen
58cabfaaf6
Add expectedRevenue to BurningManCandidate.
...
Add getAverageDistributionPerCycle method to BurningManService.
Show receiver address when BM is selected.
Refactor code, cleanups, UI improvements.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:09 -05:00
HenrikJannsen
731363d128
Sort getBtcFeeReceiverAddress by amount and address.
...
Increase minOutputAmount to 1000 sat.
Cleanups
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
02a163f2f1
Fix handling of null entries in getBtcFeeReceiverAddress method
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
e16a9b00b1
Add verifyDelayedPayoutTxReceivers method in RefundManager.
...
Add burningManSelectionHeight and tradeTxFee in Dispute.
Call validateDonationAddressMatchesAnyPastParamValues and validateDonationAddress
only if legacy BM was used.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
060b9c476e
Validate delayedPayoutTx outputs size and amount only if BurningManService.isActivated is false.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
7b280c4a99
Use Burningmen receivers for delayed payout tx.
...
Add verification by re-creating receivers and check txId of both DPTs.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
eee0b691d0
Remove FeeReceiverSelector and test as not used anymore
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:08 -05:00
HenrikJannsen
e2ce053a01
Add burningManSelectionHeight fields to OfferAvailabilityRequest, InputsForDepositTxRequest and ProcessModel.
...
Use BurningManService.getBtcFeeReceiverAddress at createFeeTx tasks.
Verify takers burningManSelectionHeight if BurningManService.isActivated at MakerProcessesInputsForDepositTxRequest and OpenOfferManager.
Stores burningManSelectionHeight in ProcessModel.
Add BurningManService fields to OfferAvailabilityModel, PlaceOfferModel, OpenOfferManager and Provider
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-11 11:15:07 -05:00