Ultimately, this probably won't matter much for our experiments, but is good to include for completeness.
There's a small caveat with handling "false-alarm" warnings, i.e. cases where a warning was raised, but then lowered without escalating to an alarm. This implementation is kind of naive in that, once it receives a warning it keeps buffering samples until a full alarm is next raised. Obviously, this would negatively impact model performance and memory usage, but since it's such an edge case for us, I couldn't be bothered to add anything to defend against it.
We should consider patching that in the future, though that might require more structural changes to our implementation.
Ultimately, this probably won't matter much for our experiments, but is good to include for completeness.
There's a small caveat with handling "false-alarm" warnings, i.e. cases where a warning was raised, but then lowered without escalating to an alarm. This implementation is kind of naive in that, once it receives a warning it keeps buffering samples until a full alarm is next raised. Obviously, this would negatively impact model performance and memory usage, but since it's such an edge case for us, I couldn't be bothered to add anything to defend against it.
We should consider patching that in the future, though that might require more structural changes to our implementation.
Closes #24