Repository navigation
Product bundles - #40
Conversation
…ependency-resolution run. Reusing a WormHole instance will no longer prevent a previously unavailable product from being retried later. - CODE product tests now reflect the HTTPS/S3 migration and CODE/ root paths instead of obsolete FTP/year-specific paths.
|
|
||
| logger = logging.getLogger(__name__) | ||
|
|
||
| _AIUB_DOWNLOAD_ROOT = "https://www.aiub.unibe.ch/download" |
There was a problem hiding this comment.
These should live in yaml files and go through the propery analysis center registry
| full_path = pool.full_path(directory) | ||
|
|
||
| def _ls(conn: "fsspec.AbstractFileSystem") -> list[str]: | ||
| if hostname.rstrip("/") == _AIUB_DOWNLOAD_ROOT: |
There was a problem hiding this comment.
same comment from one above.
| - {name: TTT, value: RAP} | ||
| - {name: PPP, value: OPS} | ||
| directory: {pattern: "CODE/{YYYY}/"} | ||
| directory: {pattern: "CODE/"} |
There was a problem hiding this comment.
lets double check this one
| - {name: TTT, value: RAP} | ||
| - {name: PPP, value: OPS} | ||
| directory: {pattern: "CODE/{YYYY}/"} | ||
| directory: {pattern: "CODE/"} |
There was a problem hiding this comment.
lets double check this one
| - {name: SMP, value: 30S} | ||
| - {name: SMP, value: 05M} | ||
| directory: {pattern: "CODE/{YYYY}/"} | ||
| directory: {pattern: "CODE/"} |
There was a problem hiding this comment.
lets double check this one
| - {name: SMP, value: 05M} | ||
| - {name: SMP, value: 15M} | ||
| directory: {pattern: "CODE/{YYYY}/"} | ||
| directory: {pattern: "CODE/"} |
There was a problem hiding this comment.
lets double check this one
frigusgulo
left a comment
There was a problem hiding this comment.
lets double check those CODE product directories, and and the AIUB hard coded edge-case claude artifacts.
|
@copilot resolve the merge conflicts in this pull request |
# Conflicts: # packages/gnss-product-management/src/gnss_product_management/factories/connection_pool.py # packages/gnss-product-management/src/gnss_product_management/factories/pipelines/resolve.py # packages/gnss-product-management/test/test_code_https.py Co-authored-by: frigusgulo <43794768+frigusgulo@users.noreply.github.com>
Merged |
Summary
This PR improves PRIDE PPP-AR product selection, same-day processing, failure handling, diagnostics, and output preservation.
It introduces coherent precise-product bundles so orbit, clock, ERP, bias, and optional attitude products are selected from compatible analysis-center/product families rather than independently mixing incompatible products.
Product bundle resolution
AAA)TTT)PPP)Product precedence and sources
WRDcurrent-day mixed-GNSS broadcast navigation product.WRD, followed by normal IGS/IGN/DLR daily products.Download and cache behavior
force_downloadsupport throughout dependency resolution and transport.override_products_download=Truenow refreshes mutable products that can change, such as orbit, clock, bias, ERP, navigation, and attitude products.refresh_on_force: falseand remain cached.PRIDE product compatibility diagnostics
Added advisory validation before processing:
These checks intentionally remain advisory because some constellations may have incomplete bias support while the remaining systems can still produce a useful solution.
Frequency handling
G12R12E17C27J12pdp3command construction so frequency combinations are passed as separate arguments rather than one combined string.PrideCLIConfig.Same-day processing
brdmDDD0.YYpfilename expected bypdp3.Quaternions = NONEwhenATTOBXis unavailable, preventing unnecessary fallback downloads and avoiding PRIDE’s nonportable macOSsed -ifailure.NONEas a valid satellite-attitude configuration value.PRIDE execution robustness
pdp3from launching, while other dates in a batch can continue.error:messages even whenpdp3.shexits with status zero.60.0000000seconds by carrying them into the next minute correctly."None"product filenames into generated PRIDE configurations.Preserved output artifacts
Successful PRIDE runs now retain: