polaris.run.executor.StepOutcome
- class polaris.run.executor.StepOutcome(step_path: str, returncode: int, seconds: float, signal_name: str | None, succeeded: bool, terminated: bool, work_seconds: float | None = None)[source]
How a step ended.
- Variables:
step_path (str) – Which step this is about.
returncode (int) – What its process exited with. Negative means it was killed by a signal rather than exiting on its own.
seconds (float) – How long its process took, from forking it to reaping it.
work_seconds (float or None) – How long the step itself took, which is what a run should count as work.
Nonewhere the child could not say, which is any failure before it started timing.signal_name (str or None) – The signal that killed it, where one did.
succeeded (bool) – Whether it finished on its own with nothing to report.
terminated (bool) – Whether it was killed rather than failing. This is worth telling apart: memory is not enforced, so a step that uses more than it declared exhausts the node and the operating system kills whichever process it chooses, which need not be the step at fault.
- __init__(step_path: str, returncode: int, seconds: float, signal_name: str | None, succeeded: bool, terminated: bool, work_seconds: float | None = None) None
Methods
__init__(step_path, returncode, seconds, ...)Attributes
work_secondsstep_pathreturncodesecondssignal_namesucceededterminated