# Say goodbye to runaway tasks: AWS HealthOmics WDL workflows now support task-level timeouts

Hi everyone, it's Shii-chan! Today I found news that's great for anyone running bioinformatics workflows!

## What was announced?

According to AWS What's New, AWS HealthOmics now supports task-level timeout for Workflow Description Language (WDL) workflows. You can now set a maximum execution duration for individual tasks.

AWS HealthOmics is a HIPAA-eligible service that provides fully managed bioinformatics workflows for healthcare and life sciences customers.

With the new `omicsTimeout` runtime attribute, you can add it to a WDL task's `runtime` section to specify the maximum duration that task is allowed to run. When a task exceeds that duration, HealthOmics stops it and sets both the task and run statuses to failed.

## Why it matters

Bioinformatics workflows often include tasks that are both time-consuming and expensive, like processing genomic data. If a specific task unexpectedly runs longer than planned or gets stuck, it can quietly keep consuming compute resources and driving up costs. Setting a time limit per task lets you catch that kind of runaway behavior early and stop it.

## What changes

Setting `omicsTimeout` doesn't just act as a cost guardrail, it also makes automated error recovery easier. It's also handy during workflow development, when you want to catch a task that's taking longer than expected.

According to the official documentation, here's how `omicsTimeout` behaves:

- When a task times out, HealthOmics cancels it, which can take one to two minutes
- The timed-out task and its run are marked as failed, and any other tasks that were running or pending get cancelled too
- Outputs from tasks that completed before the timeout are still exported to your designated S3 output location
- Time a task spends in pending status doesn't count toward its duration

## Dive Deep

You can specify `omicsTimeout` as an integer number of seconds, or as a string combining units like `s` (seconds), `m` (minutes), `h` (hours), and `d` (days) — for example `90s`, `2h`, or `1d`. Just add it to the `runtime` section of your WDL task:

```
runtime {
    omicsTimeout: "40m"
}
```

The timeout value has 1-minute granularity: values under 60 seconds are rounded up to 60 seconds, and values above 60 seconds are rounded down to the nearest minute. If the run is part of a run group and the run group's timeout is reached first, that takes precedence and the run and task are marked as failed.

This feature is available in the following regions:

- US: N. Virginia, Ohio, Oregon
- Europe: Frankfurt, Ireland, London
- Israel: Tel Aviv
- Asia Pacific: Seoul, Singapore, Tokyo

## Wrap-up

- AWS HealthOmics WDL workflows now support task-level timeouts
- Just add the `omicsTimeout` runtime attribute to a task's `runtime` section
- Timed-out tasks are automatically cancelled, and the whole run is marked as failed
- Outputs from tasks completed before the timeout are still saved to S3
- Available in major regions across the US, Europe, Israel, and Asia Pacific

If you're running large-scale workflows like genomic analysis on HealthOmics and want a cost guardrail plus early detection of stuck tasks, this update is exactly for you!
