From 4e8aa98267bb837033bf0ced58afc52d24f42492 Mon Sep 17 00:00:00 2001 From: morluto <76467478+morluto@users.noreply.github.com> Date: Fri, 24 Jul 2026 13:43:12 +0000 Subject: [PATCH] refactor(application): reuse graph evidence resolution --- .../ApplicationWorkflowEvidenceResolver.ts | 36 ++++++++----------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/src/application/ApplicationWorkflowEvidenceResolver.ts b/src/application/ApplicationWorkflowEvidenceResolver.ts index 37f16fbd8..7cd1bd2ee 100644 --- a/src/application/ApplicationWorkflowEvidenceResolver.ts +++ b/src/application/ApplicationWorkflowEvidenceResolver.ts @@ -69,16 +69,11 @@ export const resolveTraceApplicationFeatureRequestValidated = ( input: TraceApplicationFeatureRequest, lookup?: EvidenceLookup, ): Result => { - const application = - input.application === undefined - ? resolveEvidenceReferences( - lookup, - input.application_evidence_id === undefined - ? [] - : [input.application_evidence_id], - APPLICATION_GRAPH_IDENTITIES, - ) - : ok([input.application]); + const application = graphEvidence( + input.application, + input.application_evidence_id, + lookup, + ); if (!application.ok) return application; const native = resolveEvidenceReferences( lookup, @@ -86,7 +81,7 @@ export const resolveTraceApplicationFeatureRequestValidated = ( ); if (!native.ok) return native; const raw = { - application: application.value[0], + application: application.value, native_observations: [...input.native_observations, ...native.value], seed: input.seed, direction: input.direction, @@ -114,18 +109,13 @@ export const resolveTraceJavaScriptSemanticsRequestValidated = ( input: TraceJavaScriptSemanticsRequest, lookup?: EvidenceLookup, ): Result => { - const application = - input.application === undefined - ? resolveEvidenceReferences( - lookup, - input.application_evidence_id === undefined - ? [] - : [input.application_evidence_id], - APPLICATION_GRAPH_IDENTITIES, - ) - : ok([input.application]); + const application = graphEvidence( + input.application, + input.application_evidence_id, + lookup, + ); if (!application.ok) return application; - const raw = { application: application.value[0], query: input.query }; + const raw = { application: application.value, query: input.query }; const parsed = traceJavaScriptSemanticsInputSchema.safeParse(raw); return parsed.success ? ok(parsed.data) @@ -260,6 +250,8 @@ export const resolveCompareJavaScriptExportShapesRequestValidated = ( const graphEvidence = ( evidence: + | TraceApplicationFeatureRequest["application"] + | TraceJavaScriptSemanticsRequest["application"] | CompareApplicationVersionsRequest["left"] | CompareJavaScriptExportShapesRequest["left"] | CompareSourceToBundleRequest["application"],