OutputsConfig
Defaults and per-output overrides for the tables and relations your model produces.
Top-level keys set deployment-wide defaults; overrides is an ordered list
of per-output adjustments. Output names follow Snowflake rules: unquoted names
match case-insensitively (cancel_chain matches CANCEL_CHAIN); wrap a
name in double quotes (e.g. '"My.Table"') to match a quoted identifier
exactly.
Examples
Section titled “Examples”outputs: reasoner: sql type: table schedule: standard overrides: - objects: [TRANSACTION] reasoner: logic - objects: [recursive_closure] schedule: fast_path - objects: [SOURCE_DERIVED_TRANSACTIONS, DERIVED_TRANSACTIONS] type: viewAttributes
Section titled “Attributes”.reasoner
Section titled “.reasoner”OutputsConfig.reasoner: (str, optional)Default reasoner — "sql" or "logic". When omitted (default), the
router auto-decides per output. When set, every output not covered by an
override is forced onto this reasoner.
Advanced option. Only force outputs that the target reasoner can actually compute; incompatible forcings might surface as a runtime error at refresh time rather than at config load.
OutputsConfig.type: strDefault materialization type for output tables (Snowflake only): "view",
"table", or "dynamic_table" (default). Ignored on DuckDB.
.schedule
Section titled “.schedule”OutputsConfig.schedule: (str, optional)Default schedule name (under deployment.schedules) that outputs
refresh on. Outputs without a schedule override use this one; if
omitted, those outputs are not scheduled.
.overrides
Section titled “.overrides”OutputsConfig.overrides: list[OutputOverride]Ordered per-output adjustments. Each entry names a group of outputs and
sets one or more of reasoner, type, schedule for them.