Use when writing acceptance criteria for a task - express each as an observable Given/When/Then that QA can execute, including negative cases
中文简介正在准备中。当前显示原文说明。
Use when you are about to hand off any number, table, chart or analysis someone will act on (a metric query, a dbt mart, a report, an experiment readout) — the pre-delivery checklist for data quality, calculation, reasonableness and presentation, and the pitfalls that produce plausible wrong numbers
中文简介正在准备中。当前显示原文说明。
查看安装方法安装前可以查看交给 AI 代理的指令内容。
The dangerous analytics bug is not the query that fails — it is the one that returns a plausible number. A fan-out join, a partial month, a shifted denominator: each produces a result that looks fine and is wrong by 20%. This checklist runs before any number leaves your run, and the checks that can be automated become tests.
Core principle: recompute every headline number a second way, and turn every check you did by hand into a test or a dbt test that keeps doing it.
| Pitfall | How it happens | Detect / prevent |
|---|---|---|
| Join fan-out | one-to-many join before aggregating | row counts before and after; aggregate before joining; count(distinct key) |
| Survivorship | only entities that still exist are analysed | ask who is missing (churned, deleted, failed) |
| Incomplete period | current month compared with a full one | complete periods only, or same-number-of-days comparisons |
| Denominator shift | the definition of "eligible" changed between periods | one definition across compared periods; note any change |
| Average of averages | pre-aggregated means averaged across unequal groups | aggregate from rows or weight by group size |
| Timezone mismatch | UTC events bucketed against local-time days | convert to one timezone before truncating; state it |
| Selection by outcome | segment defined by the result being measured | segment on pre-treatment attributes |
| Look-ahead | a later fact used to explain an earlier event | as-of joins; only information available at the time |
| Simpson's paradox | mix shift reverses the trend in the aggregate | check the key segments |
Each one is investigated before delivery, not footnoted after.
| Manual check | Permanent form |
|---|---|
| Key is unique after the join | dbt unique test / merge(validate="many_to_one") |
| Parts sum to the total | a singular dbt test or a pytest assertion on the fixture |
| Rate within 0–1 | dbt accepted_range (if dbt_utils is installed) or a pandera Field(ge=0, le=1) |
| Matches the finance figure within 1% | a reconciliation test against a fixture, or a monitored check in the pipeline |
State one of:
Include the reconciliation you did ("total revenue 1.284M matches the finance export within 0.3%").
select distinct used to make counts "look right".还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Use when writing acceptance criteria for a task - express each as an observable Given/When/Then that QA can execute, including negative cases
中文简介正在准备中。当前显示原文说明。
Use when the diff adds or changes an endpoint, resolver, RPC, job or query that takes an object id, a role check, a request binding or a tenant filter - BOLA/IDOR, function-level authorization, mass assignment and tenant scoping
中文简介正在准备中。当前显示原文说明。
Use on every UI change - semantic HTML, labels for controls, keyboard-navigable dialogs/menus, visible focus, and never color as the only signal
中文简介正在准备中。当前显示原文说明。
Use when a task changes any screen, form, dialog, menu or control - Lighthouse/axe scan of the changed screens, a keyboard walk, and the thresholds that fail a task
中文简介正在准备中。当前显示原文说明。
How to work a task returned with review, QA or UAT findings. Use when a task is in need_revision or PR review comments are in your context.
中文简介正在准备中。当前显示原文说明。
Use when the repository keeps its alerting in code, or a person asks for alerts outside TaskTrooper - PrometheusRule YAML, a Cloud Monitoring alert policy in Terraform, a Datadog monitor, each routed to TaskTrooper's alert ingest URL so it opens an incident here
中文简介正在准备中。当前显示原文说明。