Hey
@Sivanandha Rajadurai
Two things come to mind here that would be useful
deployment concurrency and automations.
Specifically setting a deployment concurrency limit on relevant deployments allows you to define an a collision strategy i.e. what should happen when a run bumps up against a previous run for the same deployment that is still executing, you can enqueue the job so it executes as soon as a concurrency slot is available or you can cancel it, effectively skipping that run so you don't end up with a build up of jobs if the flow is consistently running longer than the schedule window between each run.
For the failure part you could setup an
automation that pauses the deployment/schedule if a run fails which would prevent future runs from occurring and subsequently send a notification to have someone investigate the failure, you may already be doing this part, until it was re-enabled either manually or through some other action