← Your first PRlesson 3 of 9
The project already holds more than 1,500 tested models. Before you write anything, the first job is not to build — it is to find what is already there. Your staging model will read from a raw model: a generated, 1:1 cleaned view of a source table. You never write raw models by hand — the source pipeline generates them — so your job is to find the raw model for your table and build staging on top of it with ref().
How a Snowflake table becomes usable in dbt
The schema is mapped, but only tables a person lists are allowed in.
The table lands
DATA_LAKE__NCL.ANALYST_MANAGED.OPENING_HOURSSnowflake contains the new table and its columns.
upstream dataThe mapping says manual: true
scripts/sources/source_mappings.ymlThat flag stops automatic discovery from admitting every table.
inspect; usually do not editYou add the table to YAML
models/sources/manual_analyst_managed.ymlThe curated list is the approval step for this schema.
edit this fileThe pipeline writes SQL
models/raw/shared/raw_reference_opening_hours.sqlThe approved table gets its generated 1:1 raw model.
generated: do not editThe diagram shows where a raw model comes from. The detail that matters for your first PR is the last box: the raw layer is always generated, never edited by hand. How a table earns a raw model in the first place — the source registry, manual versus automatic schemas, the generation pipeline — is a larger, project-specific topic the handbook covers in full.
step 1 of 3