Skip to content

Add Sentinel-1D support#252

Draft
dbekaert wants to merge 3 commits into
devfrom
feature/sentinel-1d-support
Draft

Add Sentinel-1D support#252
dbekaert wants to merge 3 commits into
devfrom
feature/sentinel-1d-support

Conversation

@dbekaert
Copy link
Copy Markdown
Collaborator

Summary

Adds Sentinel-1D support across the pipeline: AUX_CAL downloads, DAAC metadata schema, and SLC validation.

Changes

AUX_CAL downloads (localize_aux_cal.py)

  • S1A/S1B: continue using ASF CloudFront bundles as baseline
  • All missions (S1A–D): supplement from ESA SAR-MPC API (https://sar-mpc.eu/api/v1/) to pick up newer files and S1C/S1D entries
  • Handles pagination and skip-if-exists caching

SLC validation (localize_slc.py)

  • Added S1D_MIN_DATE (2026-04-17) placeholder to reject uncalibrated S1D acquisitions, mirroring the existing S1C_MIN_DATE check
  • Updated error messages to include S1D

Metadata (daac_ingest_schema.json)

  • Added Sentinel-1D to platform enum

Tests (test_localize_slc.py)

  • Added test for S1D minimum date validation
  • Updated error match patterns

Upstream dependencies

  • s1_orbits: Already supports S1D via S1[ABCD] regex — no changes needed
  • ISCE2: Requires S1D track number offset (42) in Sentinel1.py — see isce2#28123 (pending merge)

Notes

  • S1D_MIN_DATE is a placeholder — update once S1D calibration is officially confirmed by ESA
  • S1D orbit offset (42) is based on the commissioning orbit and may change when S1D moves to its final orbit (expected summer 2026)

- Download S1C/S1D AUX_CAL files from ESA SAR-MPC API, supplementing
  existing ASF CloudFront bundles for S1A/S1B
- Add S1D to DAAC ingest schema platform enum
- Add S1D_MIN_DATE (2026-04-17) placeholder to reject uncalibrated
  S1D acquisitions, mirroring the S1C_MIN_DATE check
- Update error messages and comments to include S1D
- Add test for S1D minimum date validation
@dbekaert
Copy link
Copy Markdown
Collaborator Author

ASF/DAAC Ingest Coordination
@asjohnston-asf — heads up on a potential ingest concern.

This PR adds "Sentinel-1D" (and "Sentinel-1C") to the platform enum in the producer-side DAAC ingest schema (daac_ingest_schema.json). When S1D products are generated, the JSON metadata will include "platform": ["Sentinel-1D", ...].

Question: Does ASF's receiving-side ingest validation / CMR collection configuration already support Sentinel-1D as a valid platform value? If not, S1D products would pass our local schema validation but could fail on ingest.

Specifically wondering about:

Server-side schema validation of the platform field
CMR collection metadata for the GUNW product suite
Any downstream search/discovery services that filter by platform

S1D SLCs don't exist in ASF yet, so download_slcs fails at ASF
search before reaching the date check. Test check_if_s1d_has_valid_date
directly instead.
@dbekaert dbekaert requested a review from cmarshak April 17, 2026 11:44
@dbekaert
Copy link
Copy Markdown
Collaborator Author

@cmarshak Can you keep an eye on this? We should do a test when the dependencies are ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant