gold
SELECT T2.Segment FROM transactions_1k AS T1 INNER JOIN customers AS T2 ON T1.CustomerID = T2.CustomerID ORDER BY Date ASC LIMIT 1
- Date
- ascending
sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648
R-ORD GOLD-ONLY arbitrary-cut
debit_card_specializing · dev_20251106-00000-of-00001 from https://huggingface.co/datasets/birdsql/bird_sql_dev_20251106/resolve/3c11fb193e5439b338e23677fa0aae11e8b85db9/data/dev_20251106-00000-of-00001.json (commit 3c11fb19, downloaded 2026-09-07)
For the earliest customer, what segment did he/she have?
This question was audited without a prediction beside it, so there is nothing to compare the gold with. The probes below read the gold alone.
read by hand, 2026-09-07: wrong the gold does not answer its question on this data
ten transactions share the earliest date and belong to customers in three different segments
a maintainer's reading of this question, out of classification.json, copied from plans/reports/bird-dev-sqlite-260907/classification.json. It is not a verdict and nothing above it was computed from it.
SELECT T2.Segment FROM transactions_1k AS T1 INNER JOIN customers AS T2 ON T1.CustomerID = T2.CustomerID ORDER BY Date ASC LIMIT 1
sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648
from evidence-gold.json, 1 row
| SegmentTEXT |
|---|
| KAM |
A smell is a mechanical reason to read this gold statement again. It is a heuristic: it does not state that the statement is wrong, and a maintainer decides.
this statement orders by a text column holding only numbers, and ordering it as a number gives a different answer, so the gold may be sorting 9.5 above 10
no ORDER BY key resolves to a text column
{
"heuristic": true,
"reason": "no ORDER BY key resolves to a text column",
"keys": [
{
"key": "Date",
"column": "transactions_1k.Date",
"declared_type": "DATE",
"not_applicable": "the column is not declared as text"
}
]
}
this statement cuts its result at a LIMIT that does not decide which rows come back, so a different but equally correct statement can return other rows and score zero
from smells.json, 10 rows
| KAM | 2012-08-23 |
| KAM | 2012-08-23 |
| LAM | 2012-08-23 |
| KAM | 2012-08-23 |
| SME | 2012-08-23 |
| KAM | 2012-08-23 |
| KAM | 2012-08-23 |
| KAM | 2012-08-23 |
| KAM | 2012-08-23 |
| KAM | 2012-08-23 |
{
"heuristic": true,
"cut": 1,
"offset": 0,
"distinct_kept": false,
"unbounded_sql": "SELECT T2.Segment, Date AS attestql_ordering_key_0 FROM transactions_1k AS T1 INNER JOIN customers AS T2 ON T1.CustomerID = T2.CustomerID ORDER BY Date ASC",
"unbounded_rows": 1000,
"projected_columns": [
"Segment"
],
"ordering_key_columns": [
"attestql_ordering_key_0"
],
"ordering_keys": [
{
"key": "Date",
"direction": "asc",
"nulls": "first",
"nulls_first_in_effect": true,
"returned_rows_null_in_this_key": 0,
"fires": false
}
],
"tied_at_the_cut": {
"positions": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"tied_rows": 10,
"distinct_projected_answers": 3,
"rows": [
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "LAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "SME"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
],
[
{
"type": "str",
"value": "KAM"
}
]
]
},
"case": "tie-at-the-cut"
}
rerun over the same rows in another physical order this statement gives another answer, so its result depends on how the rows are stored and not only on the data
{
"heuristic": true,
"rule": "R-ORD",
"baseline_result_hash": "sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648",
"baseline_result": {
"columns": [
{
"name": "Segment",
"declared_type": "TEXT"
}
],
"row_count": 1,
"truncated": false,
"rows_shown": 1,
"rows": [
[
{
"type": "str",
"value": "KAM"
}
]
],
"result_hash": "sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648"
},
"planner_statistics": {},
"shuffle": {
"seed": "1",
"row_limit": 300000,
"tables": [
"transactions_1k",
"customers"
],
"tables_not_shuffled": [],
"tables_skipped_for_size": {
"yearmonth": 383282
},
"tables_not_reached_by_a_copy": {}
},
"shuffled_copies": {
"run": true,
"verdict": "equal",
"differs": false,
"result_hash": "sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648",
"result": {
"columns": [
{
"name": "Segment",
"declared_type": "TEXT"
}
],
"row_count": 1,
"truncated": false,
"rows_shown": 1,
"rows": [
[
{
"type": "str",
"value": "KAM"
}
]
],
"result_hash": "sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648"
}
},
"plan_variant": {
"run": false,
"reason": "the plan variant was not asked for"
}
}
SELECT T2.Segment FROM transactions_1k AS T1 INNER JOIN customers AS T2 ON T1.CustomerID = T2.CustomerID ORDER BY Date ASC LIMIT 1
result_hash sha256:14a49db3fad554e8ad8ff7110947c3c8b07242b6abe35576879b7406bee72648 recomputed from this JSON: match
record_hash sha256:308f9bac29bb756e01ef0357532bb8c91560a81afad7584714e3ccddc277b5d5 recomputed from this JSON: match
from evidence-gold.json, 1 row
| SegmentTEXT |
|---|
| KAM |
re-run this statement read-only against SQLite 3.53.4 | file=/private/tmp/attestql-runs/data/dev/dev_databases/debit_card_specializing/debit_card_specializing.sqlite | size=34635776 under the session settings and over the data this record's fixture digest names, and compare the two results under R-ORD