diff --git a/backend/src/repositories/BlocksRepository.ts b/backend/src/repositories/BlocksRepository.ts index ac12b3430..9cd31bbab 100644 --- a/backend/src/repositories/BlocksRepository.ts +++ b/backend/src/repositories/BlocksRepository.ts @@ -11,6 +11,7 @@ import bitcoinClient from '../api/bitcoin/bitcoin-client'; import config from '../config'; import chainTips from '../api/chain-tips'; import blocks from '../api/blocks'; +import BlocksAuditsRepository from './BlocksAuditsRepository'; const BLOCK_DB_FIELDS = ` blocks.hash AS id, @@ -910,6 +911,15 @@ class BlocksRepository { // latest state from core extras.orphans = chainTips.getOrphanedBlocksAtHeight(dbBlk.height); + // Match rate is not part of the blocks table, but it is part of APIs so we must include it + extras.matchRate = null; + if (config.MEMPOOL.AUDIT) { + const auditScore = await BlocksAuditsRepository.$getBlockAuditScore(dbBlk.id); + if (auditScore != null) { + extras.matchRate = auditScore.matchRate; + } + } + // If we're missing block summary related field, check if we can populate them on the fly now if (Common.blocksSummariesIndexingEnabled() && (extras.medianFeeAmt === null || extras.feePercentiles === null))