Repository navigation
The DQ-intelligence and operability cycle (2026-08-22 → 2026-10-04). Full entries are on the changelog page; headlines:
Added
- Six SQL datasources on one engine-generic base (ADR 0045): PostgreSQL, MySQL / MariaDB,
Trino, Amazon Athena and Amazon Redshift, plus SQL Server / Azure SQL / Synapse / Fabric SQL
(ADR 0044). ADLS Gen2 connections can sign in as a service principal, which also covers
Fabric OneLake. - Per-check engines (ADR 0036): Snowflake DMF, including custom DMFs, and Databricks DQX
run in the user's own workspace, beside Great Expectations. - LLM assistance, off by default (ADR 0042): SQL generation, check suggestions and
root-cause narratives through a provider seam (Anthropic, any OpenAI-compatible endpoint,
Snowflake Cortex), each validated before anything is saved. - Automated coverage (ADR 0047): system-owned suites over the asset inventory, a review
queue of suggested rules, and coverage and false-positive figures on the Dashboard. - Suites as code: YAML suite files,
validate, drift andapply, and a generated Python
client with thedataqCLI, attached to each release, under an API compatibility policy. - A pipeline gate (ADR 0046):
POST /orchestration/gatelets a pipeline stage start its
bound suites and wait for the verdict. - Operating a workspace: reusable notification channels; the admin area as six pages
with in-app membership (ADR 0043), guided offboarding and a workspace-health view; a hash
chain over the audit log. - Scores and bulk work: health scores for assets, connections and dimensions; bulk snooze,
delete and thresholds for checks; a first-run path and empty states that say what to do next. - MCP: 46 → 54 tools, including column lineage tracing, notification channels, curated
docs, coverage figures and suggested rules. - A production-like local stack:
docker-compose.ghcr.ymlserves only the UI, over HTTPS
from a CA it generates, with TLS on every internal hop and data and a persistent vault in a
directory. A--profile demosample warehouse shows real results on first sign-in. - Accessibility: every route passes the automated axe checks in both themes.
- Docs: rebuilt on a task-first layout, versioned per release, with an upgrade guide and
a support policy.
Changed
-
AWS stack — Slack alerts are off unless
slack_webhook_secret_nameis set (#2292). The
stack used to hardcodeSLACK_WEBHOOK_SECRET_NAME=channel-slack-webhookwithout creating that
secret. An AWS deployment that created<prefix>/channel-slack-webhookitself must set
slack_webhook_secret_name = "channel-slack-webhook"before its next task-definition replace,
or Slack alerts stop without a log line. -
Breaking — connections are tested before they are saved (#1927).
POST /connections,
aPATCHthat changes config or a credential, andPOST /connections/{id}/reauthrefuse a
config that fails its test with422 connection_test_failed_on_saveand write nothing (a
re-auth keeps the old credential). An Admin can sendskip_test: trueto save anyway; the
audit event records it.PUT /admin/llmtests an enabled provider first
(422 llm_test_failed_on_save). -
Breaking — Unity Catalog
DATEcolumns on the frame lane (sampled suites,
UC_SQL_PUSHDOWN=false, and the frame-only types such asto_be_of_type) are now
evaluated as dates, as on Parquet and Iceberg. Before, a date bound errored and a set
of ISO dates failed every row. Ato_be_of_typecheck on a UCDATEcolumn that
namesdatetime64[ns]/datetime64[s]must be changed totype_: date. Datetime
bounds at midnight keep working; a bound with a time of day on aDATEcolumn errors. -
Breaking — the prebuilt-image stack publishes only the UI, over HTTPS, and keeps its data
in a directory (DATAQ_DATA_DIR, default./dataq-data). Take the compose file and the
images from the same release. -
This release adds 33 database migrations. They run before the application starts. Back
up first; see the upgrade guide for rolling back.
Security
- The custom-SQL guard lexes each engine's own quoting.
- Sensitive columns stay masked in incident evidence, alerts and LLM prompts.
Upgrading
Back up first, then follow the upgrade guide. The Python client and the dataq CLI are attached below (pip install dataq_client-1.2.0-py3-none-any.whl).
Full changelog: v1.1.0...v1.2.0