4.2 KiB
Precise Orbit Production Contract 2026-06-17
This document is the current contract for LT-1 and Sentinel-1 precise orbit management. UNC paths are not allowed in active source, orbit, task, or production paths.
Two Layers
There are two different orbit layers.
ORBIT_SOURCE_DIRS is the source asset layer. It is scanned into orbit_assets and used for scene-orbit binding:
ORBIT_SOURCE_DIRS=D:\LT1_data_lsarorbit;D:\Sentinel1_EOF_Pool
ORBIT_POOL_ENVI / PYINT_ORBIT_POOL_TXT / GAMMA_SBAS_ORBIT_ROOTS are LT-1 production orbit pools. They are local TXT pools consumed by ENVI/SARscape and Gamma/PyINT:
ORBIT_POOL_ENVI=D:\orbit_pools\envi
PYINT_ORBIT_POOL_TXT=D:\orbit_pools\envi
GAMMA_SBAS_ORBIT_ROOTS=D:\orbit_pools\envi
Expected LT-1 production layout:
D:\orbit_pools\envi
LT1A\
LT1A_GpsData_GAS_C_YYYYMMDD.txt
LT1B\
LT1B_GpsData_GAS_C_YYYYMMDD.txt
LT1A and LT1B are satellite names, not product levels.
Scan Semantics
The active scan entry is /assets/inventory/scan.
inventory_types=["orbit_asset"], families=["LT1"]scans LT-1 orbit TXT files.inventory_types=["orbit_asset"], families=["S1"]scans Sentinel-1 EOF files.inventory_types=["orbit_asset"], families=["LT1","S1"]scans both.
LT-1 scanning recognizes LT1A_GpsData_GAS_C_YYYYMMDD.txt and LT1B_GpsData_GAS_C_YYYYMMDD.txt.
Sentinel-1 scanning recognizes S1*_OPER_AUX_*.EOF and matches EOF validity windows to scene acquisition windows.
After an LT-1 orbit scan, the scanner also synchronizes the LT-1 production TXT pool under ORBIT_POOL_ENVI. This keeps Gamma/PyINT and Gamma SBAS able to find the same TXT files without relying on the old monitor scan.
Orbit asset scans are incremental. For already indexed TXT/EOF files, the scanner skips metadata parsing and database upsert when the file path, size, mtime, parser version, active flag, and parse_status=OK still match the database record. Missing files are still marked inactive by comparing the scanned seen_paths set with existing assets under the same managed root.
Engine Consumers
ENVI/SARscape D-InSAR:
- Uses local LT-1 data prepared for the SARscape workflow.
- The LT-1 TXT production pool is
ORBIT_POOL_ENVI. - The pool must be split by satellite because ENVI-side tools expect stable satellite folders.
Gamma/PyINT D-InSAR:
- Reads LT-1 TXT orbit files from
PYINT_ORBIT_POOL_TXT. - Current default keeps
PYINT_ORBIT_POOL_TXT=ORBIT_POOL_ENVI. - For LT-1, input assets may stage TXT orbits into the task input manifest when the precise-orbit bridge is enabled.
- For Sentinel-1, EOF paths come from source/orbit asset binding or task
orbitstaging.
Gamma SBAS:
- For LT-1, reads TXT orbit roots from
GAMMA_SBAS_ORBIT_ROOTS. - For Sentinel-1, planning uses
ORBIT_SOURCE_DIRSEOF roots; S1 SBAS execution is not enabled. - LT-1 Gamma SBAS scripts use the orbit path recorded in scene discovery.
LandSAR:
- Current D-InSAR integration does not independently scan an orbit pool.
- It consumes already prepared LT-1 task input.
ORBIT_POOL_LANDSARis not an active synchronization target in current code.
ISCE2:
- ISCE2 is retired from the active D-InSAR production path.
ORBIT_POOL_ISCE2is legacy only and should be empty unlessISCE2_ENABLED=true.- When
ISCE2_ENABLED=false, health and orbit status must not treat missing ISCE2 XML as a production error.
Database State
orbit_assets records original orbit files from ORBIT_SOURCE_DIRS.
scene_orbit_bindings records candidate and selected scene-orbit matches.
radar_data.selected_orbit_asset_id, radar_data.orbit_binding_status, radar_data.has_orbit_data, and radar_data.orbit_file_path are compatibility fields for production and search.
orbit_asset_derivatives records production-pool derivatives. For current LT-1 TXT production, derivative records use:
engine_code=lt1_txt_pool
derivative_format=LT1_TXT
derivative_role=production_orbit_txt
pool_path=D:\orbit_pools\envi\LT1A|LT1B\*.txt
Current Defaults
ISCE2_ENABLED=false
ORBIT_POOL_ISCE2=
ORBIT_POOL_LANDSAR=
The old /monitor/run-now?target=orbit path is legacy. It may still synchronize the LT-1 production pool for compatibility, but new UI should use asset inventory orbit scans.