SuperAPI AI 工具集

jarvus-dbt

测试与质量

查看项目

更新于 10-15 22:41

技能介绍

用途:这是 Jarvus 的 dbt 内部约定层,规定模型应如何编写、测试和 lint,而非如何操作 dbt。命令执行、单元测试 YAML、dbt state、语义层与 mesh 等机制由 dbt-labs 官方技能覆盖,本技能在其之上补充团队约定、质量标准和 CI 门禁。

主要能力:约定包括——staging 与源表 1:1,仅重命名/重转类型/轻清洗,不做去重或聚合;重塑与业务逻辑放 intermediate;可消费粒度放 marts。物化方式需逐模型明确决定 view/table/incremental 并记录理由。禁止 inner join,改用 left join 加显式 where 过滤,避免静默丢行。依赖在顶部以 CTE 导入,每个上游一个 CTE。表别名使用语义化名词而非字母缩写,自连接用角色名。注释只陈述持久事实,不叙述变更。变更须在所有已配置租户/项目上可解析可运行。测试采用通用 schema 测试、质量模型模式与单元测试,并区分严重级别与范围。lint 使用 sqlfluff(dbt templater),在按路径过滤的 CI 门禁中运行。

使用方式:按 conventions.md、testing.md、linting-and-ci.md 及 references/templates/ 中的可复制配置执行;DuckDB 栈读取公开数据,lint、多租户 dbt parse 与单元测试门禁无需凭证,可安全用于 fork;BigQuery 项目则需服务账号。

适用场景与限制:适用于 Jarvus 的 dbt 项目建模、测试与 CI 设置。成熟度为初版,待 dbt 负责人评审;部署部分(运行/编排/发布)被有意推迟到第二版,见 deployment.md。适配器示例使用 DuckDB 与 BigQuery。