# description
A prompt composition assembling typed prompt fragments into a complete, deterministic prompt sequence with defined turn structure. Supports both the legacy flat `references` model and the XAIP `turns` sequence model.

# properties.turns.description
XAIP turn sequence. Each entry maps a role to either an atom reference or an inline template. At least one system turn is required. User turns SHOULD follow all system turns. Tool turns MUST reference a tool-use-template atom.

# properties.output_schema_ref.description
Reference to an output-schema atom that constrains the final response structure. Recommended for structured output compositions.

# properties.references.description
Legacy flat reference model (pre-XAIP). New compositions SHOULD use `turns` instead.

# $defs.turn.description
A single turn in a prompt sequence. Exactly one of `atom_ref` or `template` must be present.

# $defs.turn.properties.role.description
Turn type: system (initial instructions), user (task/instruction), tool (tool definitions), assistant-seed (few-shot response prefix).

# $defs.turn.properties.atom_ref.description
Reference to a prompt-atoms atom that supplies this turn's content.

# $defs.turn.properties.template.description
Inline template string. Use {variable_name} placeholders for runtime substitution.