export type ExitStatus = 0 | 1 | 2 | 3 | 4 | 5;

export type RunConditions = {
  configError: boolean;
  reviewConflict: boolean;
  blockingViolation: boolean;
  harnessFailure: boolean;
  coverageIncomplete: boolean;
};

export function computeExitStatus(c: RunConditions): ExitStatus {
  if (c.configError) return 2;
  if (c.reviewConflict) return 5;
  if (c.blockingViolation) return 1;
  if (c.harnessFailure) return 3;
  if (c.coverageIncomplete) return 4;
  return 0;
}
