plan finish semantics
When triggers and cycles were implemented, the runtime semantics of plan completion were changed so that if all the non-optional sub-tasks of a plan were discarded then the plan was discarded
, not completed
. This seemed like a good idea as it allowed signalling the state of a cancelled or discarded part of plan. However in the Rwanda912 project and the carehome falls project this decision made modelling considerably more difficult. In particular when a collection of optional tasks needed to be done before another set of tasks, it was found that those tasks could be not modelled in a sub-plan plan as when they were not needed and discarded - the downstream tasks would not be run.
This issue signals the intention to reset the Plan finish semantics so that runtime a plan completes by default when all its non-optional tasks are finished (even if all have been discarded).