@@ -4,13 +4,15 @@ import FakeTimers from "@sinonjs/fake-timers";
44import { EntityManager } from "typeorm" ;
55import { DataManagerForRewarding } from "../../../../libs/fsp-rewards/src/DataManagerForRewarding" ;
66import { IndexerClientForRewarding } from "../../../../libs/fsp-rewards/src/IndexerClientForRewarding" ;
7- import { RewardEpochManager } from "../../../../libs/ftso-core/src/RewardEpochManager" ;
7+ import { BURN_ADDRESS , FUTURE_VOTING_ROUNDS } from "../../../../libs/fsp-rewards/src/constants" ;
8+ import { calculateMinimalConditions , extractNewPasses , updateClaimsForMinimalConditions } from "../../../../libs/fsp-rewards/src/reward-calculation/minimal-conditions/minimal-conditions" ;
9+ import { writeDataProviderConditions , writePassesInfo } from "../../../../libs/fsp-rewards/src/reward-calculation/minimal-conditions/minimal-conditions-data" ;
810import { initializeRewardEpochStorage } from "../../../../libs/fsp-rewards/src/reward-calculation/reward-calculation" ;
911import { RewardClaim } from "../../../../libs/fsp-rewards/src/utils/RewardClaim" ;
10- import { RewardEpochDuration } from "../../../../libs/ftso-core/src/utils/RewardEpochDuration" ;
1112import { deserializeAggregatedClaimsForVotingRoundId } from "../../../../libs/fsp-rewards/src/utils/stat-info/aggregated-claims" ;
1213import { serializeFinalRewardClaims } from "../../../../libs/fsp-rewards/src/utils/stat-info/final-reward-claims" ;
1314import { getIncrementalCalculationsTempRewards , serializeIncrementalCalculationsTempRewards } from "../../../../libs/fsp-rewards/src/utils/stat-info/incremental-calculation-temp-rewards" ;
15+ import { getIncrementalCalculationsFeedSelections , serializeIncrementalCalculationsFeedSelections } from "../../../../libs/fsp-rewards/src/utils/stat-info/incremental-calculation-temp-selected-feeds" ;
1416import { recordProgress } from "../../../../libs/fsp-rewards/src/utils/stat-info/progress" ;
1517import {
1618 RewardCalculationStatus ,
@@ -25,8 +27,11 @@ import {
2527 serializeRewardEpochInfo ,
2628} from "../../../../libs/fsp-rewards/src/utils/stat-info/reward-epoch-info" ;
2729import { destroyStorage } from "../../../../libs/fsp-rewards/src/utils/stat-info/storage" ;
30+ import { RewardEpochManager } from "../../../../libs/ftso-core/src/RewardEpochManager" ;
31+ import { RewardEpochDuration } from "../../../../libs/ftso-core/src/utils/RewardEpochDuration" ;
2832import { IncrementalCalculationState } from "../interfaces/IncrementalCalculationState" ;
2933import { OptionalCommandOptions } from "../interfaces/OptionalCommandOptions" ;
34+ import { calculateAttestationTypeAppearances } from "../libs/attestation-type-appearances" ;
3035import {
3136 calculationOfRewardCalculationDataForRange ,
3237 latestRewardEpochStart ,
@@ -43,11 +48,6 @@ import { fullRoundOfferCalculation, initializeTemplateOffers } from "../libs/off
4348import { runRandomNumberFixing } from "../libs/random-number-fixing-utils" ;
4449import { runCalculateRewardClaimsTopJob } from "../libs/reward-claims-calculation" ;
4550import { runCalculateRewardCalculationTopJob } from "../libs/reward-data-calculation" ;
46- import { getIncrementalCalculationsFeedSelections , serializeIncrementalCalculationsFeedSelections } from "../../../../libs/fsp-rewards/src/utils/stat-info/incremental-calculation-temp-selected-feeds" ;
47- import { calculateAttestationTypeAppearances } from "../libs/attestation-type-appearances" ;
48- import { calculateMinimalConditions } from "../../../../libs/fsp-rewards/src/reward-calculation/minimal-conditions/minimal-conditions" ;
49- import { writeDataProviderConditions } from "../../../../libs/fsp-rewards/src/reward-calculation/minimal-conditions/minimal-conditions-data" ;
50- import { BURN_ADDRESS , FUTURE_VOTING_ROUNDS } from "../../../../libs/fsp-rewards/src/constants" ;
5151
5252if ( process . env . FORCE_NOW ) {
5353 const newNow = parseInt ( process . env . FORCE_NOW ) * 1000 ;
@@ -300,9 +300,14 @@ export class CalculatorService {
300300 if ( options . rewardEpochId === undefined ) {
301301 throw new Error ( "Reward epoch id is required for minimal conditions calculation" ) ;
302302 }
303- const result = calculateMinimalConditions ( options . rewardEpochId , false ) ;
303+ const result = calculateMinimalConditions ( options . rewardEpochId ) ;
304304 writeDataProviderConditions ( options . rewardEpochId , result ) ;
305+ const passes = extractNewPasses ( result ) ;
306+ writePassesInfo ( options . rewardEpochId , passes ) ;
307+ // conditional
308+ updateClaimsForMinimalConditions ( options . rewardEpochId , result ) ;
305309 }
310+
306311 /**
307312 * Returns a list of all (merged) reward claims for the given reward epoch.
308313 * Calculation can be quite intensive.
0 commit comments