long pending transaction durations causing phase calculation mismatches
Because the contracts are time sensitive, on occasion, we've seen transactions miss the phase window with errors from the contract like not in commit phase or not in reveal phase .
An undesired side effect of this is this could cause unexpected freezing/slashing of stakes.
Ideally, phase function calls should be not time based and but round-agnostic.
The cause that I've seen for "wrong phase" failed transactions is delayed transactions due to too-low gas limits. I've got a -dirty hack that applies the boost to both the base fee and the tip which results in a a higher total limit. I did it this way because the tip is guaranteed to be spent, but the increased base fee just serves to increase the total limit which helps to ensure that a rise in gas prices doesn't end up preventing the transaction from executing.
Increasing the base fee and therefore the limit rather than the tip has been keeping my node in the game while I observed other competitors with "stuck" transactions when goerli's gas price shoots up quickly.
IMHO, it'd be quite the trick to make the phase calls "round agnostic" because if they delay into a subsequent round, they'll end up competing in the wrong neighborhood resulting in nodes not matching the revealed truth and getting frozen or slashed anyway.