itasc.core.commit

The final-output commit contract.

The numbered stage dirs (2_nucleus/, 3_cell/) hold re-runnable working label files; promote_labels() copies one up to a stable committed name in the position base folder (nucleus_labels.tif / cell_labels.tif), the downstream-stable output that discovery defaults to. commit_state() reports where a position sits in that working-vs-committed split — the signal the workflow widgets surface and the catalog status rail reads.

Functions

commit_state(working, committed)

Return the working-vs-committed state for one stage output.

promote_labels(src, dst)

Promote a working label file src to the committed output dst.

itasc.core.commit.promote_labels(src, dst)[source]

Promote a working label file src to the committed output dst.

Copies bytes verbatim (the working file is already a dtype-correct label image), creating dst’s parent and overwriting any existing dst. Raises FileNotFoundError if src is missing and ValueError if it is not an integer-typed label image.

Return type:

Path

Parameters:
itasc.core.commit.commit_state(working, committed)[source]

Return the working-vs-committed state for one stage output.

  • "missing" — no working file yet.

  • "uncommitted" — working file exists but has not been committed.

  • "committed" — committed copy is at least as new as the working file.

  • "stale" — the working file was re-run after the last commit (strictly newer), so the committed copy no longer reflects it.

Return type:

str

Parameters: