@@ -29,7 +29,7 @@ import { RecipePhaseError } from "./recipe-run-phases.js"
2929import { markPreviewLeaseAvailable , markPreviewLeaseFailed , markPreviewLeaseReleased , startPreviewLeaseRecipeRun } from "./preview-lease.js"
3030import { importRecipeSiteSeeds } from "./recipe-site-seeds.js"
3131import { applyRecipeRuntimeSetup , cleanupInputMountBaselines , prepareRecipeRuntimeSetup , recipeRunDependencyOverlay , recipeRunExtraPlugin , recipeRunStagedFile , rewriteInputMountPathArgs } from "./recipe-runtime-setup.js"
32- import { provisionRuntimeServices , RuntimeServiceProvisionError , type RuntimeServiceEvidence } from "../runtime-services.js"
32+ import { provisionRuntimeServices , runtimeServiceEvidenceFromError , type RuntimeServiceEvidence } from "../runtime-services.js"
3333import { distributionStartupProbeFailure , executeRecipeCollectWorkloadResult , executeRecipeWorkflowStep , recipeAdvisoryFailure , recipeBrowserEvidence , recipeStepFailure , recipeWorkflowArgsEvidence , recipeWorkflowStepIsAdvisory , runDistributionSetupArtifacts , runDistributionStartupProbes , runRecipeProbes , withRecipeExecutionPhase } from "./recipe-run-workflow-evidence.js"
3434import type { RecipeAdvisoryFailure , RecipeBrowserEvidence , RecipeDiagnosticArtifactRef , RecipeEffectiveRecipeArtifact , RecipeExecutionResult , RecipeFuzzCaseCommandRef , RecipeFuzzCaseResult , RecipeFuzzCaseStatus , RecipeFuzzRunResult , RecipeInterruptionController , RecipePhaseEvidence , RecipePhaseName , RecipePhpWasmRuntimeDiagnostic , RecipeRunCommandOutput , RecipeRunComponentContract , RecipeRunDeclaredArtifact , RecipeRunDistributionSetupArtifact , RecipeRunDistributionStartupProbe , RecipeRunFixtureDatabase , RecipeRunOptions , RecipeRunOutput , RecipeRunProbe , RecipeRunProvenance , RecipeRunStagedFile , RecipeRuntimeDiagnostic , RecipeStepFailure , RecipeValidateOptions , RecipeValidateOutput } from "./recipe-run-types.js"
3535
@@ -422,8 +422,9 @@ async function runRecipe(options: RecipeRunOptions, interruption?: RecipeInterru
422422 output : { ...completedRecipeOutputFields ( { executions, componentContracts : componentContractResults ( recipe , extraPlugins , phaseTracker . list ( ) , executions ) , stagedFiles : stagedFiles . map ( recipeRunStagedFile ) , fixtureDatabases, siteSeeds, distributionSetupArtifacts, distributionStartupProbes, probes, declaredArtifacts, stepFailures, phaseEvidence : phaseTracker . list ( ) , advisoryFailures, browserEvidence, benchResultsList, fuzzRun : fuzzRunResult , evidence } ) , provenance : recipeRunProvenance ( recipe , recipePath ) } ,
423423 } )
424424 } catch ( error ) {
425- if ( error instanceof RuntimeServiceProvisionError ) {
426- serviceEvidence = error . evidence
425+ const failedServiceEvidence = runtimeServiceEvidenceFromError ( error )
426+ if ( failedServiceEvidence ) {
427+ serviceEvidence = failedServiceEvidence
427428 await runRegistry . update ( runRecord . runId , { metadata : { managedRuntimeServices : serviceEvidence } } )
428429 }
429430 await markPreviewLeaseFailed ( options . previewLeaseFile , error )
0 commit comments