Two releases move verification to the center of analytics agents
Dex 1.12 and dst 0.3 arrive from different directions, but both treat generated SQL as the start of a controlled process—not the end.
Two open-source analytics-agent projects shipped releases on September 8 that point in the same direction: the differentiator is shifting from whether an agent can produce SQL to whether its work can be checked, transferred and compared safely.
Dex 1.12, an agent-oriented analytics-engineering toolkit, adds row-loss and fanout findings to maintain verify, exposes verification through transform build --verify, and publishes contracts for moving its planning and build lifecycle across processes. dst 0.3, a governed layer through which AI systems query warehouses, adds disposable environments, history and diffs for test runs, side-by-side experiments, and the ability to draft evaluation cases from production traffic.
Dex checks what a green build misses
Dex’s new population check compares a model with the physical relation driving its compiled SQL. The implementation notes describe two targeted failure modes: row loss, such as an unintended inner join dropping records, and fanout, where a one-to-many join inflates downstream totals. The check deliberately suppresses loss findings when SQL contains constructs such as filters, grouping or DISTINCT, because a smaller result may then be intentional.
The accompanying --verify build option makes those checks part of the command used to validate dbt work rather than a separate step callers must discover. Its design keeps dbt execution status separate from verification findings and folds any metered row-count work into the existing cost gate.
Dex 1.12 also addresses a different operational gap: one process can now export a plan and another can apply or validate it. The cross-process contract includes plan digests, dependency grounding, artifact classification and build evidence that distinguishes validated work from empty, unrelated, partial or stale selections. The project explicitly says its digest proves internal consistency rather than authenticity; a trusted host must pin the expected digest.
dst makes change measurable
dst’s 0.3.0 comparison frames an environment as an organization that can be created, selected and discarded. It adds dst runs --diff, which exits non-zero for a regression even when an unchanged aggregate score hides a flipped individual case. It also adds dst experiment for comparing multiple lens configurations in disposable environments and dst evals from-traffic for drafting test cases from production questions.
The projects operate at different layers. Dex works on warehouse exploration, dbt transformation and maintenance; dst describes itself as the governed interface an AI calls instead of the warehouse, returning SQL, confidence and a receipt. Yet the releases share a practical thesis: generation alone is not a sufficient product boundary. The system also needs evidence about what ran, what changed, what regressed and what the result cost.
Neither release proves that its checks eliminate incorrect analytics. What they do provide is a more inspectable failure surface—one that downstream agents, CI systems and human reviewers can act on.
sources
- Dex v1.12.0 releasegithub.com
- Dex PR #438: row loss and fanout verificationgithub.com
- Dex PR #440: transform build --verifygithub.com
- Dex PR #442: cross-process lifecycle contractsgithub.com
- dst v0.3.0 releasegithub.com
- dst v0.2.0 to v0.3.0 comparisongithub.com
- dst repository and READMEgithub.com
comments · 0