It has been decided that for ER7 the OBSERVATION INTENT bit shall be UNSET after every lockloss, thereby forcing the operator to manually re-enable to the bit each time full lock has been achieved and the operator has deemed the detector "observation ready".
I have modified the LOCKLOSS state in the ISC_LOCK guardian to set H1:ODC-OPERATOR_OBSERVATION_READY to zero:
class LOCKLOSS(GuardState):
index = 2
request = False
def main(self):
ezca['ODC-OPERATOR_OBSERVATION_READY'] = 0
return True
This change has been committed to the USERAPPS svn, but the ISC_LOCK node has not been reloaded. Someone (e.g. operator) should hit LOAD on the ISC_LOCK guardian to make this change take affect.
This is meant to be an ER7 hack only. The handling of the OBSERVATION INTENT bit will be reviewed after ER7, and a better, more structured handling of this bit (and of other modal bits) will be implemented ahead of O1.
I just spoke to Cheryl, the on duty operator, about reloading the ISC_LOCK code. While I was on the phone, she hit LOAD on the ISC_LOCK guardian control screen, and the code was reloaded without issue. We should watch to make sure that ISC_LOCK does the correct thing to unset the bit on the next lockloss.
The last change didn't take because of a little guardian subtlty. The ISC_LOCK:DOWN state is a "goto" state, which means the LOCKLOSS state experiences a "redirect" before it even executes any code. I added the "redirect = False" flag to the LOCKLOSS state which ensures that it is executed in full before the redirect.
The code was reloaded, so we're again waiting for a lock->intent->lockloss cycle to confirm that things are working.