Aller au contenu
English

WorkflowDecision

import type { WorkflowDecision } from "@elie-laloum/outpost";
  • proofOptionnel
    WorkflowDecisionProof | undefined
    Preuve Ed25519 issue de signWorkflowDecision() portant sur cette décision exacte. Une gate signée l’exige ; une preuve envoyée à une gate non signée est aussi vérifiée et exige donc un decisionVerifier.
  • executionIdRequis
    string
    executionId de l’exécution qui a suspendu la gate, lu dans son WorkflowResult ; toute autre valeur rejette le lot entier.
  • keyRequis
    string
    Clé de la tâche gate à décider.
  • requestIdRequis
    string
    id de la demande en attente de la gate (WorkflowPauseRequest.id) ; un id périmé ou inconnu rejette le lot entier.
  • actionRequis
    "resume" | "approve" | "reject"
    approve pour une gate d’approbation, resume pour une gate de pause, ou reject pour l’une ou l’autre. reject ignore les tâches dépendantes et fait échouer l’exécution.
  • actorRequis
    string
    L’un des acteurs de la gate. Outpost fait confiance à ce nom, sauf pour une gate signée, où la clé de la preuve doit lui être liée.
  • reasonRequis
    string
    Explication non vide de la décision, conservée dans le checkpoint.
export interface WorkflowDecision {
  readonly proof?: WorkflowDecisionProof;
  readonly executionId: string;
  readonly key: string;
  readonly requestId: string;
  readonly action: "approve" | "resume" | "reject";
  readonly actor: string;
  readonly reason: string;
}