Skip to content

(optional) Ship interchangeable engine backends #3660

Description

@oesteban

Note

VERY optional / stretch. A nice-to-have if everything else lands with time to spare — not a committed deliverable, and nothing depends on it.

Objective

Ship the engine reconstructions (Nextflow primary; Snakemake, Dask) with fMRIPrep as interchangeable, selectable execution backends in production, with fMRIPrep's usage telemetry enabled so engine/runtime data is collected.

Rationale

The transplants are only useful if users can actually run them: exposing the verified engine backends as a first-class runtime choice turns the reconstructions from artifacts into a shipped capability. Enabling telemetry (opt-out, non-identifying) leaves the door open to a later engine comparison without committing to that analysis here.

Methodological approach

  1. Expose the engine backends as a selectable execution option so a run can target Nextflow (default), Snakemake, or Dask, each producing verified-equivalent outputs.
  2. Enable fMRIPrep's existing opt-out usage telemetry (migas; --notrack) to record engine/runtime aggregates (engine, wall-time, resource use, success/failure, environment class).

Note

Telemetry is opt-out and collects only non-identifying aggregates — no imaging data, no dataset identifiers — consistent with NiPreps norms.

Outcomes/impact

  1. Engine backends runnable interchangeably in production fMRIPrep, with telemetry enabled.

Direct upstream issues

(issues this one depends on / builds upon)

Direct downstream issues

(issues that depend on this one)

None.

Metadata

Metadata

Assignees

No one assigned

    Labels

    NiPreps-nextNiPreps-next (OS4LS Track 1) work item

    Type

    No type

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions