You are half right. The intention is not to force to have always a key or a value since the use case might be different in various situations. But a good catch that in our specific case if the value(image) is empty qml was complaining about not finding the image which fixed in: InstructionView.qml:~97
I wasn't sure what flow sensor "response" registers were - moot now that sensors are gone. Still unsure what to do with processor/pc error counts - will resolve this in a future branch.
I don't think we should have state as overrideable. Here, you are only looking at non-override version of state, so override would not have any impact anyway. You could have Dialin function force a transition to a given state - I think that would be useful from testing perspective. But transition would need to be more than just setting state - e.g. we would need to put sensor in zero state via FPGA if we wanted to go to the zero state in your state machine.
I imagine this state should look for self-test to pass (indicate a blood leak) within some time period and then we would tell FPGA to put sensor in normal state and set your state machine to normal state. Fault if times out.
So you combined the published data into one message in the publish function above which is correct. But these overrides must be separate. You should only override one thing at a time, so overrides were ok as it was before.
I was hoping the same but in our setting, the order is so important but QSettings doesn't guaranty the reading order and will reorder the read key, value pairs. So I had to implement our own reader. For the groups, it doesn't matter much but for the key, values which are going to be the instruction pair of title, image the order is so important. please don't confuse that the designated key and values are always correct but the lines are not in correct order.
Our coding standard does not require MISRA compliance and I don't think our coding standard includes this if else rule. If you think it should be added to our standard, let's discuss.
I didn't want to change all the others to be aligned since it makes it confusing that what was actually required for the content of the change. If needed let me know to make those two to be like the others.