from enum import Enum

from monitoring.monitorlib.typing import ImplicitDict


class Severity(str, Enum):
  Critical = 'Critical'
  """The system does not function correctly on a basic level."""

  High = 'High'
  """The system may superficially function, but does not meet requirements."""

  Low = 'Low'
  """The system behaves correctly, but could be improved."""


class SubjectType(str, Enum):
    InjectedFlight = 'InjectedFlight'
    OperationalIntent = 'OperationalIntent'


class IssueSubject(ImplicitDict):
    subject_type: SubjectType
    subject: str

@@ -99,16 +99,18 @@
  Enum):%0A
+  
   Critic
@@ -125,16 +125,18 @@
 itical'%0A
+  
   %22%22%22The
@@ -188,21 +188,272 @@
 c level.
+%0A    %0A    Error is unrecoverable and left the system dirty preventing subsequent correct%0A    test run execution. For instance, inability to clean a created flight which%0A    will conflict with another run with a different combination of targets.%0A    
 %22%22%22%0A%0A
+  
   High =
@@ -460,16 +460,18 @@
  'High'%0A
+  
   %22%22%22The
@@ -537,21 +537,391 @@
 rements.
-%22%22%22%0A%0A
+%0A    %0A    Error interrupts a test run but likely doesn't impact subsequent test runs.%0A    For instance, the test failed, but all created resources can be cleaned up%0A    during teardown by the test driver.%0A    %22%22%22%0A%0A    Medium = 'Medium'%0A    %22%22%22The system functions, but does not meet requirements.%0A    %0A    Further test steps can likely be executed without impact.%0A    %22%22%22%0A%0A  
   Low = 
@@ -926,16 +926,18 @@
 = 'Low'%0A
+  
   %22%22%22The
@@ -985,16 +985,81 @@
 mproved.
+%0A    %0A    Further test steps can be executed without impact.%0A    
 %22%22%22%0A%0A%0Acl

Update Severity content (#720)