Aller au contenu
English

OutpostError

import { OutpostError } from "@elie-laloum/outpost";

Erreur levée par Outpost avec un code stable, des details figés et un enregistrement recovery. cause contient l’échec reclassé ou enveloppé. Vous pouvez la lever vous-même avec new OutpostError(code, message, details?, cause?).

Exemple complet et règles détaillées.

  • recoveryRequis
    Readonly<Record<string, unknown>>
    Emplacements du travail conservé après l’échec, par exemple branch, directory, commits, transcript, logReference ou conversation ; vide si rien n’a été conservé. Un échec de synchronisation distante place plutôt son répertoire de transfert dans details.recovery.
  • codeRequis
    FaultCode
    Catégorie stable d’erreur Outpost utilisée pour le traitement programmatique des échecs.
  • detailsRequis
    Readonly<Record<string, unknown>>
    Diagnostics figés propres au code : status, stdout, stderr et conversation pour un processus d’agent en échec ; status et retryAfterMs (l’attente minimale d’une reprise de tâche) pour une erreur HTTP de modèle ; resetAt pour un quota, et fallback quand chaque candidat d’un agent de secours en a atteint un. unavailable signale une panne à unavailableFault(), y compris un délai dépassé après un échec de connexion signalé par l’agent.
  • nameRequis
    string
    Nom de classe d’erreur permettant de distinguer cet échec des autres erreurs JavaScript.
  • messageRequis
    string
    Explication lisible de l’échec.
  • stackOptionnel
    string | undefined
    Trace de pile JavaScript de l’erreur lorsqu’elle est disponible.
  • causeOptionnel
    unknown
    Échec sous-jacent que cette erreur enveloppe ; quotaFault() et unavailableFault() suivent cette chaîne.
export declare class OutpostError extends Error {
  recovery: Readonly<Record<string, unknown>>;
  readonly code: FaultCode;
  readonly details: Readonly<Record<string, unknown>>;
  constructor(
    code: FaultCode,
    message: string,
    details?: Record<string, unknown>,
    cause?: unknown,
  );
}