We want to get rid of pre-computed condition on Instance.state.condition also UnreachableInactive should be handled on a different level than an Instance state condition.
The proposal is to change the handling to the following:
- When instance becomes unreachable schedule a tick for the unreachable inactive period
- when receiving this tick do:
- explicit reconciliation do we need this
- ask instance tracked for the current state of this instance
- if still inactive, emit InstanceIsUnreachableInactive event
- ScaleAppUpdateStepImpl will for UnreachableInactive listen to this event, not for InstanceChange
- on a Marathon fail-over we should schedule these ticks for all unreachable instances
ScaleAppUpdateStepImpl won't be using InstanceChange event for triggering UnreachableInactive scale checks.