4处改动确保部署清库重新同步后100%可靠: 1. contribution.scheduler.ts - CDC就绪门控 注入CDCConsumerService,processUnprocessedAdoptions/publishRecentlyUpdatedAccounts/ processContributionBackfill三个调度方法开头加isCdcReady()检查, 确保用户+推荐+认种三阶段CDC同步全部完成后才开始处理。 2. contribution-calculation.service.ts - 推荐数据防护 calculateForAdoption()中,userReferral为null时warn并return, 不标记distributed,调度器下次重试。覆盖continuous mode下 认种事件先于推荐事件到达的竞态场景。 3. bonus-claim.service.ts - bonus补发stale-read修复 processBackfillForAccount()中,level事务的updateAccountUnlockStatus 通过incrementDirectReferralAdoptedCount()同时修改unlockedLevelDepth 和unlockedBonusTiers,导致bonus分支条件永远为false。 修复:保存originalDirectReferralAdoptedCount和originalUnlockedBonusTiers, bonus分支使用原始值判断和传参。 4. config.controller.ts - mining-admin同步检查增强 isSynced新增allAdoptionsProcessed条件(unprocessedAdoptions===0), 确保所有认种分配+补发完成后才允许激活挖矿。 修复data变量作用域问题(原在if块内声明,外部引用会报错)。 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .claude | ||
| api-gateway | ||
| infrastructure | ||
| mpc-system | ||
| scripts | ||
| services | ||
| .env.windows | ||
| docker-compose.windows.yml | ||