NASA-AMMOS/aerie

Fix sim results staleness check in Procedural Scheduling

Closed this issue · 1 comments

Description

The SimulationResults interface in the aerie.procedural.timeline.plan package has a function isStale(), which is supposed to return true if the sim results are stale/out-of-date compared to what's in the plan - ie. because the plan has changed and the simulation needs to be re-run - or false if they're up to date.

The current implementation has a bug which causes isStale() to always return false (ie. not stale), which will cause problems for goals relying on this flag to know when the sim needs to be re-run.

@JoelCourtney is investigating. The fix is a bit more complicated than expected - due to the fact that scheduling goals may drop & re-create plans multiple times, it's not quite as simple as just checking the revision of the plan against the revision stored on the SimResults object.

Closed with #1595