Skip to content

Add MODS attributes to spin affected products - #3502

Merged
lacoak21 merged 4 commits into
IMAP-Science-Operations-Center:devfrom
lacoak21:update_mods_attrs_for_products_that_use_spin_phase_and_spin_axis
Oct 8, 2026
Merged

lacoak21 merged 4 commits into
IMAP-Science-Operations-Center:devfrom
lacoak21:update_mods_attrs_for_products_that_use_spin_phase_and_spin_axis

Conversation

@lacoak21

@lacoak21 lacoak21 commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Change Summary

partially closes #3493

Overview

File changes

Testing

@lacoak21
lacoak21 requested review from bryan-harter, jtniehof and tmplummer and a lite review from Copilot September 28, 2026 15:58
@lacoak21 lacoak21 self-assigned this Sep 28, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🔵 Needs a closer look

Add Major Version 2 MODS entries for the Lo histogram and monitor-rate products.

Review effort: Lite
Findings: None

What changed in this PR

Updates CDF metadata with MODS histories for products affected by corrected spin tables and SPICE kernels.

Changes:

  • Adds MODS entries across seven instrument configurations.
  • Records version updates, including IDEX Major Version 3.
  • Lo histogram and monitor-rate products still require Major Version 2 history entries.
File Summary
imap_processing/​cdf/​config/​imap_ultra_global_cdf_attrs.yaml Adds MODS history for Ultra products.
imap_processing/​cdf/​config/​imap_swe_global_cdf_attrs.yaml Adds MODS history for SWE products.
imap_processing/​cdf/​config/​imap_mag_global_cdf_attrs.yaml Adds MODS history for MAG products.
imap_processing/​cdf/​config/​imap_lo_global_cdf_attrs.yaml Adds MODS history for Lo products.
imap_processing/​cdf/​config/​imap_idex_global_cdf_attrs.yaml Adds the IDEX Major Version 3 entry.
imap_processing/​cdf/​config/​imap_hi_global_cdf_attrs.yaml Adds MODS history for Hi products.
imap_processing/​cdf/​config/​imap_glows_global_cdf_attrs.yaml Adds MODS history for GLOWS products.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@lacoak21

Copy link
Copy Markdown
Contributor Author

This is not planned for data release 2 anymore. I will keep this open until we do need it.

@lacoak21
lacoak21 marked this pull request as ready for review October 7, 2026 18:35

@leowerneck leowerneck left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

I had one question, but I'd say it's non-blocking because I'm not sure it's relevant:

In imap_spacecraft_global_cdf_attrs.yaml, does imap_spacecraft_l1a_quaternions depend on the changes to attitude_history? In the orchestration dependencies I found (l1a, pointing-attitude), whose output is:

  outputs:
    - source: spacecraft
      data_type: l1a
      descriptor: pointing-attitude
      major_version: 1

but it's not obvious to me whether they are related or not.

@leowerneck

leowerneck commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

One additional question: should all products have a MODS attribute describing Major version 1? For example, these randomly selected ones have nothing:

imap_ultra_l1a_45sensor-imgparams:
    <<: *instrument_base
    Data_type: L1A_45Sensor-ImgParams>Level-1A Image Parameters for Ultra45
    Logical_source: imap_ultra_l1a_45sensor-imgparams
    Logical_source_description: IMAP Mission IMAP-Ultra Instrument Level-1A Image Parameters Data for Ultra45

imap_ultra_l1a_90sensor-imgparams:
    <<: *instrument_base
    Data_type: L1A_90Sensor-ImgParams>Level-1A Image Parameters for Ultra90
    Logical_source: imap_ultra_l1a_90sensor-imgparams
    Logical_source_description: IMAP Mission IMAP-Ultra Instrument Level-1A Image Parameters Data for Ultra90

Should they be changed to

imap_ultra_l1a_45sensor-imgparams:
    <<: *instrument_base
    Data_type: L1A_45Sensor-ImgParams>Level-1A Image Parameters for Ultra45
    Logical_source: imap_ultra_l1a_45sensor-imgparams
    Logical_source_description: IMAP Mission IMAP-Ultra Instrument Level-1A Image Parameters Data for Ultra45
    MODS:
      - >-
        Major version 1, Aug. 1, 2026 - Initial release.

imap_ultra_l1a_90sensor-imgparams:
    <<: *instrument_base
    Data_type: L1A_90Sensor-ImgParams>Level-1A Image Parameters for Ultra90
    Logical_source: imap_ultra_l1a_90sensor-imgparams
    Logical_source_description: IMAP Mission IMAP-Ultra Instrument Level-1A Image Parameters Data for Ultra90
    MODS:
      - >-
        Major version 1, Aug. 1, 2026 - Initial release.

or not? This is out of scope for this PR, I'm just trying to check if there is additional work to be done here. I couldn't find an open issue on this.

@lacoak21

lacoak21 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor Author

One additional question: should all products have a MODS attribute describing Major version 1? For example, these randomly selected ones have nothing:

Yes- I keep meaning to make a ticket for that! I think all of them should have the first release MODS.

@leowerneck

Copy link
Copy Markdown
Contributor

I can open the ticket, if you don't mind.

@lacoak21

lacoak21 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor Author

No not at all thanks! Im looking into the quaternions job

@lacoak21

lacoak21 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor Author

LGTM.

I had one question, but I'd say it's non-blocking because I'm not sure it's relevant:

In imap_spacecraft_global_cdf_attrs.yaml, does imap_spacecraft_l1a_quaternions depend on the changes to attitude_history? In the orchestration dependencies I found (l1a, pointing-attitude), whose output is:

  outputs:
    - source: spacecraft
      data_type: l1a
      descriptor: pointing-attitude
      major_version: 1

but it's not obvious to me whether they are related or not.

I dont think quaternions are affected. I dont see any kernels other than the time kernels. The pointing attitude is but its not a CDF in the same way.

@tmplummer

Copy link
Copy Markdown
Contributor

had one question, but I'd say it's non-blocking because I'm not sure it's relevant:

In imap_spacecraft_global_cdf_attrs.yaml, does imap_spacecraft_l1a_quaternions depend on the changes to attitude_history? In the orchestration dependencies I found (l1a, pointing-attitude), whose output is:

  outputs:
    - source: spacecraft
      data_type: l1a
      descriptor: pointing-attitude
      major_version: 1

but it's not obvious to me whether they are related or not.

The spacecraft quaternions don't depend on the changes to attitude history. Perhaps they should be fixed, but that would require us to make code changes to manually shift the times encoded in the packets. This is why it is better to just use SPICE ;)

The pointing-attitude job depends on the attitude_history but it:

  1. doesn't have a major version since it is a kernel
  2. will match the version of the AH file it was generated from
  3. calculates the mean spin-axis during a pointing, so we would not expect it to change at all from the AH file updates

Comment thread imap_processing/cdf/config/imap_hi_global_cdf_attrs.yaml Outdated
@jtniehof

jtniehof commented Oct 7, 2026

Copy link
Copy Markdown
Collaborator

I don't think major version 1 needs a MODS...it only needs to be changes. Of course now I see the description says to include a date. I'm not getting that fixed for L3 right this second :)

@lacoak21

lacoak21 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor Author

I don't think major version 1 needs a MODS...it only needs to be changes. Of course now I see the description says to include a date. I'm not getting that fixed for L3 right this second :)

Right I think I got hung up on this:

"MODS attribute entry (one entry per major version)."

Maybe ill just skip it for now then too.

@leowerneck

Copy link
Copy Markdown
Contributor

Does that mean we shouldn't include the Major version 1 lines, but only add MODS entries with Major version 2 onwards? IDEX has a few stray Major version 1s that should be cleaned up, if that's the case.

@lacoak21

lacoak21 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor Author

Yeah I had added the major_version 1 mods to IDEX based on another discussion in the PR with those changes. We decided to add the major version 1 MODS but now it might just make more sense to start with v2. Ill make those changes now but if anyone has a strong opinion about keeping them let me know.

@leowerneck

leowerneck commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

The pointing-attitude job depends on the attitude_history but it:

  1. doesn't have a major version since it is a kernel

@tmplummer Should the dependency YAML files contain any indication of this? I couldn't identify this by looking at them, unless the indication is descriptor: pointing-attitude?

@tmplummer tmplummer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lacoak21
lacoak21 merged commit 3642029 into IMAP-Science-Operations-Center:dev Oct 8, 2026
22 checks passed
@lacoak21
lacoak21 deleted the update_mods_attrs_for_products_that_use_spin_phase_and_spin_axis branch October 8, 2026 16:31
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.

Major version bump for products affected by SPICE and spin phase updates

5 participants