conf/gr R105 acceptance test still covers only gr_perifereies — gr_clc was unblocked by #177 and never added #181

Closed
opened 2026-08-20 06:45:39 +00:00 by art-bot · 1 comment
Collaborator

conf/gr/acceptance.yaml's R105 test ("every Greece staging table is nonzero after load")
covers exactly one table:

requires: [gr_perifereies]
query: |
  SELECT bool_and(cnt > 0) AS passed, ...
  FROM ( SELECT 'gr_perifereies' AS t, count(*) AS cnt FROM gr_perifereies ) x

Its own comment says why, and what should happen next:

requires: names only gr_perifereies today because that is the one staging table the
mask import actually loads — gr_clc (CORINE) is blocked on the CLMS token and must
join this list … the moment its download is unblocked
.

PR #177 unblocked it. data/gr/clc_gr.gpkg is fetched (169 MB, 2026-08-20T00:49:30Z) and
gr_clc is loaded with 49 056 rows, but the test was never extended. Live confirmation:

acceptance: config / R105: every Greece staging table is nonzero after load — PASS (tables=1)

tables=1 with two staging tables declared. The check passes while covering half of what it
claims to cover, which is the failure mode R105 exists to prevent — a loader that silently
skips rows leaves an empty staging table and nothing downstream notices.

Fix: add gr_clc to requires: and to the UNION ALL in the subquery, and drop the
"blocked" half of the comment. Expected result afterwards is tables=2.

Same class of trap as #123 (naming a table the config does not declare disables the check
instead of extending it) — here the check was simply never widened after its precondition
was met.

`conf/gr/acceptance.yaml`'s R105 test ("every Greece staging table is nonzero after load") covers exactly one table: ```yaml requires: [gr_perifereies] query: | SELECT bool_and(cnt > 0) AS passed, ... FROM ( SELECT 'gr_perifereies' AS t, count(*) AS cnt FROM gr_perifereies ) x ``` Its own comment says why, and what should happen next: > `requires:` names only `gr_perifereies` today because that is the one staging table the > mask import actually loads — `gr_clc` (CORINE) is blocked on the CLMS token and **must > join this list … the moment its download is unblocked**. PR #177 unblocked it. `data/gr/clc_gr.gpkg` is fetched (169 MB, 2026-08-20T00:49:30Z) and `gr_clc` is loaded with **49 056 rows**, but the test was never extended. Live confirmation: ``` acceptance: config / R105: every Greece staging table is nonzero after load — PASS (tables=1) ``` `tables=1` with two staging tables declared. The check passes while covering half of what it claims to cover, which is the failure mode R105 exists to prevent — a loader that silently skips rows leaves an empty staging table and nothing downstream notices. Fix: add `gr_clc` to `requires:` and to the `UNION ALL` in the subquery, and drop the "blocked" half of the comment. Expected result afterwards is `tables=2`. Same class of trap as #123 (naming a table the config does not declare disables the check instead of extending it) — here the check was simply never widened after its precondition was met.
art-bot self-assigned this 2026-08-20 06:45:39 +00:00
Author
Collaborator

Fixed in #177 (the branch that unblocked gr_clc now also widens the test). Verified against the live database: R105 reports tables=2 where it reported tables=1, and importer acceptance conf/gr stays 28/28.

Fixed in #177 (the branch that unblocked `gr_clc` now also widens the test). Verified against the live database: R105 reports `tables=2` where it reported `tables=1`, and `importer acceptance conf/gr` stays 28/28.
art closed this issue 2026-08-20 10:39:38 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
art/ismap#181
No description provided.