mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-06-01 19:56:45 +00:00

* Remove unused functions, constants, and variables. * Rename maxSubsidy to baseSubsidy. * Remove unused parameters from CalcBlockSubsidy. * Remove link to old monetary policy. * If a block's DAA score is smaller than half a year, it should have a base subsidy. * Fix merge errors. * Fix more merge errors. * Add DeflationaryPhaseBaseSubsidy to the params. * Implement TestCalcDeflationaryPeriodBlockSubsidy. * Implement calcDeflationaryPeriodBlockSubsidy naively. * Implement calcDeflationaryPeriodBlockSubsidy not naively. * Adjust the subsidy based on target block rate. * Fix deflationaryPhaseDaaScore in TestCalcDeflationaryPeriodBlockSubsidy. * Explain how secondsPerMonth is calculated. * Don't adjust the subsidy based on the target block rate. * Update defaultDeflationaryPhaseDaaScore and add an explanation. * Use a pre-calculated table for subsidy per month * Make the generation function fail if base subsidy is changed * go fmt * Use test logger for printing + simplify print loop Co-authored-by: msutton <mikisiton2@gmail.com> Co-authored-by: Ori Newman <orinewman1@gmail.com>
13 lines
651 B
Go
13 lines
651 B
Go
package model
|
|
|
|
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
|
|
// CoinbaseManager exposes methods for handling blocks'
|
|
// coinbase transactions
|
|
type CoinbaseManager interface {
|
|
ExpectedCoinbaseTransaction(stagingArea *StagingArea, blockHash *externalapi.DomainHash,
|
|
coinbaseData *externalapi.DomainCoinbaseData) (*externalapi.DomainTransaction, error)
|
|
CalcBlockSubsidy(stagingArea *StagingArea, blockHash *externalapi.DomainHash) (uint64, error)
|
|
ExtractCoinbaseDataBlueScoreAndSubsidy(coinbaseTx *externalapi.DomainTransaction) (blueScore uint64, coinbaseData *externalapi.DomainCoinbaseData, subsidy uint64, err error)
|
|
}
|