What goes into the art

nf-arts draws from a few numbers per task. Nothing about your data, samples, inputs or outputs reaches the image. The caption is the one place with text, and you can turn it off.

Per task

Field Read from Used for
Process name the process, without the task tag Grouping tasks and picking colors, in order of first start. Never written into the image.
Start time start, else submit Position in time, relative to the first task of the run.
Duration realtime, else duration Length of the shape.
Peak memory peak_rss Width or size of the shape, on a log scale.
Status status, or cached Opacity; failed tasks are thinner, smaller, hollow or leafless.

Everything else is ignored, in live runs, history renders and trace files alike: task names and tags (where sample IDs usually are), inputs, outputs, work directories, scripts, exit codes, CPU usage, I/O, hashes, containers and parameters.

What someone can read from an image

  • How many tasks ran (one shape per task) and how many processes (one ring, row, branch or color each).
  • The order processes started in, relative timing, durations and peak memory, roughly. The SVG keeps coordinates to 0.01 px, so these are more precise in an SVG than in a PNG.
  • Which tasks failed or were cached.

Not process names, absolute dates or anything about the data.

The caption

The caption shows the pipeline name, its version, the run name and the nf-arts version:

Source Pipeline Version Run name
Live run manifest.name, else the project name manifest.version, else the revision run name
render from the history what followed nextflow run -r run name
render --trace repository in the execution report, else its command line revision in the report run name in the report

From the history, “what followed nextflow run” can be a local path, such as /home/me/secret-project/main.nf. Before sharing an image, check its caption, or drop it:

arts {
    title = false
}

or --title false with render. --pipeline, --revision and --run-name set the caption by hand.

Randomness

The session ID seeds the random choices, such as jitter and orientation, so a run always gives the same image. Without a session, for a trace file with no execution report, a hash of the task values above is the seed. Neither is written into the image.

The files

  • SVG: shapes and the caption text, nothing else.
  • PNG: pixels only, with no metadata chunks.