Skip to content

Diff Two Runs

Compare two workflow runs: inputs, options, WDL source, and per-task changes.

  • Full Comparison

    Inputs, options, source, and task-level differences

  • Cache-aware

    Recovers real metrics of call-cached tasks from their source runs

  • JSON Output

    Machine-readable diff for scripting

Quick Start

pumbaa workflow diff <workflow-id-a> <workflow-id-b>

Alias: pumbaa wf compare

Flags

Flag Description
--json Output the diff as JSON
--no-cache-resolve Do not fetch cache sources to recover real metrics of cache-hit tasks

Output

The diff is organized in four sections:

Section What it shows
Inputs Added (+), removed (-), and changed (~) input keys
Options Same, for workflow options
Source Whether the submitted WDL source changed (with line counts)
Tasks Tasks only in one run, plus status, docker image, shard count, attempts, and duration changes

Duration changes come with a verdict (e.g. 2.3× slower), making regressions easy to spot.

Call caching

When a task was a call-cache hit, its wall-clock time says nothing about real performance. By default, Pumbaa follows the cache back to the source run and compares the original metrics. Use --no-cache-resolve to skip this (faster, fewer API calls).

Examples

pumbaa workflow diff abc-123 def-456
pumbaa workflow diff abc-123 def-456 --json | jq '.Tasks'

From the dashboard

The same comparison is available interactively: press C on two workflows in the Dashboard.

Use Cases

  • Performance Regressions

    Why did this run take twice as long?

  • Failure Triage

    What changed between the run that worked and the one that failed?

  • Image Updates

    Confirm which tasks picked up a new docker image

See Also