NASA-AMMOS / aerie

A software framework for modeling spacecraft.
https://nasa-ammos.github.io/aerie-docs/
MIT License
73 stars 19 forks source link

Return the Executing Directive Id in Simulation Error Response #1385

Closed Mythicaeda closed 7 months ago

Mythicaeda commented 7 months ago

Description

If an activity directive throws an exception while executing, the offending directive id will now be included in the data part of the reason under the executingDirectiveId key.

This was accomplished by wrapping exceptions raised while stepping tasks in a SpanException. When this exception is caught, the driver will attempt to get the directiveId from that span before rewrapping the exception into a SimulationException, providing this id if it was found. Additionally, when a SimulationException is returned as the reason for a SimFailure, the message field is now populated with the exceptions message;

Verification

The SimulationExceptionResponse tests were added.

In order to support these tests, the foo mission model gained a simulation configuration parameter and a new activity type.

Documentation

No docs need to be updated.

Future work