Skip to main content

Finalizing a Thing

A default plugin capability. It exists because the default plugin declares a finalizable status; a custom plugin may or may not offer something similar.

Two words that are easy to confuse — completed and finalized — mean genuinely different things, and getting the distinction is the whole point of this page.

Completed vs. finalized

Completed is a workspace status. A workspace reaches it by running through the pipeline — the last workflow's resulting status is completed. It's produced by workflow execution only; there's no "mark as done" button. And crucially, a single Thing can have several completed workspaces at once — for example, if you ran the full pipeline through two different approaches, both can be sitting in completed.

Finalized is an operator decision layered on top. Out of however many completed workspaces a Thing has, you designate one as the canonical, finished version of the Thing. Finalizing doesn't change any workspace's status — the others remain completed — it just marks which one is the deliverable.

So: completion is something workflows produce (and can happen many times); finalization is a choice you make (one at a time).

Finalizing and frozen mode

When a workspace is in completed, a Finalize button appears. Finalizing it records that workspace as the Thing's final one, points the active workspace at it, and puts the whole Thing into frozen (read-only) mode. Frozen means locked: you can't edit details, switch workspaces, launch workflows, submit input, or delete the Thing. A banner makes the state obvious, and the only action left is Unfinalize.

Unfinalizing

You can unfinalize at any time — no confirmation needed. That clears the final designation, exits frozen mode, and restores normal operation, leaving the active workspace on the one you'd finalized. Finalization is a reversible statement of "this is the version," not a destructive commit.