You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This slice extends the native Zig M1 parser to read SQL-backed model properties from YAML files under configured model paths. It remains a deliberately small artifact-first subset, not a general YAML or Jinja implementation.
6
+
7
+
Implemented surface:
8
+
9
+
- Scalar model descriptions and dbt-shaped `patch_path`.
10
+
- Simple column names and scalar descriptions.
11
+
- Simple model and column test names parsed internally for later dbt-shaped test-node work.
12
+
- Block-form `config.materialized`.
13
+
- Block-form `config.tags` plus top-level inline `tags`.
14
+
-`config.enabled: false` for SQL models.
15
+
- Disabled SQL model representation under manifest `disabled`.
16
+
- Loud failure when an active model `ref`s a disabled model.
17
+
- dbt-compatible warnings, not fatal errors, for YAML model properties that do not match a discovered SQL model.
18
+
19
+
## Compatibility Notes
20
+
21
+
Active nodes exclude disabled models from `nodes`, `parent_map`, `child_map`, and `dxt ls`. Disabled SQL models are retained in `disabled` as a list under their model unique id, matching the dbt artifact shape more closely than silently dropping them.
22
+
23
+
The YAML parser is intentionally subset-based. Unsupported richer property forms should fail or remain outside the advertised supported surface until a real YAML layer is introduced.
24
+
25
+
Parsed generic tests are intentionally not written into model or column objects because dbt manifests represent them as separate `test.*` nodes. Emitting those nodes is a follow-up M1 compatibility slice.
26
+
27
+
## Validation
28
+
29
+
Focused fixtures cover model properties, columns, combined source/model YAML, disabled model representation, disabled ref diagnostics, and unmatched model-property warnings.
Copy file name to clipboardExpand all lines: PLAN.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -513,8 +513,8 @@ Exit criteria:
513
513
## Current Status
514
514
515
515
- M0 is under PR review as the Zig `0.16.0` runtime scaffold.
516
-
- M1 has started on a stacked branch with a native Zig artifact-first parser slice.
517
-
-`dxt parse` now targets the supported Tier 0 subset: project name/model paths, SQL model discovery, literal `ref`, literal `source`, inline `config(materialized=..., tags=...)`, dependency maps, and deterministic partial `manifest.json`.
516
+
- M1 has started on stacked branches with native Zig artifact-first parser slices.
517
+
-`dxt parse` now targets the supported Tier 0 subset: project name/model paths, SQL model discovery, literal `ref`, literal `source`, inline `config(materialized=..., tags=...)`, narrow YAML model properties for scalar descriptions, simple columns, tags, materialization, disabled SQL models, dependency maps, and deterministic partial `manifest.json`. Generic tests are parsed for later graph work but are not yet emitted as dbt-shaped `test.*` nodes.
518
518
-`dxt ls` now lists resources from the same parser graph with stable text/JSON output and basic name, tag, path, resource type, and exact exclude filters.
519
-
- Synthetic fixtures cover one model, model refs, source refs, inline config/tag selection, duplicate model diagnostics, unsupported dynamic ref diagnostics, and unsupported macro-call diagnostics.
520
-
- The next M1 slices should add published schema validation, YAML model properties, disabled resources, docs blocks, macros, stronger selector parity, and Jaffle Shop DuckDB parse exploration.
519
+
- Synthetic fixtures cover one model, model refs, source refs, combined source/model YAML, inline config/tag selection, YAML model properties and columns, disabled models, disabled ref diagnostics, unmatched model-property warnings, duplicate model diagnostics, unsupported dynamic ref diagnostics, and unsupported macro-call diagnostics.
520
+
- The next M1 slices should add published schema validation, docs blocks, macros, stronger selector parity, and Jaffle Shop DuckDB parse exploration.
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ Implemented pre-alpha commands:
35
35
./zig-out/bin/dxt ls --project-dir tests/fixtures/model_ref --output json
36
36
```
37
37
38
-
`parse` and `ls` currently support only the documented M1 parser subset: `dbt_project.yml` name/model paths/target path, SQL model discovery, literal `ref`, literal `source`, basic inline `config`, deterministic partial `manifest.json`, and simple name/tag/path/resource filters. `compile`, `build`, and `docs generate` remain planned placeholders.
38
+
`parse` and `ls` currently support only the documented M1 parser subset: `dbt_project.yml` name/model paths/target path, SQL model discovery, literal `ref`, literal `source`, basic inline `config`, narrow YAML model properties for scalar descriptions, simple columns, tags, materialization and disabled SQL models, deterministic partial `manifest.json`, and simple name/tag/path/resource filters. dbt-shaped generic test nodes,`compile`, `build`, and `docs generate` remain planned placeholders.
0 commit comments