Understanding Decisions
A Decision is a versioned artifact encapsulating deterministic business logic behind a typed input/output contract. It fits reusable policies that deserve their own lifecycle, tests, and traceability.
When to use a Decision
Use a Decision when logic must be shared across several processes, evolve independently from orchestration, or remain explainable as business rules. For a local transformation or simple condition, a binding, expression, or process router is usually more direct.
A Decision calculates a result from input values. It does not implicitly read platform resources and triggers no external effect. The process then uses that result to route or perform an action.
For example, a credit policy may receive the requested amount, current exposure, and a risk score, then return approved, review, or rejected. The Decision carries the policy; the process determines what happens next for each outcome.

Typed contract, deterministic logic
Ormuz inputs and outputs are the public boundary of a Decision. Internal logic may use primitives offered by Decision Studio, but the Decision is consumed as a deterministic business function: the same input values and same revision produce the same result.
The Decision calculates; the process orchestrates what to do with the result.
A choice output may define available routes when a Decision is used in a process. The output contract then becomes the source of truth for branches exposed by the evaluation node.
Revisions and publication
Working changes produce immutable snapshots. Executions and processes reference a precise revision so a later logic change does not retroactively modify behavior already published.
Historical versions remain readable and Releases identify promoted snapshots. This separation lets a policy evolve while preserving the exact identity of what executed.
See Versions, Releases, and deployment for the shared lifecycle and Working-snapshot retention.
Use a Decision in a process
The Evaluate decision node references a Decision definition and revision. Its parameters derive from the input contract; outputs and routes derive from the output contract. The process therefore remains typed end to end without manually copying the Decision structure.
For construction, tests, and execution traces, see Build, test, and observe a Decision.