Skip to content

Artifacts & Catalog

import { Aside } from ‘@astrojs/starlight/components’;

Every compile and run writes queryable artifacts under target/ — a catalog of your models and a history of your runs, as Parquet. Query them with SQL, summarize them, or generate a browsable HTML catalog. No warehouse connection needed to read them.

  • compiletarget/catalog/{actions,dependencies,columns}.parquet (models, object-level dependency edges, documented columns).
  • runtarget/runs/run_<timestamp>.parquet (one row per action: status, timing, error).

Writing is best-effort — it never fails your compile/run. Disable with --no-artifacts.

Terminal window
sqlanvil query "select type, count(*) as n from actions group by 1 order by 1"
sqlanvil query "select readable_name, error_message from runs
where run_id = (select max(run_id) from runs) and status = 'FAILED'"
sqlanvil query "select * from dependencies" --json

Views available: actions, dependencies, columns, runs. It’s just DuckDB SQL — join, filter, aggregate however you like. The Parquet files are also readable directly by pandas/polars, DuckDB, or as external tables in BigQuery/Snowflake.

Terminal window
sqlanvil inspect

Prints action counts by type, the latest run’s status/timing, and any recent failures. --json for a structured summary.

Terminal window
sqlanvil docs # writes target/docs/index.html

A self-contained HTML catalog — models with their type, tags, description, columns, what they depend on, and last-run status, with a filter box. One file, no server; open it in a browser.