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.
Description
The
SimulationResults
interface in theaerie.procedural.timeline.plan
package has a functionisStale()
, which is supposed to returntrue
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 - orfalse
if they're up to date.The current implementation has a bug which causes
isStale()
to always returnfalse
(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.