durabilityOptionnel
SpeculationDurability | undefined
Enregistre la course via un Transport pour la reprendre après un plantage ou un arrêt de quota. Exige un provider doté de recover ; omettez-le pour une course en mémoire.
cleanupMsOptionnel
number | undefined
Attente de chaque fermeture de sandbox ou récupération de ressource, et des candidats en cours après une annulation, 30000 par défaut. Au-delà, le nettoyage reste en attente.
observationOptionnel
ObservationHub | undefined
Hub parent des événements de tous les candidats, délimités par clé de candidat ; il remplace l’observation propre à chaque request.
repositoryRequis
string
Checkout Git hôte. Son commit HEAD au premier démarrage de la course sert de baseline à toutes les branches candidates.
sandboxProviderRequis
SandboxProvider
Provider qui alloue la sandbox de chaque candidat. Le mode durable en exige un doté de recover : Docker ou Podman en mode monté.
candidatesRequis
readonly SpeculativeCandidate<T>[]
1 à 8 candidats aux clés uniques, démarrés dans l’ordre de la liste selon concurrency.
concurrencyOptionnel
number | undefined
Nombre maximal de candidats exécutés à la fois, de 1 à 8, 2 par défaut.
budgetRequis
WorkflowBudget
Limites partagées par tous les candidats. Chaque démarrage consomme une unité de attempts et la limite empêche tout nouveau démarrage ; atteindre une limite de tokens de usage annule les candidats en cours. Les tokens consommés dans validate ne sont pas comptés.
signalOptionnel
AbortSignal | undefined
Son annulation arrête les candidats en cours et termine la course avec le statut aborted.
sandboxOptionnel
Pick<SandboxOptions, "hooks" | "storageQuota" | "limits" | "logging" | "bootstrap" | "conversationHome"> | undefined
Réglages de sandbox appliqués à chaque candidat : hooks, bootstrap, logging, limits, storageQuota et conversationHome.
validateRequis
(candidate: SpeculativeValidation<T>) => boolean | Promise<boolean>
Décide si un candidat terminé est acceptable, à partir de sa sortie de dispatch et de sa sandbox active ; true l’accepte. Une exception marque le candidat failed.