Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Tasks and desired state

A task states what should become true. It does not prescribe a mutation or a sequence of steps.

task "deliver-cargo-42" {
    desired {
        @"cargo-42".properties.located_at =
            @"workshop".properties.located_at
    }
}

A task identity is a quoted string. Its desired section contains expressions. Prefix an expression with drop to remove that desired predicate, or use drop task "identity" to remove the whole task.

The parser preserves desired expressions and their source spans. Task declarations currently emit no create or desired-state changes. Top-level task removal does emit a delete change.

OSL does not yet type-check desired expressions, evaluate them, select mutations, or produce plans. The task above describes a target state only. Planning is a later stage built on the durable model foundation.