mirror of
https://github.com/morluto/rea
synced 2026-10-27 14:42:18 -04:00
fix(javascript): retain unresolved network targets with provenance
Resolve stable lexical and URL targets using shared effects, and preserve unresolved request expressions as partial facts. Carry their uncertainty through workers, artifact graphs, and the CLI. Scope partial endpoint identity to the source site. Refs: #3451, #3534 Co-authored-by: Hemang Varshney <218273197+hemv-857@users.noreply.github.com>
This commit is contained in:
@@ -42,6 +42,14 @@ export interface JavaScriptAnalysisAccumulator {
|
||||
electronCallPathLimitReached?: boolean;
|
||||
readonly references: LocatedJavaScriptFinding<JavaScriptStaticReference>[];
|
||||
readonly endpoints: LocatedJavaScriptFinding<JavaScriptStaticEndpoint>[];
|
||||
/** Dynamic targets held until the shared mutation index is requested on demand. */
|
||||
readonly pendingNetworkCalls: {
|
||||
readonly node:
|
||||
| t.CallExpression
|
||||
| t.OptionalCallExpression
|
||||
| t.NewExpression;
|
||||
readonly name: string;
|
||||
}[];
|
||||
readonly storage: LocatedJavaScriptFinding<JavaScriptStaticStorage>[];
|
||||
readonly roles: LocatedJavaScriptFinding<JavaScriptRolePath>[];
|
||||
readonly sourceMaps: JavaScriptStaticAnalysis["source_map_urls"][number][];
|
||||
@@ -87,6 +95,7 @@ export interface JavaScriptEndpointInput {
|
||||
readonly value: string;
|
||||
readonly mechanism: string;
|
||||
readonly interpretation?: "candidate";
|
||||
readonly resolution?: "partial";
|
||||
}
|
||||
|
||||
/** Values required to append one module-attributable static finding. */
|
||||
@@ -105,6 +114,7 @@ export const createJavaScriptAnalysisAccumulator = (
|
||||
): JavaScriptAnalysisAccumulator => ({
|
||||
references: [],
|
||||
endpoints: [],
|
||||
pendingNetworkCalls: [],
|
||||
storage: [],
|
||||
roles: [],
|
||||
sourceMaps: [],
|
||||
|
||||
Reference in New Issue
Block a user