> Not sure how this is made worse by a fading knowledge of PDL? Starcheck doesn't have any PDL dependencies, so I didn't go in that direction.

I had assumed that `$ccd_temps = Data::ParseTable::parse_table($ccd_temp_file);` is returning a PDL object.  Maybe that's not the case, though I can't definitively say from the Data::ParseTable docs.  BTW, starcheck *does* have a PDL::Lite dependency via Data::ParseTable.


> Given that the aca_check is already reading the commanded states, I don't see why I'd need to have the JSON output to get a plain obsid => temperature mapping as a product before running starcheck.

There is the whole business of the precise value of `tstop`, which depends on whether a catalog followed by a maneuver.  So I was just suggesting taking starcheck's knowledge of obsid => (tstart, tstop) [as it is defined here in `set_ccd_temps`] mapping and passing it on.