Enable the programmatic detection of alignment errors
Hi @rardino,
To make cms-rcms/planning/run-3#12 possible SCONE needs to report when the VCU128 loses alignment. I know that we technically have a health endpoint, but if I remember correctly it wasn't really machine-readable. I think two things would be useful to allow us to quickly detect alignment errors at start:
- The start transition could return an error, potentially with more details in a JSON payload.
- The health endpoint should certainly provide those details via that same(?) JSON payload.
I'm open to other suggestions, but my reasoning for the above is that the error reporting code should anyway be only written once and it makes sense to have the reports accessible via the health endpoint. At the same time I think the transitions should report if they fail, so in our case the start transition should probably check if the board is healthy once it's performed all its actions and then return an appropriate status code. I don't have a strong opinion on whether the transition itself should send the more detailed report.
Let me know what you think!
Cheers, Dinyar