From aee64d9be821483bcbe31c6a95c3ff119f022175 Mon Sep 17 00:00:00 2001 From: hailin Date: Sat, 17 Jan 2026 00:10:28 -0800 Subject: [PATCH] fix(mining): add null safety to MiningConfigUpdated event payload Prevent TypeError when config properties are undefined by using optional chaining and default values in publishMiningConfigUpdated. Co-Authored-By: Claude Opus 4.5 --- .../services/mining-distribution.service.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/backend/services/mining-service/src/application/services/mining-distribution.service.ts b/backend/services/mining-service/src/application/services/mining-distribution.service.ts index 09baaeca..b56eff95 100644 --- a/backend/services/mining-service/src/application/services/mining-distribution.service.ts +++ b/backend/services/mining-service/src/application/services/mining-distribution.service.ts @@ -721,14 +721,14 @@ export class MiningDistributionService { aggregateId: config.id, eventType: 'MiningConfigUpdated', payload: { - totalShares: config.totalShares.toString(), - distributionPool: config.distributionPool.toString(), - remainingDistribution: newRemaining.toString(), - halvingPeriodYears: config.halvingPeriodYears, - currentEra: config.currentEra, - secondDistribution: config.secondDistribution.toString(), - isActive: config.isActive, - activatedAt: config.activatedAt?.toISOString(), + totalShares: config.totalShares?.toString() || '0', + distributionPool: config.distributionPool?.toString() || '0', + remainingDistribution: newRemaining?.toString() || '0', + halvingPeriodYears: config.halvingPeriodYears || 2, + currentEra: config.currentEra || 1, + secondDistribution: config.secondDistribution?.toString() || '0', + isActive: config.isActive || false, + activatedAt: config.activatedAt?.toISOString() || null, }, }); this.logger.debug('Published MiningConfigUpdated event');