Aller au contenu
English

readStoredArtifact

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

Valide une référence non fiable, contrôle son contrat ainsi que le producteur et les parents attendus, puis charge les octets et vérifie leur taille et leur empreinte SHA-256 avant décodage. Chaque différence rejette avec une erreur qui la nomme, par exemple Artifact contract mismatch. S’utilise hors d’une tâche, par exemple dans un autre processus.

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

  • storeRequis
    ArtifactStore
    Store qui contient les octets de l’artefact.
  • contractRequis
    ArtifactContract<T>
    Contrat attendu : son nom, sa version et son encodage doivent correspondre à la référence, et il décode les octets.
  • valueRequis
    unknown
    Référence à lire, généralement issue de JSON analysé. Elle est validée et son id recalculé avant tout chargement d’octets.
  • optionsOptionnel
    ReadArtifactOptions | undefined
    Producteur et parents attendus, et signal d’annulation.
  • options.producerOptionnel
    ArtifactProducer | undefined
    Exécution, clé de tâche et tentative attendues ; toute différence rejette avec Artifact producer mismatch.
  • options.parentsOptionnel
    readonly ArtifactReference[] | undefined
    Références parentes attendues, dans l’ordre ; une liste différente rejette avec Artifact lineage mismatch.
  • options.signalOptionnel
    AbortSignal | undefined
    Son annulation rejette la lecture avec la raison du signal.

Promise<T>

export declare function readStoredArtifact<T>(
  store: ArtifactStore,
  contract: ArtifactContract<T>,
  value: unknown,
  options?: ReadArtifactOptions,
): Promise<T>;