You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Quicklook assets are optional in upstream CPM publications; discovery must tolerate their absence.
5
+
-`scripts/convert.py` now infers quicklook groups only when the STAC item advertises them and soft-fails otherwise.
6
+
- Latest `data-model` CRS fallback ensures `/quality/l2a_quicklook` inherits the reflectance CRS when it is not encoded natively.
7
+
8
+
## What Broke
9
+
- Sentinel-2 GeoZarr releases tagged `cpm_v262` omitted the `/quality/l2a_quicklook` groups even though STAC assets still reference quicklooks.
10
+
- The convert workflow assumed quicklooks would always be published, so the register step failed on empty groups.
11
+
- Quicklook datasets that were published also lacked CRS metadata, blocking downstream tiling.
12
+
13
+
## Investigation Highlights
14
+
- Sampled six months of Sentinel-2 GeoZarr items across tiles and orbits; roughly half of the sampled items were missing quicklook data despite STAC advertising the asset.
15
+
- Confirmed that older `cpm_v256` items exhibit the same gap, so the issue predates the recent regression.
16
+
- Verified that STAC continues to list quicklook assets regardless of the dataset's presence, so workflow logic must perform existence checks.
17
+
18
+
> Sampling notes: raw JSON exports collected during the investigation are intentionally left out of the repository to keep the diff focused. They are available in the shared evidence bucket if deeper inspection is required.
19
+
20
+
## Fixes Landed
21
+
1.`scripts/convert.py`
22
+
- Derives quicklook group names directly from the STAC assets.
23
+
- Short-circuits when the quicklook dataset is absent instead of failing the run.
24
+
- Logs actionable diagnostics for missing quicklook groups and for mismatched CRS.
25
+
2.`data-model` GeoZarr conversion
26
+
- Adds a sibling CRS fallback so quicklook datasets inherit the reflectance CRS.
27
+
- Ensures the CRS is propagated to variable attributes when inferred.
28
+
29
+
## Verification
30
+
-`uv run -q pytest -q tests/test_cli_e2e.py::TestCLIEndToEnd::test_cli_convert_real_sentinel2_data`
31
+
- Manual rerun of the devseed Argo workflow `geozarr-convert-quicklook`, confirming successful completion and STAC registration without quicklook datasets.
32
+
- Spot-checked freshly produced GeoZarr stores to confirm quicklook datasets (when present) now carry CRS metadata.
33
+
34
+
## Follow-Up
35
+
- Monitor CPM release notes for clarity on quicklook publication cadence.
36
+
- Backfill missing quicklooks only when explicitly prioritized; convert workflow can now operate without them.
0 commit comments