@shapeshift-labs/frontier-lang-compiler 0.2.40 → 0.2.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. package/README.md +100 -0
  2. package/bench/compile-suite.mjs +31 -0
  3. package/bench/native-adapters.mjs +32 -0
  4. package/bench/native-import-suite.mjs +79 -0
  5. package/bench/native-matrix-suite.mjs +64 -0
  6. package/bench/native-transform-suite.mjs +125 -0
  7. package/bench/smoke.mjs +80 -375
  8. package/bench/source-change-suite.mjs +111 -0
  9. package/dist/coverage-matrix-profiles.js +19 -0
  10. package/dist/declarations/adapter-coverage.d.ts +181 -0
  11. package/dist/declarations/compile.d.ts +110 -0
  12. package/dist/declarations/import-adapter-core.d.ts +233 -0
  13. package/dist/declarations/import-adapter-options-native.d.ts +185 -0
  14. package/dist/declarations/import-adapter-options-platform.d.ts +204 -0
  15. package/dist/declarations/language-adapter-package-contracts.d.ts +190 -0
  16. package/dist/declarations/native-diff.d.ts +240 -0
  17. package/dist/declarations/native-import-contracts.d.ts +211 -0
  18. package/dist/declarations/native-import-coverage.d.ts +107 -0
  19. package/dist/declarations/native-import-losses.d.ts +199 -0
  20. package/dist/declarations/native-parser-features.d.ts +227 -0
  21. package/dist/declarations/native-parser-formats.d.ts +132 -0
  22. package/dist/declarations/native-project-admission.d.ts +160 -0
  23. package/dist/declarations/native-project.d.ts +209 -0
  24. package/dist/declarations/projection-coverage.d.ts +146 -0
  25. package/dist/declarations/projection-readiness.d.ts +115 -0
  26. package/dist/declarations/roundtrip.d.ts +200 -0
  27. package/dist/declarations/runtime.d.ts +135 -0
  28. package/dist/declarations/semantic-history.d.ts +188 -0
  29. package/dist/declarations/semantic-merge-conflicts.d.ts +82 -0
  30. package/dist/declarations/semantic-patch-bundle.d.ts +210 -0
  31. package/dist/declarations/semantic-sidecar-admission.d.ts +61 -0
  32. package/dist/declarations/semantic-sidecar.d.ts +317 -0
  33. package/dist/declarations/semantic-slice.d.ts +228 -0
  34. package/dist/declarations/source-preservation.d.ts +126 -0
  35. package/dist/declarations/target-adapters.d.ts +138 -0
  36. package/dist/declarations/universal-capability.d.ts +148 -0
  37. package/dist/declarations/universal-dialects.d.ts +242 -0
  38. package/dist/index.d.ts +28 -2570
  39. package/dist/index.js +76 -16575
  40. package/dist/internal/index-impl/ExternalSemanticIndexFormats.js +8 -0
  41. package/dist/internal/index-impl/FrontierCompileTargets.js +7 -0
  42. package/dist/internal/index-impl/NativeImportFeatureEvidencePolicies.js +111 -0
  43. package/dist/internal/index-impl/NativeImportLossKinds.js +24 -0
  44. package/dist/internal/index-impl/NativeImportReadinessBySeverity.js +6 -0
  45. package/dist/internal/index-impl/NativeImportRoundtripReadinessStatuses.js +7 -0
  46. package/dist/internal/index-impl/NativeImportTaxonomyKinds.js +19 -0
  47. package/dist/internal/index-impl/adapterCoverageCapabilityRow.js +13 -0
  48. package/dist/internal/index-impl/adapterCoverageSnapshotFromSummary.js +13 -0
  49. package/dist/internal/index-impl/adapterCoverageSourcePreservation.js +6 -0
  50. package/dist/internal/index-impl/adapterDiagnosticToLoss.js +23 -0
  51. package/dist/internal/index-impl/adapterDiagnosticsEvidence.js +27 -0
  52. package/dist/internal/index-impl/addLspSemanticTokens.js +32 -0
  53. package/dist/internal/index-impl/addLspSymbol.js +44 -0
  54. package/dist/internal/index-impl/addSet.js +5 -0
  55. package/dist/internal/index-impl/attachExternalOwnership.js +79 -0
  56. package/dist/internal/index-impl/attachNativeChangeRegionProjectionMetadata.js +13 -0
  57. package/dist/internal/index-impl/attachNativeImportLossSummary.js +11 -0
  58. package/dist/internal/index-impl/canonicalTargets.js +7 -0
  59. package/dist/internal/index-impl/clangAstChildEntries.js +9 -0
  60. package/dist/internal/index-impl/clangAstDeclaration.js +44 -0
  61. package/dist/internal/index-impl/clangAstKind.js +7 -0
  62. package/dist/internal/index-impl/clangAstNodeValue.js +7 -0
  63. package/dist/internal/index-impl/clangAstRoot.js +14 -0
  64. package/dist/internal/index-impl/clangDeclarationAction.js +7 -0
  65. package/dist/internal/index-impl/clangDeclarationName.js +10 -0
  66. package/dist/internal/index-impl/clangIncludePath.js +8 -0
  67. package/dist/internal/index-impl/clangLiteralValue.js +6 -0
  68. package/dist/internal/index-impl/clangLocPosition.js +12 -0
  69. package/dist/internal/index-impl/clangLocationKind.js +8 -0
  70. package/dist/internal/index-impl/clangPreprocessorKind.js +3 -0
  71. package/dist/internal/index-impl/clangPreprocessorRecords.js +8 -0
  72. package/dist/internal/index-impl/clangTypeName.js +9 -0
  73. package/dist/internal/index-impl/classifyNativeImportReadiness.js +9 -0
  74. package/dist/internal/index-impl/classifyNativeImportRoundtripReadiness.js +129 -0
  75. package/dist/internal/index-impl/compileFrontierDocument.js +28 -0
  76. package/dist/internal/index-impl/compileFrontierSource.js +8 -0
  77. package/dist/internal/index-impl/compileNativeSource.js +186 -0
  78. package/dist/internal/index-impl/compileTargetLanguage.js +5 -0
  79. package/dist/internal/index-impl/coverageMatrixContext.js +20 -0
  80. package/dist/internal/index-impl/createAstNormalizationContext.js +14 -0
  81. package/dist/internal/index-impl/createBabelNativeImporterAdapter.js +18 -0
  82. package/dist/internal/index-impl/createCSharpRoslynNativeImporterAdapter.js +68 -0
  83. package/dist/internal/index-impl/createClangAstNativeImporterAdapter.js +59 -0
  84. package/dist/internal/index-impl/createEstreeNativeImporterAdapter.js +12 -0
  85. package/dist/internal/index-impl/createGoAstNativeImporterAdapter.js +63 -0
  86. package/dist/internal/index-impl/createJavaAstNativeImporterAdapter.js +66 -0
  87. package/dist/internal/index-impl/createKotlinPsiNativeImporterAdapter.js +73 -0
  88. package/dist/internal/index-impl/createLightweightNativeImport.js +154 -0
  89. package/dist/internal/index-impl/createNativeImportCoverageMatrix.js +5 -0
  90. package/dist/internal/index-impl/createNativeImportFromCSharpRoslyn.js +39 -0
  91. package/dist/internal/index-impl/createNativeImportFromClangAst.js +36 -0
  92. package/dist/internal/index-impl/createNativeImportFromGoAst.js +35 -0
  93. package/dist/internal/index-impl/createNativeImportFromJavaAst.js +39 -0
  94. package/dist/internal/index-impl/createNativeImportFromKotlinPsi.js +47 -0
  95. package/dist/internal/index-impl/createNativeImportFromPythonAst.js +30 -0
  96. package/dist/internal/index-impl/createNativeImportFromRustSyn.js +30 -0
  97. package/dist/internal/index-impl/createNativeImportFromSwiftSyntax.js +37 -0
  98. package/dist/internal/index-impl/createNativeImportFromSyntaxAst.js +36 -0
  99. package/dist/internal/index-impl/createNativeImportFromTreeSitter.js +125 -0
  100. package/dist/internal/index-impl/createNativeImportFromTypeScriptAst.js +24 -0
  101. package/dist/internal/index-impl/createNativeImportResultContract.js +78 -0
  102. package/dist/internal/index-impl/createNativeParserAstFormatMatrix.js +5 -0
  103. package/dist/internal/index-impl/createNativeParserFeatureMatrix.js +5 -0
  104. package/dist/internal/index-impl/createNativeProjectImportResult.js +126 -0
  105. package/dist/internal/index-impl/createNativeRoundtripEvidence.js +117 -0
  106. package/dist/internal/index-impl/createNativeSourcePreservation.js +64 -0
  107. package/dist/internal/index-impl/createProjectImportAdmissionRecord.js +91 -0
  108. package/dist/internal/index-impl/createProjectionReadinessMatrix.js +5 -0
  109. package/dist/internal/index-impl/createProjectionTargetLossMatrix.js +5 -0
  110. package/dist/internal/index-impl/createPythonAstNativeImporterAdapter.js +52 -0
  111. package/dist/internal/index-impl/createRustSynNativeImporterAdapter.js +56 -0
  112. package/dist/internal/index-impl/createSemanticImportSidecar.js +105 -0
  113. package/dist/internal/index-impl/createSemanticImportSidecarAdmission.js +160 -0
  114. package/dist/internal/index-impl/createSemanticSlice.js +137 -0
  115. package/dist/internal/index-impl/createSwiftSyntaxNativeImporterAdapter.js +62 -0
  116. package/dist/internal/index-impl/createTreeSitterNativeImporterAdapter.js +58 -0
  117. package/dist/internal/index-impl/createTypeScriptCompilerNativeImporterAdapter.js +45 -0
  118. package/dist/internal/index-impl/createUniversalAstFromDocument.js +15 -0
  119. package/dist/internal/index-impl/createUniversalCapabilityMatrix.js +5 -0
  120. package/dist/internal/index-impl/csharpEvidenceSummary.js +18 -0
  121. package/dist/internal/index-impl/csharpGeneratedCodeLoss.js +20 -0
  122. package/dist/internal/index-impl/csharpGeneratedCodeMarker.js +16 -0
  123. package/dist/internal/index-impl/csharpGeneratedSourcePath.js +3 -0
  124. package/dist/internal/index-impl/csharpRoslynChildEntries.js +18 -0
  125. package/dist/internal/index-impl/csharpRoslynChildWithParent.js +6 -0
  126. package/dist/internal/index-impl/csharpRoslynDeclarationName.js +11 -0
  127. package/dist/internal/index-impl/csharpRoslynDeclarations.js +53 -0
  128. package/dist/internal/index-impl/csharpRoslynDirectiveKind.js +3 -0
  129. package/dist/internal/index-impl/csharpRoslynHasBody.js +3 -0
  130. package/dist/internal/index-impl/csharpRoslynKind.js +11 -0
  131. package/dist/internal/index-impl/csharpRoslynLiteralValue.js +5 -0
  132. package/dist/internal/index-impl/csharpRoslynMethodLikeKind.js +7 -0
  133. package/dist/internal/index-impl/csharpRoslynModifierNames.js +16 -0
  134. package/dist/internal/index-impl/csharpRoslynName.js +13 -0
  135. package/dist/internal/index-impl/csharpRoslynNodeValue.js +7 -0
  136. package/dist/internal/index-impl/csharpRoslynOperatorName.js +8 -0
  137. package/dist/internal/index-impl/csharpRoslynPosition.js +27 -0
  138. package/dist/internal/index-impl/csharpRoslynPositionKind.js +6 -0
  139. package/dist/internal/index-impl/csharpRoslynProblemNode.js +14 -0
  140. package/dist/internal/index-impl/csharpRoslynRecoveredKind.js +5 -0
  141. package/dist/internal/index-impl/csharpRoslynRoot.js +15 -0
  142. package/dist/internal/index-impl/csharpRoslynTypeDeclarationKind.js +8 -0
  143. package/dist/internal/index-impl/csharpRoslynTypeDeclarationSymbolKind.js +5 -0
  144. package/dist/internal/index-impl/csharpRoslynTypeName.js +19 -0
  145. package/dist/internal/index-impl/csharpRoslynUsingPath.js +5 -0
  146. package/dist/internal/index-impl/csharpRoslynVariableNames.js +10 -0
  147. package/dist/internal/index-impl/declarationRecord.js +11 -0
  148. package/dist/internal/index-impl/declarationSemanticCoverage.js +10 -0
  149. package/dist/internal/index-impl/diffNativeOwnershipRegions.js +19 -0
  150. package/dist/internal/index-impl/diffNativeSourceImports.js +166 -0
  151. package/dist/internal/index-impl/diffNativeSources.js +25 -0
  152. package/dist/internal/index-impl/diffNativeSymbols.js +41 -0
  153. package/dist/internal/index-impl/effectiveAdapterExactness.js +6 -0
  154. package/dist/internal/index-impl/effectiveNativeImporterAdapterCoverage.js +21 -0
  155. package/dist/internal/index-impl/emitForTarget.js +4 -0
  156. package/dist/internal/index-impl/emitForTargetWithSourceMap.js +11 -0
  157. package/dist/internal/index-impl/ensureTrailingNewline.js +4 -0
  158. package/dist/internal/index-impl/expandSemanticSliceSelection.js +51 -0
  159. package/dist/internal/index-impl/externalDiagnosticFact.js +22 -0
  160. package/dist/internal/index-impl/externalDiagnosticLoss.js +20 -0
  161. package/dist/internal/index-impl/externalDiagnosticSeverity.js +7 -0
  162. package/dist/internal/index-impl/externalDocument.js +12 -0
  163. package/dist/internal/index-impl/externalFact.js +10 -0
  164. package/dist/internal/index-impl/externalLanguageNameByNumber.js +23 -0
  165. package/dist/internal/index-impl/externalOccurrence.js +13 -0
  166. package/dist/internal/index-impl/externalRelation.js +10 -0
  167. package/dist/internal/index-impl/externalRelationPredicateForOccurrence.js +8 -0
  168. package/dist/internal/index-impl/externalSemanticBase.js +15 -0
  169. package/dist/internal/index-impl/externalSemanticCoverageLoss.js +17 -0
  170. package/dist/internal/index-impl/externalSemanticEvidence.js +16 -0
  171. package/dist/internal/index-impl/externalSemanticSourceMapMappings.js +26 -0
  172. package/dist/internal/index-impl/externalSymbol.js +14 -0
  173. package/dist/internal/index-impl/externalSymbolKindByNumber.js +32 -0
  174. package/dist/internal/index-impl/fileLevelNativeChangeRegion.js +23 -0
  175. package/dist/internal/index-impl/findSemanticImportRegion.js +6 -0
  176. package/dist/internal/index-impl/freezeNativeImporterAdapterCoverageSnapshot.js +13 -0
  177. package/dist/internal/index-impl/getNativeImportFeatureEvidencePolicy.js +5 -0
  178. package/dist/internal/index-impl/getNativeParserAstFormatProfile.js +4 -0
  179. package/dist/internal/index-impl/goAstChildEntries.js +23 -0
  180. package/dist/internal/index-impl/goAstDeclarationName.js +9 -0
  181. package/dist/internal/index-impl/goAstDeclarations.js +30 -0
  182. package/dist/internal/index-impl/goAstIdentName.js +5 -0
  183. package/dist/internal/index-impl/goAstImportPath.js +7 -0
  184. package/dist/internal/index-impl/goAstKind.js +15 -0
  185. package/dist/internal/index-impl/goAstLiteralValue.js +5 -0
  186. package/dist/internal/index-impl/goAstNodeValue.js +7 -0
  187. package/dist/internal/index-impl/goAstPackageName.js +5 -0
  188. package/dist/internal/index-impl/goAstPosition.js +30 -0
  189. package/dist/internal/index-impl/goAstPositionKind.js +6 -0
  190. package/dist/internal/index-impl/goAstReceiverName.js +8 -0
  191. package/dist/internal/index-impl/goAstRoot.js +12 -0
  192. package/dist/internal/index-impl/goAstTokenName.js +6 -0
  193. package/dist/internal/index-impl/goAstTypeName.js +27 -0
  194. package/dist/internal/index-impl/goAstTypeSpecSymbolKind.js +8 -0
  195. package/dist/internal/index-impl/goAstValueSpecName.js +4 -0
  196. package/dist/internal/index-impl/goAstValueSpecNames.js +7 -0
  197. package/dist/internal/index-impl/goBadAstKind.js +3 -0
  198. package/dist/internal/index-impl/goGeneratedCodeMarker.js +7 -0
  199. package/dist/internal/index-impl/goReceiverFieldCount.js +4 -0
  200. package/dist/internal/index-impl/goTypeEvidenceSummary.js +9 -0
  201. package/dist/internal/index-impl/hasNativeExactAstEvidence.js +13 -0
  202. package/dist/internal/index-impl/hashNativeSpanText.js +6 -0
  203. package/dist/internal/index-impl/identifierName.js +9 -0
  204. package/dist/internal/index-impl/ignoredCSharpRoslynField.js +31 -0
  205. package/dist/internal/index-impl/ignoredClangAstField.js +19 -0
  206. package/dist/internal/index-impl/ignoredGoAstField.js +23 -0
  207. package/dist/internal/index-impl/ignoredJavaAstField.js +29 -0
  208. package/dist/internal/index-impl/ignoredKotlinPsiField.js +26 -0
  209. package/dist/internal/index-impl/ignoredPythonAstField.js +17 -0
  210. package/dist/internal/index-impl/ignoredRustSynField.js +11 -0
  211. package/dist/internal/index-impl/ignoredSwiftSyntaxField.js +27 -0
  212. package/dist/internal/index-impl/ignoredSyntaxField.js +15 -0
  213. package/dist/internal/index-impl/importExternalSemanticIndex.js +141 -0
  214. package/dist/internal/index-impl/importNativeProject.js +26 -0
  215. package/dist/internal/index-impl/importNativeSource.js +317 -0
  216. package/dist/internal/index-impl/inferExternalSemanticIndexFormat.js +46 -0
  217. package/dist/internal/index-impl/inferredAdapterCoverageNotes.js +8 -0
  218. package/dist/internal/index-impl/inferredAdapterExactness.js +5 -0
  219. package/dist/internal/index-impl/inferredSemanticCoverageLevel.js +5 -0
  220. package/dist/internal/index-impl/isCSharpRoslynNode.js +4 -0
  221. package/dist/internal/index-impl/isClangAstNode.js +4 -0
  222. package/dist/internal/index-impl/isGoAstNode.js +4 -0
  223. package/dist/internal/index-impl/isJavaAstNode.js +4 -0
  224. package/dist/internal/index-impl/isKotlinPsiNode.js +4 -0
  225. package/dist/internal/index-impl/isNativeSourceImportResult.js +3 -0
  226. package/dist/internal/index-impl/isPythonAstNode.js +4 -0
  227. package/dist/internal/index-impl/isRustSynAstNode.js +4 -0
  228. package/dist/internal/index-impl/isSwiftSyntaxNode.js +4 -0
  229. package/dist/internal/index-impl/isSyntaxAstNode.js +3 -0
  230. package/dist/internal/index-impl/javaAnnotationProcessingSummary.js +13 -0
  231. package/dist/internal/index-impl/javaAstChildEntries.js +18 -0
  232. package/dist/internal/index-impl/javaAstChildWithParent.js +6 -0
  233. package/dist/internal/index-impl/javaAstDeclarationName.js +11 -0
  234. package/dist/internal/index-impl/javaAstDeclarations.js +35 -0
  235. package/dist/internal/index-impl/javaAstFieldNames.js +7 -0
  236. package/dist/internal/index-impl/javaAstHasBody.js +3 -0
  237. package/dist/internal/index-impl/javaAstImportPath.js +8 -0
  238. package/dist/internal/index-impl/javaAstKind.js +12 -0
  239. package/dist/internal/index-impl/javaAstLiteralValue.js +5 -0
  240. package/dist/internal/index-impl/javaAstModifierNames.js +16 -0
  241. package/dist/internal/index-impl/javaAstName.js +14 -0
  242. package/dist/internal/index-impl/javaAstNodeValue.js +8 -0
  243. package/dist/internal/index-impl/javaAstPackageName.js +5 -0
  244. package/dist/internal/index-impl/javaAstPosition.js +32 -0
  245. package/dist/internal/index-impl/javaAstPositionKind.js +7 -0
  246. package/dist/internal/index-impl/javaAstRoot.js +14 -0
  247. package/dist/internal/index-impl/javaAstTypeName.js +22 -0
  248. package/dist/internal/index-impl/javaBindingEvidenceSummary.js +10 -0
  249. package/dist/internal/index-impl/javaGeneratedCodeLoss.js +20 -0
  250. package/dist/internal/index-impl/javaGeneratedCodeMarker.js +16 -0
  251. package/dist/internal/index-impl/javaLombokAnnotationMarker.js +6 -0
  252. package/dist/internal/index-impl/javaPathEvidenceSummary.js +14 -0
  253. package/dist/internal/index-impl/javaProblemNode.js +3 -0
  254. package/dist/internal/index-impl/javaRecoveredAstKind.js +4 -0
  255. package/dist/internal/index-impl/javaTypeDeclarationKind.js +7 -0
  256. package/dist/internal/index-impl/javaTypeDeclarationSymbolKind.js +5 -0
  257. package/dist/internal/index-impl/kotlinCompilerPluginAnnotationNode.js +5 -0
  258. package/dist/internal/index-impl/kotlinContractNode.js +3 -0
  259. package/dist/internal/index-impl/kotlinCoroutineNode.js +8 -0
  260. package/dist/internal/index-impl/kotlinEvidenceSummary.js +21 -0
  261. package/dist/internal/index-impl/kotlinExpectActualNode.js +5 -0
  262. package/dist/internal/index-impl/kotlinGeneratedCodeLoss.js +22 -0
  263. package/dist/internal/index-impl/kotlinGeneratedCodeMarker.js +6 -0
  264. package/dist/internal/index-impl/kotlinGeneratedSourcePath.js +3 -0
  265. package/dist/internal/index-impl/kotlinPsiAnnotationNames.js +10 -0
  266. package/dist/internal/index-impl/kotlinPsiChildEntries.js +18 -0
  267. package/dist/internal/index-impl/kotlinPsiChildWithParent.js +6 -0
  268. package/dist/internal/index-impl/kotlinPsiDeclarationName.js +14 -0
  269. package/dist/internal/index-impl/kotlinPsiDeclarations.js +37 -0
  270. package/dist/internal/index-impl/kotlinPsiHasBody.js +3 -0
  271. package/dist/internal/index-impl/kotlinPsiImportPath.js +8 -0
  272. package/dist/internal/index-impl/kotlinPsiKind.js +13 -0
  273. package/dist/internal/index-impl/kotlinPsiModifiers.js +22 -0
  274. package/dist/internal/index-impl/kotlinPsiName.js +14 -0
  275. package/dist/internal/index-impl/kotlinPsiNodeValue.js +7 -0
  276. package/dist/internal/index-impl/kotlinPsiPackageName.js +8 -0
  277. package/dist/internal/index-impl/kotlinPsiPosition.js +27 -0
  278. package/dist/internal/index-impl/kotlinPsiPositionKind.js +6 -0
  279. package/dist/internal/index-impl/kotlinPsiProblemNode.js +10 -0
  280. package/dist/internal/index-impl/kotlinPsiRecoveredKind.js +5 -0
  281. package/dist/internal/index-impl/kotlinPsiRoot.js +15 -0
  282. package/dist/internal/index-impl/kotlinPsiTypeDeclarationKind.js +5 -0
  283. package/dist/internal/index-impl/kotlinPsiTypeDeclarationSymbolKind.js +8 -0
  284. package/dist/internal/index-impl/kotlinPsiTypeName.js +18 -0
  285. package/dist/internal/index-impl/kotlinPsiVariableNames.js +7 -0
  286. package/dist/internal/index-impl/kotlinScriptLoss.js +22 -0
  287. package/dist/internal/index-impl/kotlinUnsupportedSemanticLoss.js +23 -0
  288. package/dist/internal/index-impl/lineColumnForOffset.js +15 -0
  289. package/dist/internal/index-impl/literalSyntaxValue.js +4 -0
  290. package/dist/internal/index-impl/lossSeverityRank.js +6 -0
  291. package/dist/internal/index-impl/lspSymbolKindByNumber.js +19 -0
  292. package/dist/internal/index-impl/mapDiffSymbols.js +39 -0
  293. package/dist/internal/index-impl/matchingNativeTargetProjectionAdapter.js +4 -0
  294. package/dist/internal/index-impl/maxSemanticCoverageLevel.js +6 -0
  295. package/dist/internal/index-impl/mergeNativeLosses.js +12 -0
  296. package/dist/internal/index-impl/mergeSemanticIndexes.js +19 -0
  297. package/dist/internal/index-impl/mergeSemanticSliceSymbols.js +16 -0
  298. package/dist/internal/index-impl/missingInjectedParserResult.js +51 -0
  299. package/dist/internal/index-impl/nameFromExternalSymbol.js +10 -0
  300. package/dist/internal/index-impl/namedDeclaration.js +5 -0
  301. package/dist/internal/index-impl/nativeAstNodes.js +4 -0
  302. package/dist/internal/index-impl/nativeChangeMappingTouchesRegion.js +17 -0
  303. package/dist/internal/index-impl/nativeChangeProjectionEndpoint.js +28 -0
  304. package/dist/internal/index-impl/nativeChangeProjectionSourceMapLinks.js +33 -0
  305. package/dist/internal/index-impl/nativeChangeSpans.js +37 -0
  306. package/dist/internal/index-impl/nativeChangeSymbolTouchesRegion.js +10 -0
  307. package/dist/internal/index-impl/nativeChangeTouchedSymbol.js +21 -0
  308. package/dist/internal/index-impl/nativeChangedRegionProjectionAction.js +7 -0
  309. package/dist/internal/index-impl/nativeChangedRegionProjectionMetadata.js +49 -0
  310. package/dist/internal/index-impl/nativeChangedRegionProjectionSpanMetadata.js +12 -0
  311. package/dist/internal/index-impl/nativeCompileSourceLanguage.js +10 -0
  312. package/dist/internal/index-impl/nativeCompileTarget.js +10 -0
  313. package/dist/internal/index-impl/nativeDiffSymbolChanged.js +7 -0
  314. package/dist/internal/index-impl/nativeDiffSymbolKey.js +7 -0
  315. package/dist/internal/index-impl/nativeFeatureEvidenceRiskRank.js +6 -0
  316. package/dist/internal/index-impl/nativeImportCategoryForLossKind.js +16 -0
  317. package/dist/internal/index-impl/nativeImportEntries.js +4 -0
  318. package/dist/internal/index-impl/nativeImportFeatureEvidenceHasKey.js +5 -0
  319. package/dist/internal/index-impl/nativeImportFeatureEvidenceIds.js +10 -0
  320. package/dist/internal/index-impl/nativeImportFeatureEvidencePolicy.js +14 -0
  321. package/dist/internal/index-impl/nativeImportFeatureEvidenceReasons.js +8 -0
  322. package/dist/internal/index-impl/nativeImportFeatureEvidenceValue.js +11 -0
  323. package/dist/internal/index-impl/nativeImportFeatureEvidenceValuePresent.js +7 -0
  324. package/dist/internal/index-impl/nativeImportHasExactAstCoverage.js +5 -0
  325. package/dist/internal/index-impl/nativeImportProjectionContext.js +40 -0
  326. package/dist/internal/index-impl/nativeImportReadiness.js +6 -0
  327. package/dist/internal/index-impl/nativeImportReadinessReasons.js +16 -0
  328. package/dist/internal/index-impl/nativeImportRoundtripParser.js +10 -0
  329. package/dist/internal/index-impl/nativeImportRoundtripReasons.js +22 -0
  330. package/dist/internal/index-impl/nativeImportSourcePreservationRecord.js +6 -0
  331. package/dist/internal/index-impl/nativeImportSourceText.js +6 -0
  332. package/dist/internal/index-impl/nativeImporterAdapterCapabilityEvidence.js +59 -0
  333. package/dist/internal/index-impl/nativeImporterAdapterCoverage.js +12 -0
  334. package/dist/internal/index-impl/nativeJavaScriptImporterDeps.js +12 -0
  335. package/dist/internal/index-impl/nativeNodeId.js +8 -0
  336. package/dist/internal/index-impl/nativeProjectionDeclarationKind.js +12 -0
  337. package/dist/internal/index-impl/nativeProjectionDeclarations.js +48 -0
  338. package/dist/internal/index-impl/nativeProjectionImportOnlySymbol.js +5 -0
  339. package/dist/internal/index-impl/nativeProjectionKindForNode.js +12 -0
  340. package/dist/internal/index-impl/nativeProjectionLineComment.js +5 -0
  341. package/dist/internal/index-impl/nativeProjectionLoss.js +23 -0
  342. package/dist/internal/index-impl/nativeProjectionSourceCandidate.js +22 -0
  343. package/dist/internal/index-impl/nativeProjectionStubHeader.js +11 -0
  344. package/dist/internal/index-impl/nativeProjectionStubLosses.js +36 -0
  345. package/dist/internal/index-impl/nativeSourceChangeReasons.js +11 -0
  346. package/dist/internal/index-impl/nativeSourceChangeSummary.js +13 -0
  347. package/dist/internal/index-impl/nativeSourceCompileDeclarationGeneratedSpan.js +25 -0
  348. package/dist/internal/index-impl/nativeSourceCompileDeclarationMappings.js +31 -0
  349. package/dist/internal/index-impl/nativeSourceCompileEvidence.js +30 -0
  350. package/dist/internal/index-impl/nativeSourceCompileFileMapping.js +21 -0
  351. package/dist/internal/index-impl/nativeSourceCompileFullGeneratedSpan.js +16 -0
  352. package/dist/internal/index-impl/nativeSourceCompileGeneratedSpanForOffset.js +17 -0
  353. package/dist/internal/index-impl/nativeSourceCompileGeneratedSpanFromSource.js +13 -0
  354. package/dist/internal/index-impl/nativeSourceCompileMapTarget.js +6 -0
  355. package/dist/internal/index-impl/nativeSourceCompilePreservedMappings.js +51 -0
  356. package/dist/internal/index-impl/nativeSourceCompileSourceMaps.js +41 -0
  357. package/dist/internal/index-impl/nativeSourceCompileTargetCoverage.js +21 -0
  358. package/dist/internal/index-impl/nativeSourceCompileTargetExtension.js +10 -0
  359. package/dist/internal/index-impl/nativeSourceCompileTargetLoss.js +32 -0
  360. package/dist/internal/index-impl/nativeSourceCompileTargetLosses.js +43 -0
  361. package/dist/internal/index-impl/nativeSourceCompileTargetPath.js +9 -0
  362. package/dist/internal/index-impl/nativeTargetProjectionAdapterEvidence.js +26 -0
  363. package/dist/internal/index-impl/nativeTargetProjectionAdapterMatches.js +16 -0
  364. package/dist/internal/index-impl/nativeTargetProjectionDiagnosticToLoss.js +22 -0
  365. package/dist/internal/index-impl/normalizeAdapterDiagnostics.js +28 -0
  366. package/dist/internal/index-impl/normalizeArray.js +4 -0
  367. package/dist/internal/index-impl/normalizeCSharpRoslynKind.js +38 -0
  368. package/dist/internal/index-impl/normalizeCompileTarget.js +9 -0
  369. package/dist/internal/index-impl/normalizeDiagnosticSeverity.js +6 -0
  370. package/dist/internal/index-impl/normalizeExternalOccurrenceRole.js +9 -0
  371. package/dist/internal/index-impl/normalizeExternalSemanticIndexFormat.js +34 -0
  372. package/dist/internal/index-impl/normalizeExternalSemanticIndexPayload.js +10 -0
  373. package/dist/internal/index-impl/normalizeExternalSemanticLanguage.js +7 -0
  374. package/dist/internal/index-impl/normalizeExternalSpan.js +21 -0
  375. package/dist/internal/index-impl/normalizeExternalSymbolKind.js +6 -0
  376. package/dist/internal/index-impl/normalizeFrontierSemanticIndexPayload.js +14 -0
  377. package/dist/internal/index-impl/normalizeGenericExternalSemanticIndexPayload.js +15 -0
  378. package/dist/internal/index-impl/normalizeGleanPayload.js +210 -0
  379. package/dist/internal/index-impl/normalizeGoAstKind.js +14 -0
  380. package/dist/internal/index-impl/normalizeJavaAstKind.js +24 -0
  381. package/dist/internal/index-impl/normalizeKotlinPsiKind.js +54 -0
  382. package/dist/internal/index-impl/normalizeLossSeverity.js +6 -0
  383. package/dist/internal/index-impl/normalizeLsifPayload.js +91 -0
  384. package/dist/internal/index-impl/normalizeLspDocuments.js +15 -0
  385. package/dist/internal/index-impl/normalizeLspPayload.js +33 -0
  386. package/dist/internal/index-impl/normalizeLspSymbolKind.js +5 -0
  387. package/dist/internal/index-impl/normalizeNativeDiffImport.js +15 -0
  388. package/dist/internal/index-impl/normalizeNativeImporterAdapter.js +33 -0
  389. package/dist/internal/index-impl/normalizeNativeImporterAdapterCoverage.js +38 -0
  390. package/dist/internal/index-impl/normalizeNativeImporterAdapterObservedCoverage.js +43 -0
  391. package/dist/internal/index-impl/normalizeNativeImporterSemanticCoverage.js +18 -0
  392. package/dist/internal/index-impl/normalizeNativeLossKind.js +8 -0
  393. package/dist/internal/index-impl/normalizeNativeLossRecord.js +20 -0
  394. package/dist/internal/index-impl/normalizeNativeLossRecords.js +6 -0
  395. package/dist/internal/index-impl/normalizeNativeTargetProjectionAdapter.js +37 -0
  396. package/dist/internal/index-impl/normalizeNativeTargetProjectionAdapterCoverage.js +20 -0
  397. package/dist/internal/index-impl/normalizeParserErrors.js +18 -0
  398. package/dist/internal/index-impl/normalizeRustSynKind.js +32 -0
  399. package/dist/internal/index-impl/normalizeScipPayload.js +98 -0
  400. package/dist/internal/index-impl/normalizeSemanticDbPayload.js +57 -0
  401. package/dist/internal/index-impl/normalizeSemanticSliceRef.js +4 -0
  402. package/dist/internal/index-impl/normalizeSwiftSyntaxKind.js +45 -0
  403. package/dist/internal/index-impl/normalizeSyntaxAstRoot.js +5 -0
  404. package/dist/internal/index-impl/numberOrUndefined.js +3 -0
  405. package/dist/internal/index-impl/observeNativeImporterAdapterCoverage.js +24 -0
  406. package/dist/internal/index-impl/observeNativeImporterAdapterCoverageDetails.js +66 -0
  407. package/dist/internal/index-impl/observeNativeImporterSemanticEvidence.js +23 -0
  408. package/dist/internal/index-impl/observedAdapterExactness.js +6 -0
  409. package/dist/internal/index-impl/oneLine.js +3 -0
  410. package/dist/internal/index-impl/parseCSharpRoslynSource.js +15 -0
  411. package/dist/internal/index-impl/parseClangAstSource.js +16 -0
  412. package/dist/internal/index-impl/parseGoAstSource.js +15 -0
  413. package/dist/internal/index-impl/parseJavaAstSource.js +16 -0
  414. package/dist/internal/index-impl/parseKotlinPsiSource.js +16 -0
  415. package/dist/internal/index-impl/parsePythonAstSource.js +16 -0
  416. package/dist/internal/index-impl/parseRustSynSource.js +13 -0
  417. package/dist/internal/index-impl/parseSwiftSyntaxSource.js +15 -0
  418. package/dist/internal/index-impl/parseTreeSitterSource.js +6 -0
  419. package/dist/internal/index-impl/primitiveCSharpRoslynFields.js +23 -0
  420. package/dist/internal/index-impl/primitiveClangAstFields.js +31 -0
  421. package/dist/internal/index-impl/primitiveGoAstFields.js +22 -0
  422. package/dist/internal/index-impl/primitiveJavaAstFields.js +22 -0
  423. package/dist/internal/index-impl/primitiveKotlinPsiFields.js +24 -0
  424. package/dist/internal/index-impl/primitivePythonAstFields.js +18 -0
  425. package/dist/internal/index-impl/primitiveRustSynFields.js +16 -0
  426. package/dist/internal/index-impl/primitiveSwiftSyntaxFields.js +21 -0
  427. package/dist/internal/index-impl/primitiveSyntaxFields.js +13 -0
  428. package/dist/internal/index-impl/primitiveTypeScriptFields.js +9 -0
  429. package/dist/internal/index-impl/projectFrontierAst.js +6 -0
  430. package/dist/internal/index-impl/projectImportAdmissionDecision.js +27 -0
  431. package/dist/internal/index-impl/projectImportAdmissionMergeScore.js +316 -0
  432. package/dist/internal/index-impl/projectImportAdmissionSummaries.js +252 -0
  433. package/dist/internal/index-impl/projectNativeImportToSource.js +90 -0
  434. package/dist/internal/index-impl/projectors.js +8 -0
  435. package/dist/internal/index-impl/pythonAliasName.js +5 -0
  436. package/dist/internal/index-impl/pythonAssignmentName.js +9 -0
  437. package/dist/internal/index-impl/pythonAstChildEntries.js +11 -0
  438. package/dist/internal/index-impl/pythonAstDeclaration.js +18 -0
  439. package/dist/internal/index-impl/pythonAstKind.js +3 -0
  440. package/dist/internal/index-impl/pythonAstLiteralValue.js +6 -0
  441. package/dist/internal/index-impl/pythonAstNodeValue.js +4 -0
  442. package/dist/internal/index-impl/pythonAstRoot.js +9 -0
  443. package/dist/internal/index-impl/pythonTargetName.js +12 -0
  444. package/dist/internal/index-impl/queryNativeParserFeatureMatrix.js +5 -0
  445. package/dist/internal/index-impl/queryProjectionReadinessMatrix.js +5 -0
  446. package/dist/internal/index-impl/readSemanticSliceJson.js +7 -0
  447. package/dist/internal/index-impl/readStringArray.js +5 -0
  448. package/dist/internal/index-impl/readUniversalAstJson.js +9 -0
  449. package/dist/internal/index-impl/relationPredicateForDeclaration.js +5 -0
  450. package/dist/internal/index-impl/renderCProjectionStubs.js +11 -0
  451. package/dist/internal/index-impl/renderGenericProjectionStubs.js +5 -0
  452. package/dist/internal/index-impl/renderJavaScriptProjectionStubs.js +12 -0
  453. package/dist/internal/index-impl/renderNativeProjectionStubs.js +13 -0
  454. package/dist/internal/index-impl/renderPythonProjectionStubs.js +10 -0
  455. package/dist/internal/index-impl/renderRustProjectionStubs.js +11 -0
  456. package/dist/internal/index-impl/renderTargetAst.js +6 -0
  457. package/dist/internal/index-impl/renderTargetAstWithSourceMap.js +6 -0
  458. package/dist/internal/index-impl/renderTypeScriptProjectionStubs.js +14 -0
  459. package/dist/internal/index-impl/renderers.js +8 -0
  460. package/dist/internal/index-impl/resolveCapabilityAdapters.js +29 -0
  461. package/dist/internal/index-impl/resolveNativeProjectAdapter.js +11 -0
  462. package/dist/internal/index-impl/resolveNativeTargetProjectionAdapter.js +14 -0
  463. package/dist/internal/index-impl/runNativeImporterAdapter.js +130 -0
  464. package/dist/internal/index-impl/runNativeTargetProjectionAdapter.js +115 -0
  465. package/dist/internal/index-impl/rustSynAstRoot.js +11 -0
  466. package/dist/internal/index-impl/rustSynChildEntries.js +10 -0
  467. package/dist/internal/index-impl/rustSynColumnToOneBased.js +3 -0
  468. package/dist/internal/index-impl/rustSynDeclaration.js +40 -0
  469. package/dist/internal/index-impl/rustSynIdentName.js +12 -0
  470. package/dist/internal/index-impl/rustSynImplName.js +11 -0
  471. package/dist/internal/index-impl/rustSynKind.js +15 -0
  472. package/dist/internal/index-impl/rustSynLiteralValue.js +5 -0
  473. package/dist/internal/index-impl/rustSynMacroKind.js +3 -0
  474. package/dist/internal/index-impl/rustSynNodeValue.js +6 -0
  475. package/dist/internal/index-impl/rustSynPathName.js +21 -0
  476. package/dist/internal/index-impl/rustSynPayload.js +6 -0
  477. package/dist/internal/index-impl/rustSynSpanKind.js +5 -0
  478. package/dist/internal/index-impl/rustSynUseName.js +26 -0
  479. package/dist/internal/index-impl/rustSynVisibility.js +9 -0
  480. package/dist/internal/index-impl/rustSynWrapperKind.js +12 -0
  481. package/dist/internal/index-impl/safeNativeImporterAdapterSummary.js +8 -0
  482. package/dist/internal/index-impl/safeNativeTargetProjectionAdapterSummary.js +8 -0
  483. package/dist/internal/index-impl/safeProjectionIdentifier.js +5 -0
  484. package/dist/internal/index-impl/scipOccurrenceRole.js +8 -0
  485. package/dist/internal/index-impl/scipOccurrenceRoleSet.js +12 -0
  486. package/dist/internal/index-impl/scipRelationshipRelations.js +20 -0
  487. package/dist/internal/index-impl/scipSymbolFacts.js +31 -0
  488. package/dist/internal/index-impl/scipSymbolId.js +8 -0
  489. package/dist/internal/index-impl/scipSyntaxKind.js +8 -0
  490. package/dist/internal/index-impl/selectSemanticSliceRecords.js +70 -0
  491. package/dist/internal/index-impl/semanticDbOccurrenceRole.js +5 -0
  492. package/dist/internal/index-impl/semanticDbSymbolFacts.js +15 -0
  493. package/dist/internal/index-impl/semanticDbSymbolId.js +7 -0
  494. package/dist/internal/index-impl/semanticHistoryRecords.js +233 -0
  495. package/dist/internal/index-impl/semanticIndexFromNativeDeclarations.js +127 -0
  496. package/dist/internal/index-impl/semanticMergeAdmissionForSeverity.js +5 -0
  497. package/dist/internal/index-impl/semanticMergeConflicts.js +116 -0
  498. package/dist/internal/index-impl/semanticPatchBundleRecords.js +240 -0
  499. package/dist/internal/index-impl/semanticPredicateMatches.js +4 -0
  500. package/dist/internal/index-impl/semanticSliceAssertion.js +8 -0
  501. package/dist/internal/index-impl/semanticSliceContext.js +24 -0
  502. package/dist/internal/index-impl/semanticSliceCurrentSource.js +4 -0
  503. package/dist/internal/index-impl/semanticSliceExpectedAssertions.js +8 -0
  504. package/dist/internal/index-impl/semanticSliceImportResult.js +30 -0
  505. package/dist/internal/index-impl/semanticSliceMappingMatchesRef.js +15 -0
  506. package/dist/internal/index-impl/semanticSliceMappingTouchesSets.js +7 -0
  507. package/dist/internal/index-impl/semanticSliceNativeNodeMatchesRef.js +12 -0
  508. package/dist/internal/index-impl/semanticSliceNativeParentMap.js +7 -0
  509. package/dist/internal/index-impl/semanticSliceReadiness.js +14 -0
  510. package/dist/internal/index-impl/semanticSliceReasons.js +11 -0
  511. package/dist/internal/index-impl/semanticSliceRecords.js +62 -0
  512. package/dist/internal/index-impl/semanticSliceRegionFromMapping.js +16 -0
  513. package/dist/internal/index-impl/semanticSliceRegionFromSymbol.js +21 -0
  514. package/dist/internal/index-impl/semanticSliceRegionMatchesRef.js +12 -0
  515. package/dist/internal/index-impl/semanticSliceRegionTouchesSets.js +6 -0
  516. package/dist/internal/index-impl/semanticSliceSourceFiles.js +35 -0
  517. package/dist/internal/index-impl/semanticSliceSourceHashAssertions.js +27 -0
  518. package/dist/internal/index-impl/semanticSliceSourceHashMap.js +18 -0
  519. package/dist/internal/index-impl/semanticSliceSourceMapLinks.js +21 -0
  520. package/dist/internal/index-impl/semanticSliceSourceSpans.js +9 -0
  521. package/dist/internal/index-impl/semanticSliceSourceTextMap.js +19 -0
  522. package/dist/internal/index-impl/semanticSliceSpanTouchesSelection.js +6 -0
  523. package/dist/internal/index-impl/semanticSliceSpansOverlap.js +15 -0
  524. package/dist/internal/index-impl/semanticSliceSymbolMatchesRef.js +13 -0
  525. package/dist/internal/index-impl/semanticSliceSymbolSpan.js +3 -0
  526. package/dist/internal/index-impl/semanticSliceSymbolTouchesSets.js +7 -0
  527. package/dist/internal/index-impl/semanticSliceTouchedSymbol.js +16 -0
  528. package/dist/internal/index-impl/semanticSliceValueMatches.js +6 -0
  529. package/dist/internal/index-impl/semanticTokenModifiers.js +7 -0
  530. package/dist/internal/index-impl/serializableDiagnostic.js +13 -0
  531. package/dist/internal/index-impl/serializableIncludeGraphSummary.js +10 -0
  532. package/dist/internal/index-impl/shortNodeText.js +6 -0
  533. package/dist/internal/index-impl/sourceMapRenderers.js +8 -0
  534. package/dist/internal/index-impl/sourcePreservationFromProjectionContext.js +5 -0
  535. package/dist/internal/index-impl/sourceSpanPathMatches.js +4 -0
  536. package/dist/internal/index-impl/sourceTextForSpan.js +12 -0
  537. package/dist/internal/index-impl/spanFromCSharpLineFields.js +12 -0
  538. package/dist/internal/index-impl/spanFromCSharpLineSpan.js +18 -0
  539. package/dist/internal/index-impl/spanFromCSharpRoslynNode.js +19 -0
  540. package/dist/internal/index-impl/spanFromClangAstNode.js +17 -0
  541. package/dist/internal/index-impl/spanFromGoAstNode.js +14 -0
  542. package/dist/internal/index-impl/spanFromJavaAstNode.js +36 -0
  543. package/dist/internal/index-impl/spanFromJavaLineFields.js +12 -0
  544. package/dist/internal/index-impl/spanFromJavaRange.js +22 -0
  545. package/dist/internal/index-impl/spanFromKotlinLineFields.js +12 -0
  546. package/dist/internal/index-impl/spanFromKotlinPsiNode.js +19 -0
  547. package/dist/internal/index-impl/spanFromKotlinRange.js +18 -0
  548. package/dist/internal/index-impl/spanFromLoc.js +11 -0
  549. package/dist/internal/index-impl/spanFromLspRange.js +12 -0
  550. package/dist/internal/index-impl/spanFromPythonAstNode.js +15 -0
  551. package/dist/internal/index-impl/spanFromRustSynNode.js +20 -0
  552. package/dist/internal/index-impl/spanFromScipOccurrence.js +40 -0
  553. package/dist/internal/index-impl/spanFromSemanticDbRange.js +11 -0
  554. package/dist/internal/index-impl/spanFromSwiftLineFields.js +12 -0
  555. package/dist/internal/index-impl/spanFromSwiftRange.js +18 -0
  556. package/dist/internal/index-impl/spanFromSwiftSyntaxNode.js +19 -0
  557. package/dist/internal/index-impl/spanFromTreeSitterNode.js +13 -0
  558. package/dist/internal/index-impl/spanFromTypeScriptNode.js +15 -0
  559. package/dist/internal/index-impl/stringFromTsExpression.js +7 -0
  560. package/dist/internal/index-impl/summarizeNativeChangedRegionProjections.js +16 -0
  561. package/dist/internal/index-impl/summarizeNativeImportFeatureEvidence.js +60 -0
  562. package/dist/internal/index-impl/summarizeNativeImportLosses.js +65 -0
  563. package/dist/internal/index-impl/summarizeProjectSourcePreservation.js +15 -0
  564. package/dist/internal/index-impl/swiftEvidenceSummary.js +19 -0
  565. package/dist/internal/index-impl/swiftGeneratedCodeLoss.js +20 -0
  566. package/dist/internal/index-impl/swiftGeneratedCodeMarker.js +11 -0
  567. package/dist/internal/index-impl/swiftGeneratedSourcePath.js +3 -0
  568. package/dist/internal/index-impl/swiftSyntaxAttributeNames.js +10 -0
  569. package/dist/internal/index-impl/swiftSyntaxChildEntries.js +18 -0
  570. package/dist/internal/index-impl/swiftSyntaxChildWithParent.js +6 -0
  571. package/dist/internal/index-impl/swiftSyntaxConditionalCompilationKind.js +3 -0
  572. package/dist/internal/index-impl/swiftSyntaxDeclarationName.js +19 -0
  573. package/dist/internal/index-impl/swiftSyntaxDeclarations.js +38 -0
  574. package/dist/internal/index-impl/swiftSyntaxEnumCaseNames.js +7 -0
  575. package/dist/internal/index-impl/swiftSyntaxFunctionLikeKind.js +8 -0
  576. package/dist/internal/index-impl/swiftSyntaxHasBody.js +3 -0
  577. package/dist/internal/index-impl/swiftSyntaxImportPath.js +14 -0
  578. package/dist/internal/index-impl/swiftSyntaxKind.js +11 -0
  579. package/dist/internal/index-impl/swiftSyntaxLiteralValue.js +5 -0
  580. package/dist/internal/index-impl/swiftSyntaxMacroKind.js +3 -0
  581. package/dist/internal/index-impl/swiftSyntaxModifierNames.js +16 -0
  582. package/dist/internal/index-impl/swiftSyntaxName.js +14 -0
  583. package/dist/internal/index-impl/swiftSyntaxNodeValue.js +7 -0
  584. package/dist/internal/index-impl/swiftSyntaxOperatorName.js +6 -0
  585. package/dist/internal/index-impl/swiftSyntaxPatternName.js +6 -0
  586. package/dist/internal/index-impl/swiftSyntaxPosition.js +27 -0
  587. package/dist/internal/index-impl/swiftSyntaxPositionKind.js +6 -0
  588. package/dist/internal/index-impl/swiftSyntaxProblemNode.js +13 -0
  589. package/dist/internal/index-impl/swiftSyntaxRecoveredKind.js +7 -0
  590. package/dist/internal/index-impl/swiftSyntaxRoot.js +15 -0
  591. package/dist/internal/index-impl/swiftSyntaxTypeDeclarationKind.js +7 -0
  592. package/dist/internal/index-impl/swiftSyntaxTypeDeclarationSymbolKind.js +8 -0
  593. package/dist/internal/index-impl/swiftSyntaxTypeName.js +19 -0
  594. package/dist/internal/index-impl/swiftSyntaxVariableNames.js +7 -0
  595. package/dist/internal/index-impl/syntaxDeclaration.js +18 -0
  596. package/dist/internal/index-impl/testSemanticSlice.js +43 -0
  597. package/dist/internal/index-impl/treeSitterDeclaration.js +24 -0
  598. package/dist/internal/index-impl/treeSitterFieldText.js +5 -0
  599. package/dist/internal/index-impl/truncatedAstLoss.js +16 -0
  600. package/dist/internal/index-impl/typeScriptDeclaration.js +14 -0
  601. package/dist/internal/index-impl/typeScriptKindName.js +6 -0
  602. package/dist/internal/index-impl/typeScriptNodeValue.js +4 -0
  603. package/dist/internal/index-impl/uniqueNativeProjectionDeclarations.js +9 -0
  604. package/dist/internal/index-impl/uniqueSemanticSliceNativeNodes.js +11 -0
  605. package/dist/internal/index-impl/uniqueSemanticSliceRegions.js +15 -0
  606. package/dist/internal/index-impl/uniqueSemanticSliceSpans.js +21 -0
  607. package/dist/internal/index-impl/unverifiedNativeAstLosses.js +16 -0
  608. package/dist/internal/index-impl/uriToPath.js +11 -0
  609. package/dist/internal/index-impl/visitCSharpRoslynNode.js +87 -0
  610. package/dist/internal/index-impl/visitClangAstNode.js +62 -0
  611. package/dist/internal/index-impl/visitGoAstNode.js +99 -0
  612. package/dist/internal/index-impl/visitJavaAstNode.js +73 -0
  613. package/dist/internal/index-impl/visitKotlinPsiNode.js +108 -0
  614. package/dist/internal/index-impl/visitPythonAstNode.js +47 -0
  615. package/dist/internal/index-impl/visitRustSynNode.js +62 -0
  616. package/dist/internal/index-impl/visitSwiftSyntaxNode.js +103 -0
  617. package/dist/internal/index-impl/visitSyntaxAstNode.js +46 -0
  618. package/dist/internal/index-impl/visitTreeSitterNode.js +145 -0
  619. package/dist/internal/index-impl/visitTypeScriptAstNode.js +45 -0
  620. package/dist/internal/index-impl/withExternalEmptyLoss.js +32 -0
  621. package/dist/internal/index-impl/withNativeImportReadiness.js +53 -0
  622. package/dist/internal/index-impl/writeSemanticSliceJson.js +7 -0
  623. package/dist/internal/index-impl/writeUniversalAstJson.js +8 -0
  624. package/dist/language-adapter-package-contracts.js +289 -0
  625. package/dist/native-import-coverage-matrix.js +237 -0
  626. package/dist/native-import-language-profiles.js +169 -0
  627. package/dist/native-import-utils.js +143 -0
  628. package/dist/native-js-ts-importers.js +85 -0
  629. package/dist/native-parser-ast-format-matrix.js +147 -0
  630. package/dist/native-parser-ast-format-profiles.js +271 -0
  631. package/dist/native-parser-feature-assessment.js +118 -0
  632. package/dist/native-parser-feature-coverage.js +268 -0
  633. package/dist/native-parser-feature-matrix.js +92 -0
  634. package/dist/native-parser-feature-rows.js +219 -0
  635. package/dist/native-region-scanner-core.js +179 -0
  636. package/dist/native-region-scanner-dynamic.js +259 -0
  637. package/dist/native-region-scanner-functional.js +191 -0
  638. package/dist/native-region-scanner-js.js +310 -0
  639. package/dist/native-region-scanner-main.js +301 -0
  640. package/dist/native-region-scanner.js +62 -0
  641. package/dist/native-source-maps.js +260 -0
  642. package/dist/native-source-preservation-scanner.js +266 -0
  643. package/dist/native-source-preservation-types.d.ts +77 -0
  644. package/dist/projection-readiness-helpers.js +166 -0
  645. package/dist/projection-readiness-matrix.js +122 -0
  646. package/dist/projection-target-loss-matrix.js +318 -0
  647. package/dist/semantic-import-contract-summary.js +188 -0
  648. package/dist/semantic-import-layers.js +320 -0
  649. package/dist/semantic-import-regions.js +181 -0
  650. package/dist/semantic-import-sidecar-admission-types.d.ts +61 -0
  651. package/dist/semantic-import-sidecar-entry.js +78 -0
  652. package/dist/semantic-import-sidecar-types.d.ts +275 -0
  653. package/dist/semantic-import-source-preservation.js +198 -0
  654. package/dist/universal-capability-matrix.js +280 -0
  655. package/dist/universal-dialect-layer.js +74 -0
  656. package/dist/universal-dialect-registry.js +204 -0
  657. package/dist/universal-dialect-utils.js +110 -0
  658. package/package.json +9 -9
@@ -0,0 +1,61 @@
1
+ import type { SemanticMergeReadiness } from '@shapeshift-labs/frontier-lang-kernel';
2
+
3
+ export interface SemanticImportSidecarQualityWarning {
4
+ readonly code: string;
5
+ readonly severity: 'warning' | string;
6
+ readonly message: string;
7
+ readonly action: string;
8
+ readonly sourcePaths: readonly string[];
9
+ }
10
+
11
+ export interface SemanticImportSidecarProofAdmissionSummary {
12
+ readonly total: number;
13
+ readonly obligations: number;
14
+ readonly discharged: number;
15
+ readonly pending?: number;
16
+ readonly failed: number;
17
+ readonly assumed?: number;
18
+ readonly externalToolRequired?: number;
19
+ readonly open: number;
20
+ readonly unknown: number;
21
+ readonly empty: boolean;
22
+ readonly autoMergeProof?: false;
23
+ }
24
+
25
+ export interface SemanticImportSidecarQuality {
26
+ readonly schema: 'frontier.lang.semanticSidecarQuality.v1';
27
+ readonly selected: boolean;
28
+ readonly eligible: boolean;
29
+ readonly imported: boolean;
30
+ readonly importCount: number;
31
+ readonly symbolCount: number;
32
+ readonly ownershipRegionCount: number;
33
+ readonly patchHintCount: number;
34
+ readonly proofSummary: SemanticImportSidecarProofAdmissionSummary;
35
+ readonly evidenceCount: number;
36
+ readonly warningCount: number;
37
+ readonly warnings: readonly SemanticImportSidecarQualityWarning[];
38
+ readonly emptyEvidenceWarnings: readonly SemanticImportSidecarQualityWarning[];
39
+ }
40
+
41
+ export interface SemanticImportSidecarAdmission {
42
+ readonly schema: 'frontier.lang.semanticSidecarAdmission.v1';
43
+ readonly selected: boolean;
44
+ readonly eligible: boolean;
45
+ readonly imported: boolean;
46
+ readonly importCount: number;
47
+ readonly readiness: SemanticMergeReadiness;
48
+ readonly action: string;
49
+ readonly counts: {
50
+ readonly symbols: number;
51
+ readonly ownershipRegions: number;
52
+ readonly patchHints: number;
53
+ readonly evidence: number;
54
+ readonly proofRecords: number;
55
+ readonly proofObligations: number;
56
+ readonly proofFailedObligations: number;
57
+ };
58
+ readonly proofSummary: SemanticImportSidecarProofAdmissionSummary;
59
+ readonly warnings: readonly SemanticImportSidecarQualityWarning[];
60
+ readonly emptyEvidenceWarnings: readonly SemanticImportSidecarQualityWarning[];
61
+ }
@@ -0,0 +1,78 @@
1
+ import { uniqueRecordsById, uniqueStrings } from './native-import-utils.js';
2
+ import { semanticOwnershipRegionForSymbol, summarizeSemanticImportRegionTaxonomy } from './semantic-import-regions.js';
3
+ import { collectKernelSourcePreservationFromImport } from './semantic-import-source-preservation.js';
4
+ import {
5
+ summarizeParadigmSemanticsLayer,
6
+ summarizeProofSpecLayer,
7
+ summarizeUniversalAstLayers
8
+ } from './semantic-import-layers.js';
9
+
10
+ function semanticImportSidecarEntry(imported, index, options) {
11
+ const semanticIndex = imported?.semanticIndex ?? imported?.universalAst?.semanticIndex;
12
+ const nativeAst = imported?.nativeAst ?? imported?.nativeSource?.ast;
13
+ const sourceMaps = imported?.sourceMaps ?? imported?.universalAst?.sourceMaps ?? [];
14
+ const sourceMapMappings = sourceMaps.flatMap((sourceMap) => sourceMap?.mappings ?? []);
15
+ const sourcePreservationRecords = collectKernelSourcePreservationFromImport(imported);
16
+ const universalAstLayers = summarizeUniversalAstLayers(imported?.universalAst);
17
+ const proofSpec = summarizeProofSpecLayer(imported?.universalAst?.proof ?? imported?.proof);
18
+ const paradigmSemantics = summarizeParadigmSemanticsLayer(imported?.universalAst?.paradigmSemantics ?? imported?.paradigmSemantics);
19
+ const mappingsBySymbolId = new Map();
20
+ for (const mapping of sourceMapMappings) {
21
+ if (mapping.semanticSymbolId && !mappingsBySymbolId.has(mapping.semanticSymbolId)) {
22
+ mappingsBySymbolId.set(mapping.semanticSymbolId, mapping);
23
+ }
24
+ }
25
+ const symbols = [];
26
+ const regions = [];
27
+ for (const symbol of semanticIndex?.symbols ?? []) {
28
+ const mapping = mappingsBySymbolId.get(symbol.id);
29
+ const nativeNode = symbol.nativeAstNodeId ? nativeAst?.nodes?.[symbol.nativeAstNodeId] : undefined;
30
+ const region = semanticOwnershipRegionForSymbol(imported, symbol, mapping, nativeNode, options);
31
+ regions.push(region);
32
+ symbols.push({
33
+ id: symbol.id,
34
+ name: symbol.name,
35
+ kind: symbol.kind,
36
+ language: symbol.language ?? imported?.language,
37
+ nativeAstNodeId: symbol.nativeAstNodeId,
38
+ semanticOccurrenceId: mapping?.semanticOccurrenceId,
39
+ sourceMapMappingId: mapping?.id,
40
+ sourceSpan: mapping?.sourceSpan ?? symbol.definitionSpan ?? nativeNode?.span,
41
+ signatureHash: symbol.signatureHash,
42
+ ownershipRegionId: region.id,
43
+ ownershipKey: region.key,
44
+ ownershipRegionKind: region.regionKind,
45
+ readiness: imported?.metadata?.semanticMergeReadiness ?? imported?.mergeCandidates?.[0]?.readiness ?? 'needs-review'
46
+ });
47
+ }
48
+ const ownershipRegions = uniqueRecordsById(regions);
49
+ const regionTaxonomy = summarizeSemanticImportRegionTaxonomy(ownershipRegions);
50
+ return {
51
+ id: imported?.id ?? `import_${index + 1}`,
52
+ language: imported?.language,
53
+ sourcePath: imported?.sourcePath ?? imported?.nativeSource?.sourcePath ?? nativeAst?.sourcePath,
54
+ sourceHash: imported?.nativeSource?.sourceHash ?? nativeAst?.sourceHash,
55
+ parser: imported?.nativeAst?.parser ?? nativeAst?.parser,
56
+ nativeSourceId: imported?.nativeSource?.id,
57
+ nativeAstId: nativeAst?.id,
58
+ semanticIndexId: semanticIndex?.id,
59
+ universalAstId: imported?.universalAst?.id,
60
+ symbolCount: symbols.length,
61
+ sourceMapCount: sourceMaps.length,
62
+ sourceMapMappingCount: sourceMapMappings.length,
63
+ sourcePreservationRecordCount: sourcePreservationRecords.length,
64
+ sourcePreservationLevels: uniqueStrings(sourcePreservationRecords.map((record) => record.level).filter(Boolean)),
65
+ universalAstLayerCount: universalAstLayers.total,
66
+ universalAstLayerNames: universalAstLayers.names,
67
+ universalAstLayerIds: universalAstLayers.ids,
68
+ proofSpec,
69
+ paradigmSemantics,
70
+ readiness: imported?.metadata?.semanticMergeReadiness ?? imported?.mergeCandidates?.[0]?.readiness ?? 'needs-review',
71
+ emptySemanticIndex: symbols.length === 0,
72
+ regionTaxonomy,
73
+ symbols,
74
+ ownershipRegions
75
+ };
76
+ }
77
+
78
+ export { semanticImportSidecarEntry };
@@ -0,0 +1,275 @@
1
+ import type {
2
+ FrontierSourceLanguage,
3
+ SemanticMergeReadiness,
4
+ SourceMapMappingRecord,
5
+ SourcePreservationLevel,
6
+ SourceSpan
7
+ } from '@shapeshift-labs/frontier-lang-kernel';
8
+ import type { NativeImportRegionTaxonomyKind, NativeImportTaxonomyKind } from './index.js';
9
+ import type { SemanticImportSidecarAdmission, SemanticImportSidecarQuality } from './semantic-import-sidecar-admission-types.js';
10
+ import type { SemanticMergeConflictClass, SemanticMergeConflictSummary } from './declarations/semantic-merge-conflicts.js';
11
+
12
+ export interface SemanticImportOwnershipRegion {
13
+ readonly id: string;
14
+ readonly key: string;
15
+ readonly regionKind?: NativeImportRegionTaxonomyKind;
16
+ readonly granularity: 'symbol' | string;
17
+ readonly language?: FrontierSourceLanguage | string;
18
+ readonly documentId?: string;
19
+ readonly sourcePath?: string;
20
+ readonly sourceHash?: string;
21
+ readonly symbolId?: string;
22
+ readonly symbolName?: string;
23
+ readonly symbolKind?: string;
24
+ readonly nativeAstNodeId?: string;
25
+ readonly sourceSpan?: SourceSpan;
26
+ readonly precision?: 'exact' | 'declaration' | 'line' | 'estimated' | 'unknown' | string;
27
+ readonly mergePolicy?: string;
28
+ readonly metadata?: Record<string, unknown>;
29
+ }
30
+
31
+ export interface SemanticImportSidecarSymbol {
32
+ readonly id: string;
33
+ readonly name?: string;
34
+ readonly kind?: string;
35
+ readonly language?: FrontierSourceLanguage | string;
36
+ readonly nativeAstNodeId?: string;
37
+ readonly semanticOccurrenceId?: string;
38
+ readonly sourceMapMappingId?: string;
39
+ readonly sourceSpan?: SourceSpan;
40
+ readonly signatureHash?: string;
41
+ readonly ownershipRegionId: string;
42
+ readonly ownershipKey: string;
43
+ readonly ownershipRegionKind?: NativeImportRegionTaxonomyKind;
44
+ readonly readiness: SemanticMergeReadiness;
45
+ }
46
+
47
+ export interface SemanticImportRegionTaxonomySummary {
48
+ readonly kinds: readonly NativeImportRegionTaxonomyKind[];
49
+ readonly presentKinds: readonly NativeImportRegionTaxonomyKind[];
50
+ readonly byKind: Readonly<Record<string, number>>;
51
+ readonly keys: readonly string[];
52
+ readonly keysByKind: Readonly<Record<string, readonly string[]>>;
53
+ }
54
+
55
+ export interface SemanticImportPatchHint {
56
+ readonly id: string;
57
+ readonly kind: 'source-region-patch' | string;
58
+ readonly ownershipRegionId: string;
59
+ readonly ownershipKey: string;
60
+ readonly sourcePath?: string;
61
+ readonly sourceHash?: string;
62
+ readonly sourceSpan?: SourceSpan;
63
+ readonly readiness: SemanticMergeReadiness;
64
+ readonly precision?: string;
65
+ readonly supportedOperations: readonly string[];
66
+ readonly projection: {
67
+ readonly sourceLanguage?: FrontierSourceLanguage | string;
68
+ readonly targetPath?: string;
69
+ readonly requiresSourceMap: boolean;
70
+ };
71
+ }
72
+
73
+ export interface SemanticImportSidecarImportEntry {
74
+ readonly id: string;
75
+ readonly language?: FrontierSourceLanguage | string;
76
+ readonly sourcePath?: string;
77
+ readonly sourceHash?: string;
78
+ readonly parser?: string;
79
+ readonly nativeSourceId?: string;
80
+ readonly nativeAstId?: string;
81
+ readonly semanticIndexId?: string;
82
+ readonly universalAstId?: string;
83
+ readonly symbolCount: number;
84
+ readonly sourceMapCount: number;
85
+ readonly sourceMapMappingCount: number;
86
+ readonly sourcePreservationRecordCount: number;
87
+ readonly sourcePreservationLevels: readonly SourcePreservationLevel[];
88
+ readonly universalAstLayerCount: number;
89
+ readonly universalAstLayerNames: readonly string[];
90
+ readonly universalAstLayerIds: readonly string[];
91
+ readonly proofSpec: SemanticImportSidecarProofSpecSummary;
92
+ readonly paradigmSemantics: SemanticImportSidecarParadigmSemanticsSummary;
93
+ readonly readiness: SemanticMergeReadiness;
94
+ readonly emptySemanticIndex: boolean;
95
+ readonly regionTaxonomy?: SemanticImportRegionTaxonomySummary;
96
+ }
97
+
98
+ export interface SemanticImportSidecarSourcePreservationRecord {
99
+ readonly id: string;
100
+ readonly level: SourcePreservationLevel;
101
+ readonly precision?: string;
102
+ readonly sourceMapId?: string;
103
+ readonly sourceMapMappingId?: string;
104
+ readonly semanticNodeId?: string;
105
+ readonly nativeSourceId?: string;
106
+ readonly nativeAstNodeId?: string;
107
+ readonly semanticSymbolId?: string;
108
+ readonly semanticOccurrenceId?: string;
109
+ readonly sourcePath?: string;
110
+ readonly generatedPath?: string;
111
+ readonly lossIds: readonly string[];
112
+ readonly evidenceIds: readonly string[];
113
+ readonly reasons: readonly string[];
114
+ }
115
+
116
+ export interface SemanticImportSidecarUniversalAstLayerSummary {
117
+ readonly total: number;
118
+ readonly names: readonly string[];
119
+ readonly ids: readonly string[];
120
+ readonly byName: Readonly<Record<string, number>>;
121
+ readonly empty: boolean;
122
+ }
123
+
124
+ export interface SemanticImportSidecarProofSpecSummary {
125
+ readonly total: number;
126
+ readonly ids: readonly string[];
127
+ readonly contracts: number;
128
+ readonly refinements: number;
129
+ readonly invariants: number;
130
+ readonly termination: number;
131
+ readonly temporal: number;
132
+ readonly obligations: number;
133
+ readonly artifacts: number;
134
+ readonly assumptions: number;
135
+ readonly evidence: number;
136
+ readonly discharged: number;
137
+ readonly pending?: number;
138
+ readonly failed: number;
139
+ readonly open: number;
140
+ readonly unknown: number;
141
+ readonly stale: number;
142
+ readonly assumed: number;
143
+ readonly externalToolRequired?: number;
144
+ readonly contractKinds: readonly string[];
145
+ readonly artifactKinds: readonly string[];
146
+ readonly byStatus: Readonly<Record<string, number>>;
147
+ readonly byReadinessStatus?: Readonly<Record<string, number>>;
148
+ readonly byContractKind: Readonly<Record<string, number>>;
149
+ readonly byArtifactKind: Readonly<Record<string, number>>;
150
+ readonly empty: boolean;
151
+ }
152
+
153
+ export interface SemanticImportSidecarParadigmSemanticsSummary {
154
+ readonly total: number;
155
+ readonly ids: readonly string[];
156
+ readonly groups: readonly string[];
157
+ readonly kinds: readonly string[];
158
+ readonly evidence: number;
159
+ readonly bindingScopes: number;
160
+ readonly bindings: number;
161
+ readonly patterns: number;
162
+ readonly typeConstraints: number;
163
+ readonly evaluationModels: number;
164
+ readonly memoryLocations: number;
165
+ readonly effectRegions: number;
166
+ readonly controlRegions: number;
167
+ readonly logicPrograms: number;
168
+ readonly actorSystems: number;
169
+ readonly stackEffects: number;
170
+ readonly arrayShapes: number;
171
+ readonly numericKernels: number;
172
+ readonly dataflowNetworks: number;
173
+ readonly clockModels: number;
174
+ readonly objectModels: number;
175
+ readonly macroExpansions: number;
176
+ readonly reflectionBoundaries: number;
177
+ readonly loweringRecords: number;
178
+ readonly byGroup: Readonly<Record<string, number>>;
179
+ readonly byKind: Readonly<Record<string, number>>;
180
+ readonly hasRuntimeSemantics: boolean;
181
+ readonly hasLogicSemantics: boolean;
182
+ readonly hasStackSemantics: boolean;
183
+ readonly hasArraySemantics: boolean;
184
+ readonly hasMacroOrReflection: boolean;
185
+ readonly hasLowering: boolean;
186
+ readonly empty: boolean;
187
+ }
188
+
189
+ export interface SemanticImportSidecar {
190
+ readonly kind: 'frontier.lang.semanticImportSidecar';
191
+ readonly version: 1;
192
+ readonly id: string;
193
+ readonly generatedAt: number;
194
+ readonly language?: FrontierSourceLanguage | 'mixed' | string;
195
+ readonly projectRoot?: string;
196
+ readonly imports: readonly SemanticImportSidecarImportEntry[];
197
+ readonly symbols: readonly SemanticImportSidecarSymbol[];
198
+ readonly ownershipRegions: readonly SemanticImportOwnershipRegion[];
199
+ readonly sourceMaps: {
200
+ readonly total: number;
201
+ readonly mappings: number;
202
+ readonly ids: readonly string[];
203
+ };
204
+ readonly sourcePreservation: {
205
+ readonly total: number;
206
+ readonly ids: readonly string[];
207
+ readonly byLevel: Readonly<Record<string, number>>;
208
+ readonly exact: number;
209
+ readonly declaration: number;
210
+ readonly estimated: number;
211
+ readonly blocked: number;
212
+ readonly sourcePaths: readonly string[];
213
+ readonly sourceMapIds: readonly string[];
214
+ readonly sourceMapMappingIds: readonly string[];
215
+ readonly records: readonly SemanticImportSidecarSourcePreservationRecord[];
216
+ };
217
+ readonly universalAstLayers: SemanticImportSidecarUniversalAstLayerSummary;
218
+ readonly proofSpec: SemanticImportSidecarProofSpecSummary;
219
+ readonly paradigmSemantics: SemanticImportSidecarParadigmSemanticsSummary;
220
+ readonly patchHints: readonly SemanticImportPatchHint[];
221
+ readonly quality: SemanticImportSidecarQuality;
222
+ readonly admission: SemanticImportSidecarAdmission;
223
+ readonly mergeCandidates: readonly {
224
+ readonly id?: string;
225
+ readonly readiness?: SemanticMergeReadiness;
226
+ readonly reasons: readonly string[];
227
+ readonly conflictClasses?: readonly SemanticMergeConflictClass[];
228
+ readonly conflictSummary?: SemanticMergeConflictSummary;
229
+ readonly risk?: string;
230
+ readonly operationCount: number;
231
+ }[];
232
+ readonly losses: {
233
+ readonly total: number;
234
+ readonly byKind: Readonly<Record<string, number>>;
235
+ readonly bySeverity: Readonly<Record<string, number>>;
236
+ readonly categories: readonly NativeImportTaxonomyKind[];
237
+ readonly blockingLossIds: readonly string[];
238
+ readonly reviewLossIds: readonly string[];
239
+ };
240
+ readonly regionTaxonomy: SemanticImportRegionTaxonomySummary;
241
+ readonly evidence: {
242
+ readonly total: number;
243
+ readonly failed: readonly string[];
244
+ readonly ids: readonly string[];
245
+ };
246
+ readonly summary: {
247
+ readonly imports: number;
248
+ readonly symbols: number;
249
+ readonly ownershipRegions: number;
250
+ readonly regionKinds: number;
251
+ readonly sourceMapMappings: number;
252
+ readonly sourcePreservationRecords: number;
253
+ readonly universalAstLayers: number;
254
+ readonly universalAstLayerNames: readonly string[];
255
+ readonly proofSpecRecords: number;
256
+ readonly proofSpecObligations: number;
257
+ readonly proofSpecFailedObligations: number;
258
+ readonly paradigmSemanticsRecords: number;
259
+ readonly paradigmSemanticsGroups: number;
260
+ readonly paradigmSemanticsLoweringRecords: number;
261
+ readonly patchHints: number;
262
+ readonly evidenceWarnings: number;
263
+ readonly readiness: SemanticMergeReadiness;
264
+ readonly emptySemanticIndex: boolean;
265
+ };
266
+ readonly metadata?: Record<string, unknown>;
267
+ }
268
+
269
+ export interface SemanticImportSidecarOptions {
270
+ readonly id?: string;
271
+ readonly generatedAt?: number;
272
+ readonly regionPrefix?: string;
273
+ readonly targetPath?: string;
274
+ readonly metadata?: Record<string, unknown>;
275
+ }
@@ -0,0 +1,198 @@
1
+ import { createSourcePreservationRecord, explainSourcePreservation } from '@shapeshift-labs/frontier-lang-kernel';
2
+ import { countBy, idFragment, uniqueRecordsById, uniqueStrings } from './native-import-utils.js';
3
+
4
+ function createKernelSourcePreservationRecords(input) {
5
+ const records = [];
6
+ if (input.sourcePreservation) {
7
+ const exactSource = input.sourcePreservation.summary?.exactSourceAvailable === true &&
8
+ (!input.sourceHash || input.sourcePreservation.sourceHash === input.sourceHash);
9
+ const hashMismatch = input.sourceHash &&
10
+ input.sourcePreservation.sourceHash &&
11
+ input.sourcePreservation.sourceHash !== input.sourceHash;
12
+ records.push(createSourcePreservationRecord({
13
+ id: `source_preservation_${idFragment(input.idPart ?? input.sourcePath ?? input.language)}_file`,
14
+ level: hashMismatch ? 'blocked' : exactSource ? 'exact' : 'estimated',
15
+ precision: exactSource ? 'exact' : 'estimated',
16
+ nativeSourceId: input.nativeSource?.id,
17
+ nativeAstNodeId: input.nativeAst?.rootId,
18
+ sourceSpan: {
19
+ sourceId: input.sourceHash,
20
+ path: input.sourcePath,
21
+ startLine: 1,
22
+ startColumn: 1
23
+ },
24
+ lossIds: (input.losses ?? []).filter((loss) => loss.kind === 'sourcePreservation' || loss.sourceMapId).map((loss) => loss.id),
25
+ evidenceIds: (input.evidence ?? []).map((record) => record.id).filter(Boolean),
26
+ losses: input.losses ?? [],
27
+ evidence: input.evidence ?? [],
28
+ reasons: hashMismatch
29
+ ? [`Preserved source hash ${input.sourcePreservation.sourceHash} does not match import hash ${input.sourceHash}.`]
30
+ : exactSource
31
+ ? ['Exact native source text is preserved for source-level replay and semantic merge review.']
32
+ : ['Native source preservation metadata exists, but exact source text is unavailable or unverified.'],
33
+ metadata: {
34
+ compilerRecord: 'nativeSourcePreservation',
35
+ nativeSourcePreservationId: input.sourcePreservation.id,
36
+ sourceBytes: input.sourcePreservation.sourceBytes,
37
+ lineCount: input.sourcePreservation.lineCount,
38
+ tokens: input.sourcePreservation.summary?.tokens ?? 0,
39
+ trivia: input.sourcePreservation.summary?.trivia ?? 0,
40
+ directives: input.sourcePreservation.summary?.directives ?? 0,
41
+ comments: input.sourcePreservation.summary?.comments ?? 0,
42
+ whitespace: input.sourcePreservation.summary?.whitespace ?? 0,
43
+ truncated: input.sourcePreservation.summary?.truncated === true
44
+ }
45
+ }));
46
+ }
47
+
48
+ for (const sourceMap of input.sourceMaps ?? []) {
49
+ for (const mapping of sourceMap.mappings ?? []) {
50
+ records.push(explainSourcePreservation({
51
+ id: `source_preservation_${idFragment(sourceMap.id)}_${idFragment(mapping.id)}`,
52
+ sourceMap,
53
+ mapping,
54
+ level: mapping.preservation,
55
+ losses: input.losses ?? [],
56
+ evidence: uniqueRecordsById([...(input.evidence ?? []), ...(sourceMap.evidence ?? [])]),
57
+ metadata: {
58
+ compilerRecord: 'sourceMapMapping',
59
+ language: input.language,
60
+ semanticIndexId: input.semanticIndex?.id,
61
+ sourceMapId: sourceMap.id,
62
+ sourceMapMappingId: mapping.id
63
+ }
64
+ }));
65
+ }
66
+ }
67
+
68
+ return uniqueRecordsById(records);
69
+ }
70
+
71
+ function summarizeKernelSourcePreservationRecords(records) {
72
+ const compactRecords = records.map(compactKernelSourcePreservationRecord);
73
+ const byLevel = countBy(compactRecords.map((record) => record.level ?? 'unknown'));
74
+ return {
75
+ total: compactRecords.length,
76
+ ids: compactRecords.map((record) => record.id).filter(Boolean),
77
+ byLevel,
78
+ exact: byLevel.exact ?? 0,
79
+ declaration: byLevel.declaration ?? 0,
80
+ estimated: byLevel.estimated ?? 0,
81
+ blocked: byLevel.blocked ?? 0,
82
+ sourcePaths: uniqueStrings(compactRecords.map((record) => record.sourcePath).filter(Boolean)),
83
+ sourceMapIds: uniqueStrings(compactRecords.map((record) => record.sourceMapId).filter(Boolean)),
84
+ sourceMapMappingIds: uniqueStrings(compactRecords.map((record) => record.sourceMapMappingId).filter(Boolean)),
85
+ records: compactRecords
86
+ };
87
+ }
88
+
89
+ function collectKernelSourcePreservationFromImport(imported) {
90
+ return uniqueRecordsById([
91
+ ...(imported?.metadata?.kernelSourcePreservationRecords ?? []),
92
+ ...(imported?.metadata?.sourcePreservationRecords ?? []),
93
+ ...(imported?.universalAst?.metadata?.kernelSourcePreservationRecords ?? []),
94
+ ...(imported?.universalAst?.metadata?.sourcePreservationRecords ?? [])
95
+ ].filter((record) => record?.kind === 'frontier.lang.sourcePreservation'));
96
+ }
97
+
98
+ function summarizeKernelSourcePreservation(importResult, imports) {
99
+ return summarizeKernelSourcePreservationRecords(uniqueRecordsById([
100
+ ...collectKernelSourcePreservationFromImport(importResult),
101
+ ...imports.flatMap((imported) => collectKernelSourcePreservationFromImport(imported))
102
+ ]));
103
+ }
104
+
105
+ function compactKernelSourcePreservationRecord(record) {
106
+ return {
107
+ id: record.id,
108
+ level: record.level,
109
+ precision: record.precision,
110
+ sourceMapId: record.sourceMapId,
111
+ sourceMapMappingId: record.sourceMapMappingId,
112
+ semanticNodeId: record.semanticNodeId,
113
+ nativeSourceId: record.nativeSourceId,
114
+ nativeAstNodeId: record.nativeAstNodeId,
115
+ semanticSymbolId: record.semanticSymbolId,
116
+ semanticOccurrenceId: record.semanticOccurrenceId,
117
+ sourcePath: record.sourceSpan?.path,
118
+ generatedPath: record.generatedSpan?.path ?? record.generatedSpan?.targetPath,
119
+ lossIds: record.lossIds ?? [],
120
+ evidenceIds: record.evidenceIds ?? [],
121
+ reasons: record.reasons ?? []
122
+ };
123
+ }
124
+
125
+ function summarizeImportSourcePreservation(importResult, imports) {
126
+ const records = uniqueSourcePreservationRecords([
127
+ ...collectSourcePreservationFromImport(importResult),
128
+ ...imports.flatMap((imported) => collectSourcePreservationFromImport(imported))
129
+ ]);
130
+ const compactRecords = records.map(compactSourcePreservationRecord);
131
+ return {
132
+ total: compactRecords.length,
133
+ ids: compactRecords.map((record) => record.id).filter(Boolean),
134
+ sourcePaths: uniqueStrings(compactRecords.map((record) => record.sourcePath).filter(Boolean)),
135
+ sourceHashes: uniqueStrings(compactRecords.map((record) => record.sourceHash).filter(Boolean)),
136
+ exactSourceAvailable: compactRecords.filter((record) => record.exactSourceAvailable).length,
137
+ sourceBytes: compactRecords.reduce((sum, record) => sum + (record.sourceBytes ?? 0), 0),
138
+ lineCount: compactRecords.reduce((sum, record) => sum + (record.lineCount ?? 0), 0),
139
+ tokens: compactRecords.reduce((sum, record) => sum + (record.tokens ?? 0), 0),
140
+ trivia: compactRecords.reduce((sum, record) => sum + (record.trivia ?? 0), 0),
141
+ directives: compactRecords.reduce((sum, record) => sum + (record.directives ?? 0), 0),
142
+ comments: compactRecords.reduce((sum, record) => sum + (record.comments ?? 0), 0),
143
+ whitespace: compactRecords.reduce((sum, record) => sum + (record.whitespace ?? 0), 0),
144
+ truncated: compactRecords.some((record) => record.truncated),
145
+ records: compactRecords
146
+ };
147
+ }
148
+
149
+ function collectSourcePreservationFromImport(imported) {
150
+ const nativeAst = imported?.nativeAst ?? imported?.nativeSource?.ast;
151
+ return [
152
+ imported?.metadata?.sourcePreservation,
153
+ imported?.nativeSource?.metadata?.sourcePreservation,
154
+ nativeAst?.metadata?.sourcePreservation,
155
+ imported?.universalAst?.metadata?.sourcePreservation,
156
+ ...(imported?.nativeSources ?? []).map((nativeSource) => nativeSource?.metadata?.sourcePreservation ?? nativeSource?.ast?.metadata?.sourcePreservation)
157
+ ].filter(Boolean);
158
+ }
159
+
160
+ function uniqueSourcePreservationRecords(records) {
161
+ const seen = new Set();
162
+ const result = [];
163
+ for (const record of records) {
164
+ const key = record.id ?? `${record.sourcePath ?? 'source'}#${record.sourceHash ?? result.length}`;
165
+ if (seen.has(key)) continue;
166
+ seen.add(key);
167
+ result.push(record);
168
+ }
169
+ return result;
170
+ }
171
+
172
+ function compactSourcePreservationRecord(record) {
173
+ return {
174
+ id: record.id,
175
+ language: record.language,
176
+ sourcePath: record.sourcePath,
177
+ sourceHash: record.sourceHash,
178
+ sourceBytes: record.sourceBytes,
179
+ lineCount: record.lineCount,
180
+ newline: record.newline,
181
+ encoding: record.encoding,
182
+ exactSourceAvailable: record.summary?.exactSourceAvailable === true,
183
+ tokens: record.summary?.tokens ?? record.tokens?.length ?? 0,
184
+ trivia: record.summary?.trivia ?? record.trivia?.length ?? 0,
185
+ directives: record.summary?.directives ?? record.directives?.length ?? 0,
186
+ comments: record.summary?.comments ?? 0,
187
+ whitespace: record.summary?.whitespace ?? 0,
188
+ truncated: record.summary?.truncated === true
189
+ };
190
+ }
191
+
192
+ export {
193
+ collectKernelSourcePreservationFromImport,
194
+ createKernelSourcePreservationRecords,
195
+ summarizeImportSourcePreservation,
196
+ summarizeKernelSourcePreservation,
197
+ summarizeKernelSourcePreservationRecords
198
+ };