Skip to content

Execute supported custom generic tests - #218

Merged
sabino merged 2 commits into
mainfrom
agent/issue-212-compat-execute-simple-custom-generic-tests-throu
Jun 21, 2026
Merged

Execute supported custom generic tests#218
sabino merged 2 commits into
mainfrom
agent/issue-212-compat-execute-simple-custom-generic-tests-throu

Conversation

@sabino

@sabino sabino commented Jun 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • Enables the already-supported static custom generic-test subset to execute through DuckDB for dxt test and dxt build.
  • Emits Run Results v6-shaped pass/fail/warn rows and deterministic error rows for supported custom generic-test DuckDB execution failures.
  • Updates compatibility docs, changelog, and PLAN status for the new runtime boundary.

Linked Issue

Closes #212

Scope

  • In scope: root-project and installed-package model/source/seed column custom generic tests whose macros are static {% test %} / {% data_test %} blocks using {{ model }} and {{ column_name }}.
  • In scope: existing generic-test where, limit, severity thresholds, store_failures, failure-count wrapping, and Run Results shape for the supported custom subset.
  • Out of scope: table-level or non-column custom generic tests, broader Jinja, adapter dispatch, store_failures_as, fail_calc, SQL headers, custom materializations, bundled dbt internals, and Python product runtime behavior.

Source Grounding

  • dbt Core v1: focused pytest includes a local dbt Core/dbt-duckdb oracle comparison for the simple custom-test fixture when those dependencies are importable.
  • Fusion / v2: not used in this runtime slice.
  • Not applicable because: the slice is bounded to the existing dbt Core-compatible static generic-test subset already compiled by dxt.

dxt Ownership

  • Zig modules: src/project.zig, src/project/compiler.zig, src/project/duckdb.zig, src/project/run_results.zig, src/root.zig.
  • Artifacts: Manifest test metadata namespace consistency for source custom tests, compiled custom test SQL, Run Results v6 rows.
  • Commands: dxt test, dxt build.

Validation

  • zig build
  • zig build test with explicit isolated Zig caches: 305/305 tests passed.
  • Focused pytest: python -m pytest -q tests/test_cli.py -k custom_generic passed, 9 passed / 208 deselected, including the local dbt oracle path where available.
  • Public Jaffle gate
  • python scripts/check_runtime_boundary.py passed.
  • python scripts/check_public_safety.py passed.
  • zig fmt --check src/project.zig src/project/compiler.zig src/project/duckdb.zig src/project/run_results.zig src/root.zig passed.
  • git diff --check passed.
  • Not applicable because:

Note: exact default-cache zig build test --summary all currently fails immediately in this worktree with PermissionDenied. The same command semantics pass with explicit local/global cache directories, so this is recorded as local Zig cache state rather than a code failure.

Agent Evidence

Risks

  • Runtime boundary: execution, classification, and Run Results emission remain in Zig; Python changes are test/oracle coverage only.
  • Public safety: public-safety scan passed.
  • Artifact parity: custom error rows are deterministic and Run Results v6-shaped, but broader dbt custom-test runtime semantics remain out of scope.
  • Branch overlap: issue [compat] Parse and list snapshot resources as read-only manifest nodes #213 later ran a separate parser/snapshot worker; this branch does not touch snapshot parser/selector code.
  • Follow-up: broaden custom generic-test semantics only through separate slices with explicit dbt source grounding.

@sabino
sabino merged commit 01a6058 into main Jun 21, 2026
6 checks passed
@sabino
sabino deleted the agent/issue-212-compat-execute-simple-custom-generic-tests-throu branch June 21, 2026 20:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[compat] Execute simple custom generic tests through DuckDB

1 participant