Recipe Layers

Current layer-contract recipes use numeric YAML keys that map directly to layer IDs.

Canonical Keys

Layer ID

YAML key

Required in minimal path

l0

0_meta

optional; defaults apply

l1

1_data

yes

l2

2_preprocessing

yes

l3

3_feature_engineering

yes

l4

4_forecasting_model

yes

l5

5_evaluation

yes

l6

6_statistical_tests

no; default off

l7

7_interpretation

no; default off

l8

8_output

yes

l1_5

1_5_data_summary

no; default off

l2_5

2_5_pre_post_preprocessing

no; default off

l3_5

3_5_feature_diagnostics

no; default off

l4_5

4_5_generator_diagnostics

no; default off

Shape Rules

  • List layers use fixed_axes plus optional leaf_config.

  • Graph layers use nodes and sinks.

  • Diagnostics require enabled: true to produce a diagnostic sink.

  • L8 derives default saved objects from active upstream layers unless saved_objects is explicit.

Minimal Skeleton

1_data:
  fixed_axes: {}

2_preprocessing:
  fixed_axes: {}

3_feature_engineering:
  nodes: []
  sinks: {}

4_forecasting_model:
  nodes: []
  sinks: {}

5_evaluation:
  fixed_axes: {}

8_output:
  fixed_axes: {}

The skeleton above shows structure only. A runnable recipe must provide valid L3 and L4 DAG nodes and required sinks.