Skip to content

Commit 75978c7

Browse files
committed
Merge branch 'type1-ftso-fix-no-finalizations' into 'main'
no finalizations ftso fix, fdc min conditions See merge request flarenetwork/ftso/ftso-scaling!157
2 parents 4012327 + 976be69 commit 75978c7

File tree

2 files changed

+26
-16
lines changed

2 files changed

+26
-16
lines changed

libs/fsp-rewards/src/DataManagerForRewarding.ts

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -448,18 +448,30 @@ export class DataManagerForRewarding extends DataManager {
448448
FTSO2_PROTOCOL_ID
449449
);
450450
const firstSuccessfulFinalization = finalizations.find(finalization => finalization.successfulOnChain);
451-
RelayMessage.augment(firstSuccessfulFinalization.messages);
452-
const consensusMessageHashFTSO = firstSuccessfulFinalization.messages.protocolMessageHash;
453-
454-
const signatures = DataManagerForRewarding.extractSignatures(
455-
votingRoundId,
456-
rewardEpoch,
457-
votingRoundSignatures,
458-
FTSO2_PROTOCOL_ID,
459-
consensusMessageHashFTSO,
460-
this.logger
461-
);
462-
451+
let signatures: Map<MessageHash, GenericSubmissionData<ISignaturePayload>[]> = new Map<
452+
MessageHash,
453+
GenericSubmissionData<ISignaturePayload>[]
454+
>();
455+
if (!firstSuccessfulFinalization) {
456+
this.logger.warn(`No successful finalization found for voting round ${votingRoundId}`);
457+
}
458+
if (firstSuccessfulFinalization) {
459+
RelayMessage.augment(firstSuccessfulFinalization.messages);
460+
if (!firstSuccessfulFinalization.messages.protocolMessageHash) {
461+
throw new Error(
462+
`Protocol message merkle root is missing for FTSO finalization ${firstSuccessfulFinalization.messages.protocolMessageHash}`
463+
);
464+
}
465+
const consensusMessageHashFTSO = firstSuccessfulFinalization.messages.protocolMessageHash;
466+
signatures = DataManagerForRewarding.extractSignatures(
467+
votingRoundId,
468+
rewardEpoch,
469+
votingRoundSignatures,
470+
FTSO2_PROTOCOL_ID,
471+
consensusMessageHashFTSO,
472+
this.logger
473+
);
474+
}
463475
let fdcData: FDCDataForVotingRound | undefined;
464476
let fdcRewardData: FDCRewardData | undefined;
465477
let consensusBitVoteIndices: number[] = [];

libs/fsp-rewards/src/reward-calculation/minimal-conditions/minimal-conditions.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ import {
3636
StakingConditionSummary,
3737
ValidatorInfo,
3838
} from "./minimal-conditions-interfaces";
39-
// remove this and appearances of this when min conditions for FDC start to get used.
40-
const FDC_MIN_CONDITIONS_IGNORE = true;
4139

4240
function networkId() {
4341
if (process.env.NETWORK === "flare") {
@@ -384,7 +382,7 @@ export function calculateMinimalConditions(rewardEpochId: number): DataProviderC
384382
fastUpdates.conditionMet &&
385383
staking.conditionMet &&
386384
!staking.obstructsPass &&
387-
(fdc.conditionMet || FDC_MIN_CONDITIONS_IGNORE)
385+
fdc.conditionMet
388386
) {
389387
passEarned = true;
390388
}
@@ -398,7 +396,7 @@ export function calculateMinimalConditions(rewardEpochId: number): DataProviderC
398396
if (!staking.conditionMet) {
399397
strikes++;
400398
}
401-
if (!fdc.conditionMet && !FDC_MIN_CONDITIONS_IGNORE) {
399+
if (!fdc.conditionMet) {
402400
strikes++;
403401
}
404402

0 commit comments

Comments
 (0)