op: decision
Invoke a compiled AI decision (external LLM call).
Allowed phases
| Phase | Status |
|---|---|
preflight | ✗ forbidden |
core | ✗ forbidden |
side_effects | ✓ allowed |
Syntax
- op: decision
ref: triage_ticket
input:
ticket_id: intent.ticket_id
customer_id: intent.customer_id
subject: intent.subject
body: intent.bodyParameters
| Field | Required | Description |
|---|---|---|
ref | yes | Decision name under decisions: in Product DSL |
input | no | Map of decision input field → expression |
Behavior
- Side effects only. External LLM I/O is not replayed from the ledger.
- Runtime validates input, retrieves vector memories, renders the prompt, calls the provider, validates JSON output, and emits the event declared on the decision (
emits:). - Traced in the Decision Log. See Defining Decisions.
Related operations
See also
- Operations index — all ops by phase
- actions — rule structure and phases
- Intents: Rules — narrative examples