Aller au contenu
English

SandboxContext

import type { SandboxContext } from "@elie-laloum/outpost";
  • registerRecoveryOptionnel
    ((resourceId: string) => Promise<void>) | undefined
    Enregistre un identifiant de ressource stable, d’au plus 1024 caractères, pour que recover() puisse supprimer la ressource après un crash. Outpost ne le fournit que pendant une spéculation durable : attendez-le une fois avant d’allouer, et n’allouez pas s’il rejette.
  • repositoryRequis
    string
    Chemin hôte du dépôt Git ciblé.
  • directoryRequis
    string
    Chemin hôte du worktree de cette sandbox ; un provider mounted l’expose à la racine du bail.
  • gitDirectoriesRequis
    readonly string[]
    Répertoires Git hôtes nécessaires au worktree, le sien en premier et le répertoire commun en dernier. Un provider mounted les expose pour que git fonctionne dans la sandbox.
  • variablesRequis
    Readonly<Record<string, string>>
    Environnement de chaque commande : valeurs résolues de .outpost/.env, variables du provider et identité Git d’auteur et de committer. Les variables de l’agent s’ajoutent à chaque commande.
  • signalOptionnel
    AbortSignal | undefined
    Annule l’acquisition ; libérez ce qui est déjà alloué avant de rejeter.
export interface SandboxContext {
  readonly registerRecovery?: (resourceId: string) => Promise<void>;
  readonly repository: string;
  readonly directory: string;
  readonly gitDirectories: readonly string[];
  readonly variables: Variables;
  readonly signal?: AbortSignal;
}