Task Summary
Two of the three RecoveryPayload subtypes, UpdateRecoveryStatus and ResendOutputTo, have no sender and no handler. NotifyFailedNode — the only one still in use, sent from AmberClient on cluster-node failure — stays, as does the sealed trait.
Provenance. Both arrived with #1677 (2022-11-07, "Amber Fault Tolerance: Global Recovery and Detection") and were genuinely used: the coordinator matched on them with case UpdateRecoveryStatus(isRecovering) and case ResendOutputTo(vid, ref). #2208 (2023-11-15, "Refactoring of amber engine") removed those handler arms along with the old recovery path; from that commit on, the only file mentioning either name is RecoveryPayload.scala itself. Dead for about three years.
They picked up unit tests in #4829 (2026-05-03) during the coverage work, which is why they look live.
Removing them also frees the ActorRef and ActorVirtualIdentity imports, which only ResendOutputTo used.
Pure deletion, no behaviour change: −39 lines.
Task Type
Task Summary
Two of the three
RecoveryPayloadsubtypes,UpdateRecoveryStatusandResendOutputTo, have no sender and no handler.NotifyFailedNode— the only one still in use, sent fromAmberClienton cluster-node failure — stays, as does the sealed trait.Provenance. Both arrived with #1677 (2022-11-07, "Amber Fault Tolerance: Global Recovery and Detection") and were genuinely used: the coordinator matched on them with
case UpdateRecoveryStatus(isRecovering)andcase ResendOutputTo(vid, ref). #2208 (2023-11-15, "Refactoring of amber engine") removed those handler arms along with the old recovery path; from that commit on, the only file mentioning either name isRecoveryPayload.scalaitself. Dead for about three years.They picked up unit tests in #4829 (2026-05-03) during the coverage work, which is why they look live.
Removing them also frees the
ActorRefandActorVirtualIdentityimports, which onlyResendOutputToused.Pure deletion, no behaviour change: −39 lines.
Task Type