@neuralis/brain-core 0.3.2 → 0.4.0

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 (311) hide show
  1. package/README.md +79 -1409
  2. package/app/README.md +1 -1
  3. package/app/cards/FilesystemCardShell.tsx +42 -4
  4. package/app/cards/FilesystemChangeCard.tsx +34 -11
  5. package/app/cards/README.md +6 -5
  6. package/app/cards/diffUtils.ts +99 -1
  7. package/app/filesystem/FilesystemHost.tsx +17 -2
  8. package/app/filesystem/api/README.md +3 -3
  9. package/app/filesystem/api/index.ts +35 -11
  10. package/app/filesystem/api/projectPackages.ts +13 -102
  11. package/app/filesystem/domain/types.ts +30 -10
  12. package/app/filesystem/hooks/README.md +3 -3
  13. package/app/filesystem/hooks/useDiscoverableSources.ts +19 -30
  14. package/app/filesystem/hooks/useFilesystemSSE.ts +1 -1
  15. package/app/filesystem/host/README.md +5 -3
  16. package/app/filesystem/host/buildFilesystemHostValue.ts +19 -0
  17. package/app/filesystem/host/installFilesystemHostComponents.tsx +1 -1
  18. package/app/filesystem/lib/sourceKindForm.ts +118 -39
  19. package/app/filesystem/lib/treeVisualState.tsx +98 -4
  20. package/app/filesystem/store/README.md +1 -0
  21. package/app/filesystem/store/filesystemStore.ts +86 -5
  22. package/app/filesystem/store/gitSlice.ts +5 -0
  23. package/app/filesystem/store/helpers.ts +17 -0
  24. package/app/filesystem/store/listSlice.ts +8 -0
  25. package/app/filesystem/ui/CodeEditor.tsx +18 -3
  26. package/app/filesystem/ui/FileEditor.tsx +15 -10
  27. package/app/filesystem/ui/FileTree.tsx +41 -16
  28. package/app/filesystem/ui/FolderPicker.tsx +251 -0
  29. package/app/filesystem/ui/GitControlPanel.tsx +5 -0
  30. package/app/filesystem/ui/PackagesPanel.tsx +52 -374
  31. package/app/filesystem/ui/PolicyEditor.tsx +109 -24
  32. package/app/filesystem/ui/README.md +17 -11
  33. package/app/filesystem/ui/RawMediaPreview.tsx +58 -0
  34. package/app/filesystem/ui/SourceBranchHeader.tsx +4 -4
  35. package/app/filesystem/ui/SourcesPanel.tsx +420 -360
  36. package/app/filesystem/ui/Toolbar.tsx +1 -2
  37. package/app/shared/filesystem.png +0 -0
  38. package/dist/app/host.js +57 -49
  39. package/dist/scripts/sourceRootPairV1.d.ts +47 -0
  40. package/dist/scripts/sourceRootPairV1.d.ts.map +1 -0
  41. package/dist/scripts/sourceRootPairV1.js +147 -0
  42. package/dist/scripts/sourceRootPairV1.js.map +1 -0
  43. package/dist/scripts/sourceToFolderV1.d.ts +56 -0
  44. package/dist/scripts/sourceToFolderV1.d.ts.map +1 -0
  45. package/dist/scripts/sourceToFolderV1.js +152 -0
  46. package/dist/scripts/sourceToFolderV1.js.map +1 -0
  47. package/dist/scripts/sourceToHostV1.d.ts +56 -0
  48. package/dist/scripts/sourceToHostV1.d.ts.map +1 -0
  49. package/dist/scripts/sourceToHostV1.js +132 -0
  50. package/dist/scripts/sourceToHostV1.js.map +1 -0
  51. package/dist/src/connectors/AppSourceConfigStore.d.ts +17 -3
  52. package/dist/src/connectors/AppSourceConfigStore.d.ts.map +1 -1
  53. package/dist/src/connectors/AppSourceConfigStore.js +46 -6
  54. package/dist/src/connectors/AppSourceConfigStore.js.map +1 -1
  55. package/dist/src/connectors/HostConnector.d.ts +201 -0
  56. package/dist/src/connectors/HostConnector.d.ts.map +1 -0
  57. package/dist/src/connectors/HostConnector.js +903 -0
  58. package/dist/src/connectors/HostConnector.js.map +1 -0
  59. package/dist/src/connectors/inProcessTransport.d.ts +131 -0
  60. package/dist/src/connectors/inProcessTransport.d.ts.map +1 -0
  61. package/dist/src/connectors/inProcessTransport.js +447 -0
  62. package/dist/src/connectors/inProcessTransport.js.map +1 -0
  63. package/dist/src/domain/access/callerPermissions.d.ts +29 -0
  64. package/dist/src/domain/access/callerPermissions.d.ts.map +1 -1
  65. package/dist/src/domain/access/callerPermissions.js +85 -5
  66. package/dist/src/domain/access/callerPermissions.js.map +1 -1
  67. package/dist/src/domain/access/nativeLocalFence.d.ts +65 -0
  68. package/dist/src/domain/access/nativeLocalFence.d.ts.map +1 -0
  69. package/dist/src/domain/access/nativeLocalFence.js +171 -0
  70. package/dist/src/domain/access/nativeLocalFence.js.map +1 -0
  71. package/dist/src/domain/access/uriPermission.js +3 -3
  72. package/dist/src/domain/access/uriPermission.js.map +1 -1
  73. package/dist/src/domain/byteRange.d.ts +15 -0
  74. package/dist/src/domain/byteRange.d.ts.map +1 -0
  75. package/dist/src/domain/byteRange.js +30 -0
  76. package/dist/src/domain/byteRange.js.map +1 -0
  77. package/dist/src/domain/defaultPermissions.d.ts.map +1 -1
  78. package/dist/src/domain/defaultPermissions.js +29 -0
  79. package/dist/src/domain/defaultPermissions.js.map +1 -1
  80. package/dist/src/domain/mime.d.ts +8 -16
  81. package/dist/src/domain/mime.d.ts.map +1 -1
  82. package/dist/src/domain/mime.js +10 -99
  83. package/dist/src/domain/mime.js.map +1 -1
  84. package/dist/src/domain/paths.d.ts.map +1 -1
  85. package/dist/src/domain/paths.js +5 -3
  86. package/dist/src/domain/paths.js.map +1 -1
  87. package/dist/src/domain/sourceConfig.d.ts +52 -19
  88. package/dist/src/domain/sourceConfig.d.ts.map +1 -1
  89. package/dist/src/domain/sourceConfig.js +103 -19
  90. package/dist/src/domain/sourceConfig.js.map +1 -1
  91. package/dist/src/domain/sourcePackages.d.ts +8 -8
  92. package/dist/src/domain/sourcePackages.d.ts.map +1 -1
  93. package/dist/src/domain/sourceRootPair.d.ts +88 -0
  94. package/dist/src/domain/sourceRootPair.d.ts.map +1 -0
  95. package/dist/src/domain/sourceRootPair.js +108 -0
  96. package/dist/src/domain/sourceRootPair.js.map +1 -0
  97. package/dist/src/domain/syncTypes.d.ts +8 -1
  98. package/dist/src/domain/syncTypes.d.ts.map +1 -1
  99. package/dist/src/domain/syncTypes.js +1 -0
  100. package/dist/src/domain/syncTypes.js.map +1 -1
  101. package/dist/src/domain/types.d.ts +24 -1
  102. package/dist/src/domain/types.d.ts.map +1 -1
  103. package/dist/src/domain/uri.d.ts.map +1 -1
  104. package/dist/src/domain/uri.js +3 -2
  105. package/dist/src/domain/uri.js.map +1 -1
  106. package/dist/src/embeddings/clients/GeminiEmbedder.d.ts.map +1 -1
  107. package/dist/src/embeddings/clients/GeminiEmbedder.js +2 -5
  108. package/dist/src/embeddings/clients/GeminiEmbedder.js.map +1 -1
  109. package/dist/src/embeddings/clients/OpenAIEmbedder.d.ts.map +1 -1
  110. package/dist/src/embeddings/clients/OpenAIEmbedder.js +2 -3
  111. package/dist/src/embeddings/clients/OpenAIEmbedder.js.map +1 -1
  112. package/dist/src/embeddings/clients/QwenEmbedder.d.ts +2 -0
  113. package/dist/src/embeddings/clients/QwenEmbedder.d.ts.map +1 -1
  114. package/dist/src/embeddings/clients/QwenEmbedder.js +10 -2
  115. package/dist/src/embeddings/clients/QwenEmbedder.js.map +1 -1
  116. package/dist/src/embeddings/clients/VoyageEmbedder.d.ts +2 -0
  117. package/dist/src/embeddings/clients/VoyageEmbedder.d.ts.map +1 -1
  118. package/dist/src/embeddings/clients/VoyageEmbedder.js +8 -1
  119. package/dist/src/embeddings/clients/VoyageEmbedder.js.map +1 -1
  120. package/dist/src/embeddings/factory.d.ts +5 -3
  121. package/dist/src/embeddings/factory.d.ts.map +1 -1
  122. package/dist/src/embeddings/factory.js +7 -3
  123. package/dist/src/embeddings/factory.js.map +1 -1
  124. package/dist/src/embeddings/models.d.ts +1 -1
  125. package/dist/src/embeddings/models.d.ts.map +1 -1
  126. package/dist/src/embeddings/retry.js +1 -1
  127. package/dist/src/embeddings/retry.js.map +1 -1
  128. package/dist/src/embeddings/types.d.ts +6 -0
  129. package/dist/src/embeddings/types.d.ts.map +1 -1
  130. package/dist/src/embeddings/types.js +11 -0
  131. package/dist/src/embeddings/types.js.map +1 -1
  132. package/dist/src/git/GitRunner.d.ts +110 -30
  133. package/dist/src/git/GitRunner.d.ts.map +1 -1
  134. package/dist/src/git/GitRunner.js +511 -199
  135. package/dist/src/git/GitRunner.js.map +1 -1
  136. package/dist/src/git/GitWatchRegistry.d.ts +41 -35
  137. package/dist/src/git/GitWatchRegistry.d.ts.map +1 -1
  138. package/dist/src/git/GitWatchRegistry.js +61 -79
  139. package/dist/src/git/GitWatchRegistry.js.map +1 -1
  140. package/dist/src/git/gitPlace.d.ts +61 -0
  141. package/dist/src/git/gitPlace.d.ts.map +1 -0
  142. package/dist/src/git/gitPlace.js +74 -0
  143. package/dist/src/git/gitPlace.js.map +1 -0
  144. package/dist/src/git/sourceGitControl.d.ts +31 -19
  145. package/dist/src/git/sourceGitControl.d.ts.map +1 -1
  146. package/dist/src/git/sourceGitControl.js +208 -92
  147. package/dist/src/git/sourceGitControl.js.map +1 -1
  148. package/dist/src/git/sourceGitStatus.js +1 -1
  149. package/dist/src/git/sourceGitStatus.js.map +1 -1
  150. package/dist/src/git/untrackedStats.js +1 -1
  151. package/dist/src/git/untrackedStats.js.map +1 -1
  152. package/dist/src/index.d.ts +2 -1
  153. package/dist/src/index.d.ts.map +1 -1
  154. package/dist/src/index.js +2 -1
  155. package/dist/src/index.js.map +1 -1
  156. package/dist/src/lifecycle.d.ts +8 -11
  157. package/dist/src/lifecycle.d.ts.map +1 -1
  158. package/dist/src/lifecycle.js +2 -1
  159. package/dist/src/lifecycle.js.map +1 -1
  160. package/dist/src/routes/git.d.ts.map +1 -1
  161. package/dist/src/routes/git.js +183 -54
  162. package/dist/src/routes/git.js.map +1 -1
  163. package/dist/src/routes/helpers/uriGuard.d.ts +1 -1
  164. package/dist/src/routes/helpers/uriGuard.d.ts.map +1 -1
  165. package/dist/src/routes/helpers/uriGuard.js +3 -2
  166. package/dist/src/routes/helpers/uriGuard.js.map +1 -1
  167. package/dist/src/routes/helpers.d.ts +10 -3
  168. package/dist/src/routes/helpers.d.ts.map +1 -1
  169. package/dist/src/routes/helpers.js +12 -5
  170. package/dist/src/routes/helpers.js.map +1 -1
  171. package/dist/src/routes/list.d.ts.map +1 -1
  172. package/dist/src/routes/list.js +2 -3
  173. package/dist/src/routes/list.js.map +1 -1
  174. package/dist/src/routes/policies.d.ts +6 -4
  175. package/dist/src/routes/policies.d.ts.map +1 -1
  176. package/dist/src/routes/policies.js +22 -16
  177. package/dist/src/routes/policies.js.map +1 -1
  178. package/dist/src/routes/raw.d.ts.map +1 -1
  179. package/dist/src/routes/raw.js +65 -11
  180. package/dist/src/routes/raw.js.map +1 -1
  181. package/dist/src/routes/sources.d.ts +60 -18
  182. package/dist/src/routes/sources.d.ts.map +1 -1
  183. package/dist/src/routes/sources.js +411 -299
  184. package/dist/src/routes/sources.js.map +1 -1
  185. package/dist/src/services/BridgeService.d.ts +15 -35
  186. package/dist/src/services/BridgeService.d.ts.map +1 -1
  187. package/dist/src/services/BridgeService.js +30 -88
  188. package/dist/src/services/BridgeService.js.map +1 -1
  189. package/dist/src/services/FilesystemService.d.ts +3 -2
  190. package/dist/src/services/FilesystemService.d.ts.map +1 -1
  191. package/dist/src/services/FilesystemService.js +110 -32
  192. package/dist/src/services/FilesystemService.js.map +1 -1
  193. package/dist/src/services/FilesystemUiService.d.ts +4 -1
  194. package/dist/src/services/FilesystemUiService.d.ts.map +1 -1
  195. package/dist/src/services/FilesystemUiService.js +66 -25
  196. package/dist/src/services/FilesystemUiService.js.map +1 -1
  197. package/dist/src/services/SyncScheduler.d.ts +12 -4
  198. package/dist/src/services/SyncScheduler.d.ts.map +1 -1
  199. package/dist/src/services/SyncScheduler.js +37 -8
  200. package/dist/src/services/SyncScheduler.js.map +1 -1
  201. package/dist/src/services/baselineRepair.d.ts +13 -3
  202. package/dist/src/services/baselineRepair.d.ts.map +1 -1
  203. package/dist/src/services/baselineRepair.js +13 -3
  204. package/dist/src/services/baselineRepair.js.map +1 -1
  205. package/dist/src/services/declaredSources.d.ts +125 -42
  206. package/dist/src/services/declaredSources.d.ts.map +1 -1
  207. package/dist/src/services/declaredSources.js +117 -45
  208. package/dist/src/services/declaredSources.js.map +1 -1
  209. package/dist/src/store/dataFormats.d.ts +17 -2
  210. package/dist/src/store/dataFormats.d.ts.map +1 -1
  211. package/dist/src/store/dataFormats.js +18 -3
  212. package/dist/src/store/dataFormats.js.map +1 -1
  213. package/dist/src/sync/DeltaSyncRunner.d.ts.map +1 -1
  214. package/dist/src/sync/DeltaSyncRunner.js +144 -4
  215. package/dist/src/sync/DeltaSyncRunner.js.map +1 -1
  216. package/dist/src/sync/SyncJobQueue.d.ts +7 -2
  217. package/dist/src/sync/SyncJobQueue.d.ts.map +1 -1
  218. package/dist/src/sync/SyncJobQueue.js +16 -10
  219. package/dist/src/sync/SyncJobQueue.js.map +1 -1
  220. package/dist/src/sync/SyncWatchService.d.ts +21 -4
  221. package/dist/src/sync/SyncWatchService.d.ts.map +1 -1
  222. package/dist/src/sync/SyncWatchService.js +115 -10
  223. package/dist/src/sync/SyncWatchService.js.map +1 -1
  224. package/dist/src/sync/categoryInference.d.ts +1 -1
  225. package/dist/src/sync/categoryInference.js +1 -1
  226. package/dist/src/usecases/admitSourceRoot.d.ts +65 -0
  227. package/dist/src/usecases/admitSourceRoot.d.ts.map +1 -0
  228. package/dist/src/usecases/admitSourceRoot.js +85 -0
  229. package/dist/src/usecases/admitSourceRoot.js.map +1 -0
  230. package/dist/src/usecases/browseSourceFolders.d.ts +85 -0
  231. package/dist/src/usecases/browseSourceFolders.d.ts.map +1 -0
  232. package/dist/src/usecases/browseSourceFolders.js +210 -0
  233. package/dist/src/usecases/browseSourceFolders.js.map +1 -0
  234. package/dist/src/usecases/createDeclaredSources.d.ts +13 -2
  235. package/dist/src/usecases/createDeclaredSources.d.ts.map +1 -1
  236. package/dist/src/usecases/createDeclaredSources.js +39 -0
  237. package/dist/src/usecases/createDeclaredSources.js.map +1 -1
  238. package/dist/src/usecases/list.d.ts.map +1 -1
  239. package/dist/src/usecases/list.js +83 -26
  240. package/dist/src/usecases/list.js.map +1 -1
  241. package/dist/src/usecases/listAttachableDevices.d.ts +13 -0
  242. package/dist/src/usecases/listAttachableDevices.d.ts.map +1 -0
  243. package/dist/src/usecases/listAttachableDevices.js +10 -0
  244. package/dist/src/usecases/listAttachableDevices.js.map +1 -0
  245. package/dist/src/usecases/listSourcePackages.d.ts.map +1 -1
  246. package/dist/src/usecases/listSourcePackages.js +2 -5
  247. package/dist/src/usecases/listSourcePackages.js.map +1 -1
  248. package/dist/src/usecases/purgeExcludedPoints.d.ts.map +1 -1
  249. package/dist/src/usecases/purgeExcludedPoints.js +3 -2
  250. package/dist/src/usecases/purgeExcludedPoints.js.map +1 -1
  251. package/dist/src/usecases/readFiles.d.ts.map +1 -1
  252. package/dist/src/usecases/readFiles.js +15 -0
  253. package/dist/src/usecases/readFiles.js.map +1 -1
  254. package/dist/src/usecases/reconcileSourcePackageRoots.d.ts +1 -1
  255. package/dist/src/usecases/reconcileSourcePackageRoots.d.ts.map +1 -1
  256. package/dist/src/usecases/reconcileSourcePackageRoots.js +2 -1
  257. package/dist/src/usecases/reconcileSourcePackageRoots.js.map +1 -1
  258. package/dist/src/usecases/revokePrincipal.d.ts +7 -5
  259. package/dist/src/usecases/revokePrincipal.d.ts.map +1 -1
  260. package/dist/src/usecases/revokePrincipal.js +29 -7
  261. package/dist/src/usecases/revokePrincipal.js.map +1 -1
  262. package/dist/src/usecases/scheduleSourceSync.d.ts +7 -0
  263. package/dist/src/usecases/scheduleSourceSync.d.ts.map +1 -1
  264. package/dist/src/usecases/scheduleSourceSync.js +6 -5
  265. package/dist/src/usecases/scheduleSourceSync.js.map +1 -1
  266. package/dist/src/usecases/triggerSourceSync.d.ts +46 -0
  267. package/dist/src/usecases/triggerSourceSync.d.ts.map +1 -0
  268. package/dist/src/usecases/triggerSourceSync.js +75 -0
  269. package/dist/src/usecases/triggerSourceSync.js.map +1 -0
  270. package/dist/src/usecases/uploadBinary.d.ts +2 -1
  271. package/dist/src/usecases/uploadBinary.d.ts.map +1 -1
  272. package/dist/src/usecases/uploadBinary.js +2 -2
  273. package/dist/src/usecases/uploadBinary.js.map +1 -1
  274. package/dist/src/usecases/vector/endpointGuard.d.ts +1 -1
  275. package/dist/src/usecases/vector/endpointGuard.js +1 -1
  276. package/dist/src/vector/qdrantClient.d.ts +1 -1
  277. package/dist/src/vector/qdrantClient.js +1 -1
  278. package/dist/src/wiring.d.ts +3 -0
  279. package/dist/src/wiring.d.ts.map +1 -1
  280. package/dist/src/wiring.js +72 -6
  281. package/dist/src/wiring.js.map +1 -1
  282. package/package.json +145 -54
  283. package/skills/connect-business-data/SKILL.md +2 -2
  284. package/skills/create-package/SKILL.md +18 -18
  285. package/skills/create-package/references/config-and-credentials.md +16 -13
  286. package/skills/create-package/references/connectors-and-uri-policies.md +36 -27
  287. package/skills/create-package/references/manifest-and-discovery.md +12 -12
  288. package/skills/create-package/references/runtime-and-build.md +18 -18
  289. package/skills/create-package/references/skills-and-context.md +35 -19
  290. package/skills/create-package/references/surfaces-and-design.md +16 -16
  291. package/skills/create-package/references/team-and-workflows.md +2 -2
  292. package/skills/create-package/references/test-and-ship.md +17 -17
  293. package/skills/create-package/references/tools-and-schemas.md +5 -5
  294. package/skills/create-package/scripts/{check-package.sh → check-package.mjs} +78 -64
  295. package/skills/create-package/scripts/{verify-loaded.sh → verify-loaded.mjs} +156 -162
  296. package/skills/git/SKILL.md +31 -29
  297. package/skills/manage-files/SKILL.md +11 -14
  298. package/skills/manage-sources/SKILL.md +85 -45
  299. package/skills/manage-uri-policy/SKILL.md +9 -6
  300. package/skills/sync/SKILL.md +1 -1
  301. package/dist/src/connectors/LocalDiskConnector.d.ts +0 -171
  302. package/dist/src/connectors/LocalDiskConnector.d.ts.map +0 -1
  303. package/dist/src/connectors/LocalDiskConnector.js +0 -1233
  304. package/dist/src/connectors/LocalDiskConnector.js.map +0 -1
  305. package/skills/manage-files/scripts/copy.sh +0 -7
  306. package/skills/manage-files/scripts/create.sh +0 -7
  307. package/skills/manage-files/scripts/mkdir.sh +0 -7
  308. package/skills/manage-files/scripts/modify.sh +0 -7
  309. package/skills/manage-files/scripts/upload.sh +0 -16
  310. package/skills/manage-files/scripts/write.sh +0 -29
  311. package/skills/manage-sources/scripts/reembed.sh +0 -23
@@ -24,7 +24,7 @@
24
24
  * REPLACES the whole persisted floor class with what its `trustedBaselines`
25
25
  * argument names — it does not merge. Reconciling a `data` source against the
26
26
  * connector floors alone (the `local` connector declares none) would therefore
27
- * DELETE the eight `floor:true` rules agent-core declares, silently (this repair
27
+ * DELETE the nine `floor:true` rules agent-core declares, silently (this repair
28
28
  * is `void`-fired and its catch only warns) and persistently. The two sources:
29
29
  *
30
30
  * 1. scheme-keyed MANIFEST `uriPolicies` (`data`/`packages` only — four
@@ -56,8 +56,18 @@ import type { SourceConfigPort } from '../connectors/types.js';
56
56
  * the manifest edit reaches new sources only and every existing deployment
57
57
  * stays open. A bump also re-runs the non-floor baseline UNION, and
58
58
  * `mergeBaselines` does not dedupe: expect every manifest path row to appear
59
- * twice in the persisted config. That is by design — evaluation is order- and
60
- * duplicate-insensitive for these rows — do not "fix" it here.
59
+ * twice in the persisted config. A duplicate of a manifest row is harmless, but
60
+ * the last row declaring a bit decides: a bump re-appends every manifest row
61
+ * AFTER the stored subject-scoped grant rows (agent attach rows, conversation
62
+ * widenings) and revokes them. A bump therefore ships WITH an offline step that
63
+ * re-appends those rows after the union (the `source-uri-subject-v1` shape) —
64
+ * never a dedupe here, do not "fix" it in this file.
65
+ *
66
+ * A row whose SUBJECT changes is not a bump: the stored owner/admin rows took
67
+ * `priority: 2` (the caller's role priority, admin or stronger) from the
68
+ * offline `source-uri-subject-v1` upgrade
69
+ * (`brain-core/source-config` v6), which rewrites rows in place instead of
70
+ * appending the manifest rows a second time over hand-made edits.
61
71
  */
62
72
  export declare const SOURCE_BASELINE_REPAIR_VERSION = 5;
63
73
  export type BaselineRepairResult = {
@@ -1 +1 @@
1
- {"version":3,"file":"baselineRepair.d.ts","sourceRoot":"","sources":["../../../src/services/baselineRepair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,KAAK,EACV,gCAAgC,EAChC,uBAAuB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,aAAa,EAAE,gBAAgB,CAAC;IAChC,qBAAqB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC,CAAC;IAC9F;;;;;;;;;;;OAWG;IACH,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IAChE,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;KAAE,CAAC;CACzI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAyEhC;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD,MAAM,MAAM,qBAAqB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAI3F,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,aAAa,EAAE,gBAAgB,CAAC;IAChC;;;;;;OAMG;IACH,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;KAAE,CAAC;CACzI,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA2FjC"}
1
+ {"version":3,"file":"baselineRepair.d.ts","sourceRoot":"","sources":["../../../src/services/baselineRepair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,KAAK,EACV,gCAAgC,EAChC,uBAAuB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,aAAa,EAAE,gBAAgB,CAAC;IAChC,qBAAqB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC,CAAC;IAC9F;;;;;;;;;;;OAWG;IACH,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IAChE,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;KAAE,CAAC;CACzI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAyEhC;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD,MAAM,MAAM,qBAAqB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAI3F,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,aAAa,EAAE,gBAAgB,CAAC;IAChC;;;;;;OAMG;IACH,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;KAAE,CAAC;CACzI,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA2FjC"}
@@ -24,7 +24,7 @@
24
24
  * REPLACES the whole persisted floor class with what its `trustedBaselines`
25
25
  * argument names — it does not merge. Reconciling a `data` source against the
26
26
  * connector floors alone (the `local` connector declares none) would therefore
27
- * DELETE the eight `floor:true` rules agent-core declares, silently (this repair
27
+ * DELETE the nine `floor:true` rules agent-core declares, silently (this repair
28
28
  * is `void`-fired and its catch only warns) and persistently. The two sources:
29
29
  *
30
30
  * 1. scheme-keyed MANIFEST `uriPolicies` (`data`/`packages` only — four
@@ -55,8 +55,18 @@ import { applyTrustedSourceBaselines, } from '@neuralis/package-system/policies'
55
55
  * the manifest edit reaches new sources only and every existing deployment
56
56
  * stays open. A bump also re-runs the non-floor baseline UNION, and
57
57
  * `mergeBaselines` does not dedupe: expect every manifest path row to appear
58
- * twice in the persisted config. That is by design — evaluation is order- and
59
- * duplicate-insensitive for these rows — do not "fix" it here.
58
+ * twice in the persisted config. A duplicate of a manifest row is harmless, but
59
+ * the last row declaring a bit decides: a bump re-appends every manifest row
60
+ * AFTER the stored subject-scoped grant rows (agent attach rows, conversation
61
+ * widenings) and revokes them. A bump therefore ships WITH an offline step that
62
+ * re-appends those rows after the union (the `source-uri-subject-v1` shape) —
63
+ * never a dedupe here, do not "fix" it in this file.
64
+ *
65
+ * A row whose SUBJECT changes is not a bump: the stored owner/admin rows took
66
+ * `priority: 2` (the caller's role priority, admin or stronger) from the
67
+ * offline `source-uri-subject-v1` upgrade
68
+ * (`brain-core/source-config` v6), which rewrites rows in place instead of
69
+ * appending the manifest rows a second time over hand-made edits.
60
70
  */
61
71
  export const SOURCE_BASELINE_REPAIR_VERSION = 5;
62
72
  export async function repairSourceBaselines(deps) {
@@ -1 +1 @@
1
- {"version":3,"file":"baselineRepair.js","sourceRoot":"","sources":["../../../src/services/baselineRepair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baselineRepair.js","sourceRoot":"","sources":["../../../src/services/baselineRepair.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * - `matchDeclaredSource` — the UNSPOOFABLE attribution match used by
11
11
  * `listSourceRuntimeSummaries` to resolve `origin_package` + the description
12
- * fallback. Matches on slug + connection kind AND, for local kinds, the
12
+ * fallback. Matches on slug + connection kind AND, for rooted kinds, the
13
13
  * RESOLVED root (a user mount named `app` whose root is not the platform app
14
14
  * zone will NOT match the admin app-zone declaration → it stays "Mounted").
15
15
  * - `repairDeclaredSources` — the version-stamped description backfill
@@ -30,7 +30,7 @@
30
30
  * declaration reaching here is trust-authorized.
31
31
  */
32
32
  export { createMissingDeclaredSources, type DeclaredSourceFailure } from '../usecases/createDeclaredSources.js';
33
- import type { ConnectorHierarchicalPermissions, ConnectorPathPermission, MachineWrittenEntry, PackageSourceDeclaration, SourceLiveReason, SourceScope } from '@neuralis/package-system/contracts';
33
+ import type { ConnectorHierarchicalPermissions, ConnectorPathPermission, MachineWrittenEntry, PackageSourceDeclaration, PackageSourceRoot, SourceLiveReason, SourceScope } from '@neuralis/package-system/contracts';
34
34
  import type { RuntimeStackInfo } from '@neuralis/package-system/paths';
35
35
  import type { SourceConfig } from '../domain/sourceConfig.js';
36
36
  import { type SourceEnabledDeps } from '../domain/access/sourceEnabled.js';
@@ -53,18 +53,19 @@ export declare function isOwnDataZoneDeclaration(originPackage: string, decl: Pa
53
53
  type MatchCtx = {
54
54
  projectRoot: string;
55
55
  appRoot: string | null;
56
+ isDocker: boolean;
56
57
  };
57
58
  /**
58
59
  * Contract-backed source attribution. Returns the declaring package id + the
59
60
  * declaration when `config` is an instance of a declared source, else null.
60
- * Slug + kind must match; for `local` kinds with a declared root the RESOLVED
61
+ * Slug + kind must match; for a declaration with a root the RESOLVED
61
62
  * roots must match too — this is the anti-spoof guard (a user mount that merely
62
63
  * shares a declared slug but points elsewhere is NOT attributed).
63
64
  *
64
65
  * PRECONDITION (architect MINOR-1): `declsByPkg` contains ONLY trusted-or-above
65
66
  * packages' declarations — `aggregateTrustedSourceDeclarations` (agent-core)
66
67
  * filters the map at bootstrap. Without that filter an untrusted package could
67
- * replicate a first-party `(slug, root)` or a registered sandbox kind and be
68
+ * replicate a native `(slug, root)` or a registered sandbox kind and be
68
69
  * attributed here; the match key alone is not a trust boundary.
69
70
  */
70
71
  export declare function matchDeclaredSource(config: Pick<SourceConfig, 'source' | 'connection'>, declsByPkg: Record<string, PackageSourceDeclaration[]>, ctx: MatchCtx): {
@@ -75,7 +76,7 @@ export declare function matchDeclaredSource(config: Pick<SourceConfig, 'source'
75
76
  * Build a persisted `SourceConfig` from a `seed:'auto'` project-scope
76
77
  * declaration for create-missing (existing projects predating the declaration).
77
78
  * Returns null for shapes create-missing does not handle (user/agent scope,
78
- * a local kind without a project-relative root) — those are skipped + logged.
79
+ * a folder without a project-relative root) — those are skipped + logged.
79
80
  */
80
81
  export declare function buildDeclaredSourceConfig(decl: PackageSourceDeclaration, ctx: {
81
82
  projectId: string;
@@ -150,7 +151,7 @@ export declare function autoProjectDeclarations(declsByPkg: Record<string, Packa
150
151
  * One filesystem-coverable source root for the shell uri-policy gate (S1 —
151
152
  * `briny-fencing-pelican`). `containerRoot` is resolved with the SAME
152
153
  * canonical `resolveLocalRoot` the connector wiring uses (relative join /
153
- * absolute as written), so the gate's
154
+ * the plane's half of an absolute pair), so the gate's
154
155
  * container-path → source mapping never diverges from what the connector
155
156
  * actually mounts. Server-internal: the list is NOT access-filtered — the
156
157
  * consumer evaluates `permissions` against the caller's own session context
@@ -176,43 +177,29 @@ export type ShellSourceRoot = {
176
177
  * infer it from the slug string, because a plain local source may
177
178
  * legitimately be named `host-notes`.
178
179
  */
179
- plane?: 'container' | 'host';
180
- /** Absolute HOST path. Set only for `plane: 'host'`. */
180
+ plane?: 'local' | 'device';
181
+ /** Absolute HOST path. Set only for `plane: 'device'`. */
181
182
  hostRoot?: string;
182
183
  /**
183
- * The paired device a `plane: 'host'` source lives on — its
184
+ * The paired device a `plane: 'device'` source lives on — its
184
185
  * `connection.config.device`, read as an opaque string (brain-core knows no
185
- * device semantics). The consumer partitions the host plane by it.
186
+ * device semantics). The consumer partitions the device plane by it.
186
187
  */
187
188
  device?: string;
188
189
  };
189
190
  /**
190
- * R2 — one candidate row for the host's runtime-WASM package activation. The
191
- * host (`projectPackages`) enumerates these and constructs a package scanner
192
- * for every source that is project-scoped, `recognizesPackages`, enabled, and
193
- * `local`-kind. ALL project-associated sources are returned (no pre-filter) so
194
- * the host can log each skip; deny-by-default lives in the host filter.
191
+ * R2 — one candidate row for the host's runtime package activation: the
192
+ * kernel's `PackageSourceRoot` (ONE shape, `contracts/services.ts`). The host
193
+ * (`projectPackages`) enumerates these and constructs a package scanner for
194
+ * every `packageFolders` entry of an enabled source whose root it can open in
195
+ * process. ALL project-associated sources are returned (no pre-filter) so the
196
+ * host can log each skip; deny-by-default lives in the host filter.
195
197
  */
196
- export type PackageSourceRoot = {
197
- /** Source slug. */
198
- slug: string;
199
- /** Canonical URI root — `${slug}://`. */
200
- uriRoot: string;
201
- /** Absolute container-side root dir, or '' for non-local kinds. */
202
- containerRoot: string;
203
- /** Source scope (the host loads only `kind: 'project'` in R2; user/agent → R2b). */
204
- scope: SourceScope;
205
- /** The opt-in flag (deny-by-default false). */
206
- recognizesPackages: boolean;
207
- /** Effective enabled state (`resolveEnabledState !== false`). */
208
- enabled: boolean;
209
- /** The persisted `connection.kind`. */
210
- kind: string;
211
- };
198
+ export type { PackageSourceRoot };
212
199
  /**
213
200
  * One access-filtered source row for the agent-core `<runtime_stack>` source
214
201
  * table. The READ sibling of `ShellSourceRoot`: scope/feature-filtered to the
215
- * caller, all connector kinds (not just `local`), and stats-bearing — but read
202
+ * caller, all connector kinds (not just folders), and stats-bearing — but read
216
203
  * PURELY from persisted source-config JSON (`description` + `sync.stats`), with
217
204
  * NO live walk / connector.count() / vector count. Loaded once per stream, so
218
205
  * it sits in the cacheable system-prompt prefix. SLIM by design — the
@@ -221,10 +208,23 @@ export type PackageSourceRoot = {
221
208
  export type SourceRuntimeSummary = {
222
209
  /** `${slug}://`. */
223
210
  uriRoot: string;
224
- /** Coarse connector family — `local` | `brain` | `webtop` | the kind. */
211
+ /** Coarse connector family — `host` | `brain` | `webtop` | the kind. */
225
212
  connector: string;
226
- /** The persisted `connection.kind` (e.g. `local`, `brain`, `machine-user`). */
213
+ /** The persisted `connection.kind` (e.g. `host`, `brain`, `webtop`). */
227
214
  kind: string;
215
+ /**
216
+ * A device source's machine: the owner-given name and the platform it claimed
217
+ * (stable), and its live confinement verdict (volatile — `<workspace_live>`).
218
+ * `retired` when the device was revoked, must pair again, or is gone (then its
219
+ * id stands for the name and the platform reads `unknown`). Absent for a
220
+ * source on this server.
221
+ */
222
+ device?: {
223
+ name: string;
224
+ os: string;
225
+ confinement?: 'sandboxed' | 'unconfined' | 'unproven';
226
+ retired?: true;
227
+ };
228
228
  /** Human description from the source config, or null. */
229
229
  description: string | null;
230
230
  /** Host-side absolute root, or null when not host-resolvable. */
@@ -299,11 +299,65 @@ export type SourceEnumerationDeps = {
299
299
  packageSourceDeclarations(): Record<string, PackageSourceDeclaration[]>;
300
300
  /** The platform app root (resolves `${appRoot}` declarations), or null before boot. */
301
301
  appRoot(): string | null;
302
+ /** The runtime stack's plane: which half of a source's root pair this process opens. */
303
+ isDocker(): boolean;
304
+ /**
305
+ * The device folder as THIS process may open it to load packages — agent-core's
306
+ * `devices.localFolderRoot` (a loopback device, a ceiling-checked directory):
307
+ * `{ root }`, or `{ skipped }` with a fixed reason code. Absent ⇒ no device
308
+ * folder is ever opened in process.
309
+ */
310
+ localDeviceFolder?(input: {
311
+ device: string;
312
+ root: string;
313
+ project?: {
314
+ projectId: string;
315
+ };
316
+ }): Promise<{
317
+ root: string;
318
+ } | {
319
+ skipped: string;
320
+ }>;
321
+ /**
322
+ * A device folder's packages read OVER ITS LINK — agent-core's
323
+ * `devices.devicePackageFolder`: the reader factory of its package folders, or
324
+ * `{ skipped }` with a fixed code. Absent ⇒ no device folder of another machine
325
+ * (or of any machine, inside a container) loads packages. A PROJECT-scope
326
+ * folder carries its `project`, so agent-core re-asks at every read whether the
327
+ * device's owner still holds `device.own` there.
328
+ */
329
+ devicePackageFolder?(input: {
330
+ source: string;
331
+ device: string;
332
+ root: string;
333
+ project?: {
334
+ projectId: string;
335
+ };
336
+ }): NonNullable<PackageSourceRoot['device']> | {
337
+ skipped: string;
338
+ };
339
+ /** agent-core's `devices.describe`: a device's name, platform and live confinement, `retired` for a revoked one (`null` ⇒ not held, e.g. purged). */
340
+ describeDevice?(deviceId: string): Promise<{
341
+ name: string;
342
+ os: string;
343
+ confinement?: 'sandboxed' | 'unconfined' | 'unproven';
344
+ retired?: true;
345
+ } | null>;
346
+ /**
347
+ * A source with package folders that loads none, and why (a fixed code, never
348
+ * a path) — the caller logs each (project, source, reason) once.
349
+ */
350
+ packageFolderSkipped?(projectId: string, slug: string, reason: string): void;
302
351
  };
303
352
  export declare function listShellSourceRoots(deps: SourceEnumerationDeps, projectId: string): Promise<ShellSourceRoot[]>;
304
353
  export declare function listPackageSourceRoots(deps: SourceEnumerationDeps, projectId: string): Promise<PackageSourceRoot[]>;
305
- /** THE package-source projection of one persisted config (runtime listing and offline upgrade alike). */
306
- export declare function toPackageSourceRoot(config: SourceConfig, projectRoot: string): PackageSourceRoot;
354
+ /**
355
+ * THE package-source projection of one persisted config (runtime listing and
356
+ * offline upgrade alike). `containerRoot` is the in-process folder's resolved
357
+ * root; a device folder's is `''` here (only the async runtime listing may ask
358
+ * agent-core whether this process can open it).
359
+ */
360
+ export declare function toPackageSourceRoot(config: SourceConfig, projectRoot: string, isDocker: boolean): PackageSourceRoot;
307
361
  export declare function listSourceRuntimeSummaries(deps: SourceEnumerationDeps, projectId: string, opts: SourceRuntimeSummaryOptions): Promise<SourceRuntimeSummary[]>;
308
362
  export type SourceConfigPatch = {
309
363
  source: string;
@@ -314,15 +368,44 @@ export type SourceConfigPatch = {
314
368
  description?: string;
315
369
  };
316
370
  /**
317
- * The ONE sanctioned cross-package source-config write (`upsertSourceConfig`
318
- * on the package API): re-read, merge permissions + sync + description,
319
- * validate, persist. Admin and other host callers must NOT write source JSON
320
- * directly — this keeps the connector registry and on-disk configs in sync.
371
+ * Who asks for a cross-package source-config edit: the scope the config is read
372
+ * under plus the caller's features (the device-owner gate reads them; absent
373
+ * features answer like none — deny by default).
374
+ */
375
+ export type SourceConfigCaller = SourceConfigScope & {
376
+ agentId?: string;
377
+ grantedFeatures: readonly string[];
378
+ };
379
+ /** A refused edit: the route PATCH's status, text and (for a floor) code. */
380
+ export type SourceEditRefusal = {
381
+ status: 400 | 403 | 409;
382
+ error: string;
383
+ code?: string;
384
+ };
385
+ /**
386
+ * The edit gates the route's PATCH runs, bound per package state: the refusal,
387
+ * or null. Another member's user/agent source needs `files.writeOthers`; an
388
+ * immutable `floor:true` row is never dropped or altered (409); a device-plane
389
+ * source is edited only by its device's owner holding `device.own`; a
390
+ * protected-zone root needs `sources.privileged`; a source the native folder
391
+ * fence refuses (it predates the fence) may be narrowed, never widened.
321
392
  */
322
- export declare function upsertSourceConfig(sourceConfigs: SourceConfigPort, scope: SourceConfigScope, patch: SourceConfigPatch, logger: RepairLogger): Promise<{
393
+ export type SourceEditFence = (caller: SourceConfigCaller, existing: SourceConfig, next: SourceConfig) => Promise<SourceEditRefusal | null>;
394
+ /** A refused edit answers the route PATCH's status (403, 409 for a floor), an unknown or invalid one 400. */
395
+ export type SourceConfigWriteResult = {
323
396
  ok: true;
324
397
  } | {
325
398
  ok: false;
399
+ status: 400 | 403 | 409;
326
400
  error: string;
327
- }>;
401
+ code?: string;
402
+ };
403
+ /**
404
+ * The ONE sanctioned cross-package source-config write (`upsertSourceConfig`
405
+ * on the package API): re-read, merge permissions + sync + description,
406
+ * fence, validate, persist. Admin and other host callers must NOT write source
407
+ * JSON directly — this keeps the connector registry and on-disk configs in
408
+ * sync, and the native fence on every writer.
409
+ */
410
+ export declare function upsertSourceConfig(sourceConfigs: SourceConfigPort, caller: SourceConfigCaller, patch: SourceConfigPatch, logger: RepairLogger, refusesEdit: SourceEditFence): Promise<SourceConfigWriteResult>;
328
411
  //# sourceMappingURL=declaredSources.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"declaredSources.d.ts","sourceRoot":"","sources":["../../../src/services/declaredSources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"declaredSources.d.ts","sourceRoot":"","sources":["../../../src/services/declaredSources.ts"],"names":[],"mappings":"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"}