Skip to content

feat: add dbt Fusion CI probe and FAQ entry - #780

Draft
Pádraic Slattery (pgoslatara) wants to merge 3 commits into
mainfrom
feat/779-dbt-fusion-probe
Draft

feat: add dbt Fusion CI probe and FAQ entry#780
Pádraic Slattery (pgoslatara) wants to merge 3 commits into
mainfrom
feat/779-dbt-fusion-probe

Conversation

@pgoslatara

Copy link
Copy Markdown
Member

Summary

Closes #779.

  • Adds a dbt-fusion job to .github/workflows/dbt_artifact_probes.yml that installs the dbt Fusion CLI via the official install script, runs dbt parse, and validates the generated manifest with dbt-bouncer
  • Adds dbt-bouncer-fusion-probe.yml — a Fusion-specific probe config that works correctly with Fusion's manifest format (macro checks scoped to ^macros/ to exclude auto-generated snapshot macros; source checks scoped to ^models/staging/crm to avoid non-conforming source names)
  • Migrates dbt_project/ for Fusion compatibility via dbt-autofix: + prefixes on model config keys, arguments: key for generic tests, rename exposure Pulse queriespulse_queries
  • Adds build-and-run-dbt-bouncer-fusion Makefile target
  • Freezes dbt 1.9 fixtures (dbt-autofix's arguments: migration is incompatible with dbt-core 1.9, matching the existing pattern for 1.7/1.8)
  • Regenerates dbt 1.10 and 1.11 test fixtures
  • Adds FAQ entry documenting dbt Fusion compatibility

Test plan

  • dbt-fusion CI job passes end-to-end (installs Fusion CLI, runs dbt parse, runs dbt-bouncer with probe config)
  • All existing unit and integration tests pass
  • make build-and-run-dbt-bouncer-fusion works locally with dbt Fusion installed

@github-actions github-actions Bot added enhancement New feature or request documentation Improvements or additions to documentation github_actions Pull requests that update GitHub Actions code labels Apr 1, 2026
@github-actions

github-actions Bot commented Apr 1, 2026

Copy link
Copy Markdown

@pgoslatara

Pádraic Slattery (pgoslatara) commented Apr 1, 2026

Copy link
Copy Markdown
Member Author

🔍 AI PR Review

Adds a daily CI probe job to verify dbt-bouncer compatibility with dbt Fusion, the new Rust-based dbt engine.

Type: feature

Summary

This PR introduces a new dbt-fusion job in the daily artifact probes workflow to continuously verify that dbt-bouncer works correctly with artifacts generated by dbt Fusion. A dedicated probe config (dbt-bouncer-fusion-probe.yml) scopes checks to manifest-only (no catalog or run_results) since dbt parse doesn't produce those artifacts. A FAQ entry documents Fusion compatibility for users.

The four files work together: the workflow job installs dbt Fusion and calls a new makefile target, which runs dbt parse and invokes dbt-bouncer with the fusion-specific config. The FAQ entry provides user-facing documentation.

📄 File Changes (4 files)
File Change Description
.github/workflows/dbt_artifact_probes.yml Modified Adds dbt-fusion job that installs Fusion via its official installer and runs the fusion probe makefile target
dbt-bouncer-fusion-probe.yml New Manifest-only dbt-bouncer config with macro checks scoped to ^macros/ to exclude Fusion auto-generated snapshot macros
docs/faq.md Modified Adds FAQ entry explaining dbt Fusion compatibility
makefile Modified Adds build-and-run-dbt-bouncer-fusion target using bare dbt (Fusion binary) instead of uv run dbt

Review Findings

  • ✅ No issues with Python quality — no Python source changes in this PR.
  • ✅ No issues with check structure — the probe config references only existing, valid check names that match the main example config.
  • ✅ No issues with test coverage — this is a CI probe (integration-level validation), not new check logic; the workflow itself serves as the test.
  • ✅ No issues with security — the curl | sh pattern for installing dbt Fusion uses the official dbt CDN URL with --fail (-f flag) and runs in an ephemeral CI runner with read-only permissions. No secrets are exposed to the fusion job.
  • ✅ No issues with style — checks in the fusion probe config are organized by category (matching the example config convention) and alphabetically within each category. YAML formatting is consistent.
  • ✅ No issues with breaking changes — all changes are additive (new workflow job, new config file, new makefile target, new FAQ entry).
  • ✅ No issues with documentation — the FAQ entry is clear and accurate. The fusion probe config includes helpful inline comments (e.g., explaining the ^macros/ scope for macro checks and ^models/staging/crm scope for source checks).

Generated by Claude Code

Add a dbt-fusion job to the dbt_artifact_probes workflow mirroring the
existing dbt-core job, and add a FAQ entry documenting compatibility.
- Add dbt-fusion job to dbt_artifact_probes.yml: installs Fusion CLI via
  official install script, runs dbt parse + dbt-bouncer with probe config
- Add dbt-bouncer-fusion-probe.yml: manifest-only checks scoped to work
  with Fusion's artifact format (macro checks limited to ^macros/ to
  exclude auto-generated snapshot macros; source checks limited to
  ^models/staging/crm to avoid non-conforming source names)
- Add build-and-run-dbt-bouncer-fusion Makefile target
- Freeze dbt 1.9 fixtures: remove build-artifacts-19 from build-artifacts
- Add FAQ entry documenting dbt Fusion compatibility

Depends on #782 (dbt-autofix migration).
@mattcristal

Copy link
Copy Markdown
Contributor

Eventually, we can also add a dbt-fusion support button like: #826

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Docs: enhance FAQ website section about dbt fusion

2 participants