spawnfile 0.1.13 → 0.1.14

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 (598) hide show
  1. package/README.md +50 -11
  2. package/dist/audit/auditCli.d.ts +19 -0
  3. package/dist/audit/auditCli.js +63 -0
  4. package/dist/audit/checks.d.ts +100 -0
  5. package/dist/audit/checks.js +279 -0
  6. package/dist/audit/checksShared.d.ts +74 -0
  7. package/dist/audit/checksShared.js +37 -0
  8. package/dist/audit/generateAudit.d.ts +19 -0
  9. package/dist/audit/generateAudit.js +122 -0
  10. package/dist/audit/index.d.ts +4 -0
  11. package/dist/audit/index.js +4 -0
  12. package/dist/audit/readAudit.d.ts +50 -0
  13. package/dist/audit/readAudit.js +59 -0
  14. package/dist/audit/types.d.ts +40 -0
  15. package/dist/audit/types.js +8 -0
  16. package/dist/auth/credentialEnvFile.d.ts +11 -0
  17. package/dist/auth/credentialEnvFile.js +60 -0
  18. package/dist/auth/credentialProvisioning.d.ts +15 -0
  19. package/dist/auth/credentialProvisioning.js +75 -0
  20. package/dist/auth/credentialProvisioningReceipt.d.ts +28 -0
  21. package/dist/auth/credentialProvisioningReceipt.js +70 -0
  22. package/dist/auth/credentialProvisioningRequest.d.ts +51 -0
  23. package/dist/auth/credentialProvisioningRequest.js +169 -0
  24. package/dist/auth/credentialWorldBindings.d.ts +21 -0
  25. package/dist/auth/credentialWorldBindings.js +104 -0
  26. package/dist/auth/index.d.ts +7 -0
  27. package/dist/auth/index.js +7 -0
  28. package/dist/auth/paths.d.ts +11 -0
  29. package/dist/auth/paths.js +21 -0
  30. package/dist/auth/targetSecretSourceAuthor.d.ts +18 -0
  31. package/dist/auth/targetSecretSourceAuthor.js +52 -0
  32. package/dist/auth/targetSecretSourceFsPublish.d.ts +15 -0
  33. package/dist/auth/targetSecretSourceFsPublish.js +49 -0
  34. package/dist/auth/targetSecretSourceFsPublishImmutable.d.ts +16 -0
  35. package/dist/auth/targetSecretSourceFsPublishImmutable.js +435 -0
  36. package/dist/auth/targetSecretSourceFsRead.d.ts +14 -0
  37. package/dist/auth/targetSecretSourceFsRead.js +198 -0
  38. package/dist/auth/targetSecretSourceGrant.d.ts +16 -0
  39. package/dist/auth/targetSecretSourceGrant.js +99 -0
  40. package/dist/auth/targetSecretSourceGrantRecords.d.ts +84 -0
  41. package/dist/auth/targetSecretSourceGrantRecords.js +214 -0
  42. package/dist/auth/targetSecretSourceLifecycle.d.ts +30 -0
  43. package/dist/auth/targetSecretSourceLifecycle.js +52 -0
  44. package/dist/auth/targetSecretSourceOwnerEntropy.d.ts +6 -0
  45. package/dist/auth/targetSecretSourceOwnerEntropy.js +28 -0
  46. package/dist/auth/targetSecretSourceRecordCommon.d.ts +14 -0
  47. package/dist/auth/targetSecretSourceRecordCommon.js +100 -0
  48. package/dist/auth/targetSecretSourceRecordPublish.d.ts +10 -0
  49. package/dist/auth/targetSecretSourceRecordPublish.js +104 -0
  50. package/dist/auth/targetSecretSourceResolver.d.ts +10 -0
  51. package/dist/auth/targetSecretSourceResolver.js +137 -0
  52. package/dist/auth/targetSecretSourceRevoke.d.ts +20 -0
  53. package/dist/auth/targetSecretSourceRevoke.js +92 -0
  54. package/dist/auth/targetSecretSourceRotate.d.ts +19 -0
  55. package/dist/auth/targetSecretSourceRotate.js +121 -0
  56. package/dist/auth/targetSecretSourceVersionRecords.d.ts +49 -0
  57. package/dist/auth/targetSecretSourceVersionRecords.js +166 -0
  58. package/dist/cli/artifactsCommands.d.ts +27 -0
  59. package/dist/cli/artifactsCommands.js +132 -0
  60. package/dist/cli/authCommands.d.ts +5 -0
  61. package/dist/cli/authCommands.js +221 -0
  62. package/dist/cli/compileBuildCommands.d.ts +3 -0
  63. package/dist/cli/compileBuildCommands.js +35 -0
  64. package/dist/cli/containerBundleCommand.d.ts +6 -0
  65. package/dist/cli/containerBundleCommand.js +116 -0
  66. package/dist/cli/downCommand.d.ts +25 -0
  67. package/dist/cli/downCommand.js +134 -0
  68. package/dist/cli/index.js +6 -3
  69. package/dist/cli/lifecycleCommands.d.ts +1 -1
  70. package/dist/cli/lifecycleCommands.js +11 -181
  71. package/dist/cli/lifecycleMachine.d.ts +19 -0
  72. package/dist/cli/lifecycleMachine.js +78 -0
  73. package/dist/cli/lifecyclePlan.d.ts +35 -0
  74. package/dist/cli/lifecyclePlan.js +240 -0
  75. package/dist/cli/lifecyclePlanningCommands.d.ts +3 -0
  76. package/dist/cli/lifecyclePlanningCommands.js +30 -0
  77. package/dist/cli/runCli.d.ts +9 -2
  78. package/dist/cli/runCli.js +27 -71
  79. package/dist/cli/runPublishCommands.d.ts +3 -0
  80. package/dist/cli/runPublishCommands.js +70 -0
  81. package/dist/cli/statusCommand.d.ts +3 -33
  82. package/dist/cli/statusCommand.js +19 -249
  83. package/dist/cli/statusCommandLive.d.ts +20 -0
  84. package/dist/cli/statusCommandLive.js +188 -0
  85. package/dist/cli/statusCommandOptions.d.ts +40 -0
  86. package/dist/cli/statusCommandOptions.js +42 -0
  87. package/dist/cli/targetCliRoute.d.ts +2 -0
  88. package/dist/cli/targetCliRoute.js +30 -0
  89. package/dist/cli/targetCommands.d.ts +33 -0
  90. package/dist/cli/targetCommands.js +257 -0
  91. package/dist/cli/targetComposedPreparationCommand.d.ts +6 -0
  92. package/dist/cli/targetComposedPreparationCommand.js +39 -0
  93. package/dist/cli/targetDefaultArtifactAuthority.d.ts +5 -0
  94. package/dist/cli/targetDefaultArtifactAuthority.js +28 -0
  95. package/dist/cli/targetDefaultAuthorities.d.ts +53 -0
  96. package/dist/cli/targetDefaultAuthorities.js +210 -0
  97. package/dist/cli/targetDefaultConfig.d.ts +68 -0
  98. package/dist/cli/targetDefaultConfig.js +317 -0
  99. package/dist/cli/targetDefaultConfigStdin.d.ts +13 -0
  100. package/dist/cli/targetDefaultConfigStdin.js +215 -0
  101. package/dist/cli/targetDefaultEnvelope.d.ts +1 -0
  102. package/dist/cli/targetDefaultEnvelope.js +13 -0
  103. package/dist/cli/targetDefaultHandlerFactory.d.ts +28 -0
  104. package/dist/cli/targetDefaultHandlerFactory.js +247 -0
  105. package/dist/cli/targetDefaultHandlers.d.ts +21 -0
  106. package/dist/cli/targetDefaultHandlers.js +72 -0
  107. package/dist/cli/targetDefaultJournalAuthority.d.ts +35 -0
  108. package/dist/cli/targetDefaultJournalAuthority.js +135 -0
  109. package/dist/cli/targetDefaultWorldClock.d.ts +4 -0
  110. package/dist/cli/targetDefaultWorldClock.js +14 -0
  111. package/dist/cli/targetDefaultWorldQueries.d.ts +5 -0
  112. package/dist/cli/targetDefaultWorldQueries.js +11 -0
  113. package/dist/cli/targetDefaultWorldReadiness.d.ts +4 -0
  114. package/dist/cli/targetDefaultWorldReadiness.js +17 -0
  115. package/dist/cli/targetEvidenceHelperResolution.d.ts +14 -0
  116. package/dist/cli/targetEvidenceHelperResolution.js +23 -0
  117. package/dist/cli/targetLookupCli.d.ts +3 -0
  118. package/dist/cli/targetLookupCli.js +31 -0
  119. package/dist/cli/targetLookupCommands.d.ts +12 -0
  120. package/dist/cli/targetLookupCommands.js +69 -0
  121. package/dist/cli/targetOperationDispatch.d.ts +58 -0
  122. package/dist/cli/targetOperationDispatch.js +21 -0
  123. package/dist/cli/targetReceiptOutput.d.ts +14 -0
  124. package/dist/cli/targetReceiptOutput.js +21 -0
  125. package/dist/cli/targetRequestFile.d.ts +14 -0
  126. package/dist/cli/targetRequestFile.js +63 -0
  127. package/dist/cli/targetSecretSourceInput.d.ts +28 -0
  128. package/dist/cli/targetSecretSourceInput.js +121 -0
  129. package/dist/cli/targetWorldClockCommand.d.ts +10 -0
  130. package/dist/cli/targetWorldClockCommand.js +42 -0
  131. package/dist/cli/targetWorldClockCrossProcess.test-helper.d.ts +13 -0
  132. package/dist/cli/targetWorldClockCrossProcess.test-helper.js +109 -0
  133. package/dist/cli/targetWorldReadinessCommand.d.ts +10 -0
  134. package/dist/cli/targetWorldReadinessCommand.js +43 -0
  135. package/dist/cli/upCommand.d.ts +3 -0
  136. package/dist/cli/upCommand.js +133 -0
  137. package/dist/cli/upImageCommand.d.ts +11 -0
  138. package/dist/cli/upImageCommand.js +41 -0
  139. package/dist/cli/upLifecycleInvocation.d.ts +41 -0
  140. package/dist/cli/upLifecycleInvocation.js +48 -0
  141. package/dist/cli/upLifecycleRecovery.d.ts +4 -0
  142. package/dist/cli/upLifecycleRecovery.js +53 -0
  143. package/dist/compiler/agentNodeMerge.d.ts +2 -0
  144. package/dist/compiler/agentNodeMerge.js +79 -0
  145. package/dist/compiler/agentSurfaces.js +11 -1
  146. package/dist/compiler/buildCompilePlan.js +17 -0
  147. package/dist/compiler/buildCompilePlanAgent.d.ts +11 -0
  148. package/dist/compiler/buildCompilePlanAgent.js +56 -0
  149. package/dist/compiler/buildCompilePlanTeams.d.ts +1 -0
  150. package/dist/compiler/buildCompilePlanTeams.js +4 -1
  151. package/dist/compiler/buildCompilePlanTraversal.js +75 -82
  152. package/dist/compiler/buildProject.d.ts +11 -0
  153. package/dist/compiler/buildProject.js +77 -2
  154. package/dist/compiler/compilePlanHelpers.js +2 -0
  155. package/dist/compiler/compileProject.d.ts +13 -0
  156. package/dist/compiler/compileProject.js +26 -74
  157. package/dist/compiler/compileProjectPolicy.d.ts +5 -0
  158. package/dist/compiler/compileProjectPolicy.js +21 -0
  159. package/dist/compiler/compileProjectReports.d.ts +9 -0
  160. package/dist/compiler/compileProjectReports.js +52 -0
  161. package/dist/compiler/containerArtifactSummaries.d.ts +7 -0
  162. package/dist/compiler/containerArtifactSummaries.js +138 -0
  163. package/dist/compiler/containerArtifacts.d.ts +10 -0
  164. package/dist/compiler/containerArtifacts.js +126 -125
  165. package/dist/compiler/containerArtifactsPlans.d.ts +5 -3
  166. package/dist/compiler/containerArtifactsPlans.js +31 -118
  167. package/dist/compiler/containerArtifactsRender.d.ts +3 -1
  168. package/dist/compiler/containerArtifactsRender.js +15 -12
  169. package/dist/compiler/containerArtifactsTypes.d.ts +12 -0
  170. package/dist/compiler/containerConfigEnvRender.d.ts +3 -0
  171. package/dist/compiler/containerConfigEnvRender.js +54 -0
  172. package/dist/compiler/containerEntrypointRender.d.ts +1 -0
  173. package/dist/compiler/containerEntrypointRender.js +56 -52
  174. package/dist/compiler/containerEntrypointShell.d.ts +5 -0
  175. package/dist/compiler/containerEntrypointShell.js +29 -0
  176. package/dist/compiler/containerPackageOverrides.d.ts +27 -0
  177. package/dist/compiler/containerPackageOverrides.js +63 -0
  178. package/dist/compiler/containerTargetPlanResolution.d.ts +20 -0
  179. package/dist/compiler/containerTargetPlanResolution.js +97 -0
  180. package/dist/compiler/daimonTelemetryArtifacts.d.ts +22 -0
  181. package/dist/compiler/daimonTelemetryArtifacts.js +61 -0
  182. package/dist/compiler/dockerBuildContext.d.ts +16 -0
  183. package/dist/compiler/dockerBuildContext.js +159 -0
  184. package/dist/compiler/dockerBuildSkip.d.ts +30 -0
  185. package/dist/compiler/dockerBuildSkip.js +81 -0
  186. package/dist/compiler/index.d.ts +4 -0
  187. package/dist/compiler/index.js +4 -0
  188. package/dist/compiler/memoryArtifacts.d.ts +26 -0
  189. package/dist/compiler/memoryArtifacts.js +134 -0
  190. package/dist/compiler/memoryResolution.d.ts +4 -0
  191. package/dist/compiler/memoryResolution.js +147 -0
  192. package/dist/compiler/modelEnv.d.ts +2 -0
  193. package/dist/compiler/modelEnv.js +6 -0
  194. package/dist/compiler/moltnetAllowedWakeSendersValidation.d.ts +2 -0
  195. package/dist/compiler/moltnetAllowedWakeSendersValidation.js +42 -0
  196. package/dist/compiler/moltnetArtifactPaths.d.ts +26 -0
  197. package/dist/compiler/moltnetArtifactPaths.js +49 -0
  198. package/dist/compiler/moltnetArtifactTypes.d.ts +46 -0
  199. package/dist/compiler/moltnetArtifactTypes.js +1 -0
  200. package/dist/compiler/moltnetArtifacts.d.ts +2 -40
  201. package/dist/compiler/moltnetArtifacts.js +43 -97
  202. package/dist/compiler/moltnetBinaries.d.ts +21 -4
  203. package/dist/compiler/moltnetBinaries.js +134 -27
  204. package/dist/compiler/moltnetClientConfig.js +7 -2
  205. package/dist/compiler/moltnetConfigLowering.d.ts +16 -1
  206. package/dist/compiler/moltnetConfigLowering.js +67 -5
  207. package/dist/compiler/moltnetExternalParticipantArtifact.d.ts +38 -0
  208. package/dist/compiler/moltnetExternalParticipantArtifact.js +188 -0
  209. package/dist/compiler/moltnetNodeConfig.js +7 -2
  210. package/dist/compiler/moltnetReleaseAuthority.d.ts +17 -0
  211. package/dist/compiler/moltnetReleaseAuthority.js +73 -0
  212. package/dist/compiler/moltnetReleaseDownload.d.ts +12 -0
  213. package/dist/compiler/moltnetReleaseDownload.js +85 -0
  214. package/dist/compiler/moltnetRepresentativeResolution.d.ts +1 -0
  215. package/dist/compiler/moltnetRepresentativeResolution.js +16 -2
  216. package/dist/compiler/moltnetResolution.js +72 -20
  217. package/dist/compiler/moltnetRoomMemberships.js +37 -9
  218. package/dist/compiler/moltnetServerPlans.d.ts +9 -0
  219. package/dist/compiler/moltnetServerPlans.js +132 -0
  220. package/dist/compiler/organizationIdentity.d.ts +27 -0
  221. package/dist/compiler/organizationIdentity.js +297 -0
  222. package/dist/compiler/organizationReadyEvidence.d.ts +49 -0
  223. package/dist/compiler/organizationReadyEvidence.js +261 -0
  224. package/dist/compiler/projectManifestGraph.d.ts +4 -0
  225. package/dist/compiler/projectManifestGraph.js +24 -0
  226. package/dist/compiler/runProject.d.ts +4 -0
  227. package/dist/compiler/runProject.js +30 -21
  228. package/dist/compiler/runProjectAuth.d.ts +7 -1
  229. package/dist/compiler/runProjectAuth.js +87 -9
  230. package/dist/compiler/runProjectDocker.d.ts +7 -0
  231. package/dist/compiler/runProjectDocker.js +31 -8
  232. package/dist/compiler/runProjectLifecycle.d.ts +7 -0
  233. package/dist/compiler/runProjectLifecycle.js +40 -0
  234. package/dist/compiler/syncProjectAuth.js +4 -1
  235. package/dist/compiler/teamContextActiveEnvironments.d.ts +13 -0
  236. package/dist/compiler/teamContextActiveEnvironments.js +255 -0
  237. package/dist/compiler/teamContextSupport.js +32 -40
  238. package/dist/compiler/teamContextTypes.d.ts +2 -0
  239. package/dist/compiler/types.d.ts +82 -1
  240. package/dist/compiler/upProject.d.ts +5 -0
  241. package/dist/compiler/upProject.js +256 -20
  242. package/dist/compiler/upReceipt.d.ts +36 -0
  243. package/dist/compiler/upReceipt.js +82 -0
  244. package/dist/compiler/updateProjectModels.js +42 -60
  245. package/dist/compiler/updateProjectRuntime.js +22 -35
  246. package/dist/compiler/updateProjectSurfaces.js +53 -47
  247. package/dist/compiler/worldBindings.d.ts +39 -0
  248. package/dist/compiler/worldBindings.js +247 -0
  249. package/dist/compiler/worldBindingsFile.d.ts +5 -0
  250. package/dist/compiler/worldBindingsFile.js +162 -0
  251. package/dist/deployment/artifactsExport.d.ts +49 -0
  252. package/dist/deployment/artifactsExport.js +217 -0
  253. package/dist/deployment/artifactsExportDocker.d.ts +48 -0
  254. package/dist/deployment/artifactsExportDocker.js +91 -0
  255. package/dist/deployment/artifactsExportPlan.d.ts +24 -0
  256. package/dist/deployment/artifactsExportPlan.js +135 -0
  257. package/dist/deployment/artifactsExportTypes.d.ts +50 -0
  258. package/dist/deployment/artifactsExportTypes.js +52 -0
  259. package/dist/deployment/buildImageCacheStore.d.ts +23 -0
  260. package/dist/deployment/buildImageCacheStore.js +54 -0
  261. package/dist/deployment/deploymentLifecycleCorrelation.d.ts +11 -0
  262. package/dist/deployment/deploymentLifecycleCorrelation.js +33 -0
  263. package/dist/deployment/dockerInspect.d.ts +9 -0
  264. package/dist/deployment/dockerInspect.js +24 -1
  265. package/dist/deployment/dockerLabels.d.ts +2 -0
  266. package/dist/deployment/dockerLabels.js +2 -0
  267. package/dist/deployment/dockerLogs.js +2 -10
  268. package/dist/deployment/dockerManager.d.ts +51 -0
  269. package/dist/deployment/dockerManager.js +118 -1
  270. package/dist/deployment/dockerProbeGateway.js +64 -5
  271. package/dist/deployment/dockerRecover.js +9 -1
  272. package/dist/deployment/dockerTeardown.d.ts +32 -0
  273. package/dist/deployment/dockerTeardown.js +61 -0
  274. package/dist/deployment/downDeployment.d.ts +34 -0
  275. package/dist/deployment/downDeployment.js +147 -0
  276. package/dist/deployment/downReceiptTypes.d.ts +21 -0
  277. package/dist/deployment/downReceiptTypes.js +30 -0
  278. package/dist/deployment/index.d.ts +16 -0
  279. package/dist/deployment/index.js +17 -0
  280. package/dist/deployment/lifecycleCompletion.d.ts +37 -0
  281. package/dist/deployment/lifecycleCompletion.js +236 -0
  282. package/dist/deployment/lifecycleCompletionContracts.d.ts +158 -0
  283. package/dist/deployment/lifecycleCompletionContracts.js +106 -0
  284. package/dist/deployment/lifecycleCompletionHeartbeat.d.ts +2 -0
  285. package/dist/deployment/lifecycleCompletionHeartbeat.js +50 -0
  286. package/dist/deployment/lifecycleCompletionLookup.d.ts +18 -0
  287. package/dist/deployment/lifecycleCompletionLookup.js +88 -0
  288. package/dist/deployment/lifecycleCompletionOwner.d.ts +8 -0
  289. package/dist/deployment/lifecycleCompletionOwner.js +31 -0
  290. package/dist/deployment/lifecycleCompletionParsing.d.ts +12 -0
  291. package/dist/deployment/lifecycleCompletionParsing.js +108 -0
  292. package/dist/deployment/lifecycleCompletionPaths.d.ts +9 -0
  293. package/dist/deployment/lifecycleCompletionPaths.js +16 -0
  294. package/dist/deployment/lifecycleCompletionPublication.d.ts +5 -0
  295. package/dist/deployment/lifecycleCompletionPublication.js +35 -0
  296. package/dist/deployment/lifecycleCompletionRecovery.d.ts +21 -0
  297. package/dist/deployment/lifecycleCompletionRecovery.js +56 -0
  298. package/dist/deployment/lifecycleCompletionRoot.d.ts +21 -0
  299. package/dist/deployment/lifecycleCompletionRoot.js +243 -0
  300. package/dist/deployment/lifecycleCompletionStore.d.ts +6 -0
  301. package/dist/deployment/lifecycleCompletionStore.js +151 -0
  302. package/dist/deployment/organizationHandoffAuthorityFsClient.d.ts +17 -0
  303. package/dist/deployment/organizationHandoffAuthorityFsClient.js +132 -0
  304. package/dist/deployment/organizationHandoffAuthorityFsWorker.d.ts +1 -0
  305. package/dist/deployment/organizationHandoffAuthorityFsWorker.js +285 -0
  306. package/dist/deployment/organizationHandoffAuthorityFsWorkerParent.fixture.d.ts +1 -0
  307. package/dist/deployment/organizationHandoffAuthorityFsWorkerParent.fixture.js +26 -0
  308. package/dist/deployment/organizationHandoffAuthorityStore.d.ts +41 -0
  309. package/dist/deployment/organizationHandoffAuthorityStore.js +348 -0
  310. package/dist/deployment/organizationHandoffAuthorityTypes.d.ts +76 -0
  311. package/dist/deployment/organizationHandoffAuthorityTypes.js +148 -0
  312. package/dist/deployment/organizationHandoffTypes.d.ts +29 -0
  313. package/dist/deployment/organizationHandoffTypes.js +80 -0
  314. package/dist/deployment/organizationReady.d.ts +52 -0
  315. package/dist/deployment/organizationReady.js +200 -0
  316. package/dist/deployment/privateArtifactsExport.d.ts +18 -0
  317. package/dist/deployment/privateArtifactsExport.js +80 -0
  318. package/dist/deployment/providerRuntimeBoundaryScanner.test-helper.d.ts +8 -0
  319. package/dist/deployment/providerRuntimeBoundaryScanner.test-helper.js +60 -0
  320. package/dist/deployment/record.d.ts +26 -1
  321. package/dist/deployment/record.js +49 -4
  322. package/dist/deployment/simfileFixtureBoundary.test-helper.d.ts +8 -0
  323. package/dist/deployment/simfileFixtureBoundary.test-helper.js +103 -0
  324. package/dist/deployment/target.d.ts +1 -35
  325. package/dist/deployment/target.js +1 -96
  326. package/dist/deployment/upReceiptTypes.d.ts +111 -0
  327. package/dist/deployment/upReceiptTypes.js +164 -0
  328. package/dist/dev/project.js +15 -9
  329. package/dist/distribution/buildDistributionReport.d.ts +2 -1
  330. package/dist/distribution/buildDistributionReport.js +2 -1
  331. package/dist/distribution/distributionReportSchema.d.ts +5 -0
  332. package/dist/distribution/distributionReportSchema.js +7 -2
  333. package/dist/distribution/index.d.ts +2 -2
  334. package/dist/distribution/index.js +1 -1
  335. package/dist/distribution/types.d.ts +7 -0
  336. package/dist/distribution/types.js +1 -0
  337. package/dist/filesystem/paths.js +10 -1
  338. package/dist/ledger/causalConformanceCli.d.ts +1 -0
  339. package/dist/ledger/causalConformanceCli.js +41 -0
  340. package/dist/ledger/causeNamespace.d.ts +8 -0
  341. package/dist/ledger/causeNamespace.js +24 -0
  342. package/dist/ledger/conformance.d.ts +83 -0
  343. package/dist/ledger/conformance.js +259 -0
  344. package/dist/ledger/emitters.d.ts +76 -0
  345. package/dist/ledger/emitters.js +188 -0
  346. package/dist/ledger/index.d.ts +4 -0
  347. package/dist/ledger/index.js +4 -0
  348. package/dist/ledger/principal.d.ts +96 -0
  349. package/dist/ledger/principal.js +121 -0
  350. package/dist/manifest/externalParticipantSchemas.d.ts +18 -0
  351. package/dist/manifest/externalParticipantSchemas.js +17 -0
  352. package/dist/manifest/index.d.ts +1 -0
  353. package/dist/manifest/index.js +1 -0
  354. package/dist/manifest/inlineAgentMember.d.ts +2 -0
  355. package/dist/manifest/inlineAgentMember.js +9 -0
  356. package/dist/manifest/loadManifest.js +14 -8
  357. package/dist/manifest/mcpSchemas.d.ts +17 -0
  358. package/dist/manifest/mcpSchemas.js +41 -0
  359. package/dist/manifest/memorySchemas.d.ts +245 -0
  360. package/dist/manifest/memorySchemas.js +148 -0
  361. package/dist/manifest/renderSpawnfile.js +22 -131
  362. package/dist/manifest/renderSpawnfileNetworks.js +9 -2
  363. package/dist/manifest/renderSpawnfileSurfaces.d.ts +2 -0
  364. package/dist/manifest/renderSpawnfileSurfaces.js +134 -0
  365. package/dist/manifest/schemas.d.ts +1868 -99
  366. package/dist/manifest/schemas.js +78 -32
  367. package/dist/manifest/surfaceSchemas.d.ts +17 -0
  368. package/dist/manifest/surfaceSchemas.js +24 -1
  369. package/dist/manifest/teamNetworkAccessSchemas.d.ts +1 -1
  370. package/dist/manifest/teamNetworkAuthSchemas.d.ts +48 -0
  371. package/dist/manifest/teamNetworkAuthSchemas.js +103 -0
  372. package/dist/manifest/teamNetworkSchemas.d.ts +8 -187
  373. package/dist/manifest/teamNetworkSchemas.js +3 -317
  374. package/dist/manifest/teamNetworkServerSchemas.d.ts +150 -0
  375. package/dist/manifest/teamNetworkServerSchemas.js +199 -0
  376. package/dist/ownership/siblingBuildFreshness.d.ts +20 -0
  377. package/dist/ownership/siblingBuildFreshness.js +20 -0
  378. package/dist/ownership/simfileRunOperatorInputs.d.ts +103 -0
  379. package/dist/ownership/simfileRunOperatorInputs.js +139 -0
  380. package/dist/report/types.d.ts +142 -0
  381. package/dist/runtime/common.d.ts +35 -0
  382. package/dist/runtime/common.js +55 -0
  383. package/dist/runtime/container.d.ts +28 -1
  384. package/dist/runtime/container.js +38 -5
  385. package/dist/runtime/containerPackageOverrides.d.ts +37 -0
  386. package/dist/runtime/containerPackageOverrides.js +33 -0
  387. package/dist/runtime/index.d.ts +2 -0
  388. package/dist/runtime/index.js +2 -0
  389. package/dist/runtime/mnemeMcp.d.ts +15 -0
  390. package/dist/runtime/mnemeMcp.js +109 -0
  391. package/dist/runtime/openclaw/adapter.js +15 -4
  392. package/dist/runtime/openclaw/mcp.d.ts +10 -0
  393. package/dist/runtime/openclaw/mcp.js +69 -0
  394. package/dist/runtime/openclaw/runAuth.js +2 -2
  395. package/dist/runtime/openclaw/scaffold.js +1 -1
  396. package/dist/runtime/openclaw/schedules.d.ts +38 -0
  397. package/dist/runtime/openclaw/schedules.js +74 -0
  398. package/dist/runtime/pi/adapter.d.ts +1 -1
  399. package/dist/runtime/pi/adapter.js +86 -53
  400. package/dist/runtime/pi/appActivitySource.js +114 -2
  401. package/dist/runtime/pi/appAgentConfig.d.ts +11 -0
  402. package/dist/runtime/pi/appAgentConfig.js +264 -0
  403. package/dist/runtime/pi/appCliEnginesSource.d.ts +1 -0
  404. package/dist/runtime/pi/appCliEnginesSource.js +183 -0
  405. package/dist/runtime/pi/appCliSource.d.ts +1 -0
  406. package/dist/runtime/pi/appCliSource.js +353 -0
  407. package/dist/runtime/pi/appControlSource.d.ts +1 -0
  408. package/dist/runtime/pi/appControlSource.js +390 -0
  409. package/dist/runtime/pi/appControlWakeIdentitySource.d.ts +1 -0
  410. package/dist/runtime/pi/appControlWakeIdentitySource.js +19 -0
  411. package/dist/runtime/pi/appCoreSource.d.ts +4 -1
  412. package/dist/runtime/pi/appCoreSource.js +104 -214
  413. package/dist/runtime/pi/appPreludeSource.js +140 -52
  414. package/dist/runtime/pi/appScheduleSource.d.ts +1 -0
  415. package/dist/runtime/pi/appScheduleSource.js +80 -0
  416. package/dist/runtime/pi/appScriptedEngine.d.ts +31 -0
  417. package/dist/runtime/pi/appScriptedEngine.js +42 -0
  418. package/dist/runtime/pi/appSource.d.ts +4 -1
  419. package/dist/runtime/pi/appSource.js +6 -2
  420. package/dist/runtime/pi/appTemplate.d.ts +8 -22
  421. package/dist/runtime/pi/appTemplate.js +9 -126
  422. package/dist/runtime/pi/appTemplateTypes.d.ts +64 -0
  423. package/dist/runtime/pi/appTemplateTypes.js +18 -0
  424. package/dist/runtime/pi/appWakeContextSource.d.ts +1 -0
  425. package/dist/runtime/pi/appWakeContextSource.js +398 -0
  426. package/dist/runtime/pi/containerTargets.d.ts +4 -0
  427. package/dist/runtime/pi/containerTargets.js +57 -0
  428. package/dist/runtime/pi/runAuth.js +126 -9
  429. package/dist/runtime/pi/testHelpers.d.ts +2 -0
  430. package/dist/runtime/pi/testHelpers.js +40 -0
  431. package/dist/runtime/picoclaw/adapter.js +23 -27
  432. package/dist/runtime/picoclaw/mcp.d.ts +4 -0
  433. package/dist/runtime/picoclaw/mcp.js +43 -0
  434. package/dist/runtime/picoclaw/memory.d.ts +7 -0
  435. package/dist/runtime/picoclaw/memory.js +17 -0
  436. package/dist/runtime/picoclaw/runAuth.js +1 -1
  437. package/dist/runtime/picoclaw/scaffold.js +1 -1
  438. package/dist/runtime/picoclaw/schedules.d.ts +26 -0
  439. package/dist/runtime/picoclaw/schedules.js +62 -3
  440. package/dist/runtime/scheduleUtils.d.ts +2 -0
  441. package/dist/runtime/scheduleUtils.js +15 -0
  442. package/dist/runtime/types.d.ts +25 -2
  443. package/dist/shared/errors.d.ts +1 -1
  444. package/dist/shared/errors.js +2 -2
  445. package/dist/shared/index.d.ts +1 -0
  446. package/dist/shared/index.js +1 -0
  447. package/dist/shared/redaction.d.ts +2 -0
  448. package/dist/shared/redaction.js +10 -0
  449. package/dist/status/buildStatus.d.ts +1 -0
  450. package/dist/status/buildStatus.js +2 -0
  451. package/dist/status/compileReport.d.ts +22 -0
  452. package/dist/status/compileReport.js +16 -2
  453. package/dist/status/compiledProbeCollection.d.ts +21 -0
  454. package/dist/status/compiledProbeCollection.js +27 -0
  455. package/dist/status/imageStatusReport.js +6 -0
  456. package/dist/status/index.d.ts +3 -0
  457. package/dist/status/index.js +3 -0
  458. package/dist/status/lifecycleProbes.d.ts +19 -0
  459. package/dist/status/lifecycleProbes.js +174 -0
  460. package/dist/status/moltnetProbes.d.ts +7 -8
  461. package/dist/status/moltnetProbes.js +27 -198
  462. package/dist/status/moltnetWiringProbes.d.ts +19 -0
  463. package/dist/status/moltnetWiringProbes.js +178 -0
  464. package/dist/target/cleanupRun.d.ts +41 -0
  465. package/dist/target/cleanupRun.js +139 -0
  466. package/dist/target/cleanupRunDocker.d.ts +16 -0
  467. package/dist/target/cleanupRunDocker.js +66 -0
  468. package/dist/target/cleanupRunDocker.test-helper.d.ts +67 -0
  469. package/dist/target/cleanupRunDocker.test-helper.js +238 -0
  470. package/dist/target/cleanupRunDockerPreflight.d.ts +17 -0
  471. package/dist/target/cleanupRunDockerPreflight.js +224 -0
  472. package/dist/target/composedPreparation.d.ts +205 -0
  473. package/dist/target/composedPreparation.js +223 -0
  474. package/dist/target/containerBundle.d.ts +82 -0
  475. package/dist/target/containerBundle.js +243 -0
  476. package/dist/target/containerBundleArchive.d.ts +31 -0
  477. package/dist/target/containerBundleArchive.js +140 -0
  478. package/dist/target/containerBundleAuthority.d.ts +25 -0
  479. package/dist/target/containerBundleAuthority.js +65 -0
  480. package/dist/target/containerBundleContracts.d.ts +114 -0
  481. package/dist/target/containerBundleContracts.js +173 -0
  482. package/dist/target/containerBundleFilesystemStore.d.ts +3 -0
  483. package/dist/target/containerBundleFilesystemStore.js +247 -0
  484. package/dist/target/containerBundlePolicy.d.ts +33 -0
  485. package/dist/target/containerBundlePolicy.js +64 -0
  486. package/dist/target/containerBundleStore.d.ts +127 -0
  487. package/dist/target/containerBundleStore.js +284 -0
  488. package/dist/target/contracts.d.ts +538 -0
  489. package/dist/target/contracts.js +373 -0
  490. package/dist/target/dockerArtifactIdentityTypes.d.ts +56 -0
  491. package/dist/target/dockerArtifactIdentityTypes.js +1 -0
  492. package/dist/target/dockerArtifactInspection.d.ts +40 -0
  493. package/dist/target/dockerArtifactInspection.js +125 -0
  494. package/dist/target/dockerArtifacts.d.ts +21 -0
  495. package/dist/target/dockerArtifacts.js +110 -0
  496. package/dist/target/dockerArtifactsProvider.d.ts +41 -0
  497. package/dist/target/dockerArtifactsProvider.js +449 -0
  498. package/dist/target/dockerCommandExecutor.d.ts +27 -0
  499. package/dist/target/dockerCommandExecutor.js +200 -0
  500. package/dist/target/dockerCommandExecutorCore.d.ts +34 -0
  501. package/dist/target/dockerCommandExecutorCore.js +273 -0
  502. package/dist/target/dockerContainerBundleBuilder.d.ts +8 -0
  503. package/dist/target/dockerContainerBundleBuilder.js +256 -0
  504. package/dist/target/dockerContextSnapshot.d.ts +21 -0
  505. package/dist/target/dockerContextSnapshot.js +158 -0
  506. package/dist/target/dockerEndpointFingerprint.d.ts +1 -0
  507. package/dist/target/dockerEndpointFingerprint.js +9 -0
  508. package/dist/target/dockerPreparedArtifact.d.ts +48 -0
  509. package/dist/target/dockerPreparedArtifact.js +131 -0
  510. package/dist/target/dockerProjectionJson.d.ts +1 -0
  511. package/dist/target/dockerProjectionJson.js +80 -0
  512. package/dist/target/dockerPublicArtifactSnapshot.d.ts +17 -0
  513. package/dist/target/dockerPublicArtifactSnapshot.js +99 -0
  514. package/dist/target/dockerResources.d.ts +26 -0
  515. package/dist/target/dockerResources.js +162 -0
  516. package/dist/target/dockerResourcesProvider.d.ts +44 -0
  517. package/dist/target/dockerResourcesProvider.js +207 -0
  518. package/dist/target/dockerSecrets.d.ts +39 -0
  519. package/dist/target/dockerSecrets.js +249 -0
  520. package/dist/target/dockerSecretsAuthority.d.ts +26 -0
  521. package/dist/target/dockerSecretsAuthority.js +216 -0
  522. package/dist/target/dockerSecretsLifecycle.d.ts +25 -0
  523. package/dist/target/dockerSecretsLifecycle.js +133 -0
  524. package/dist/target/dockerSecretsProvider.d.ts +68 -0
  525. package/dist/target/dockerSecretsProvider.js +329 -0
  526. package/dist/target/dockerTarget.d.ts +52 -0
  527. package/dist/target/dockerTarget.js +48 -0
  528. package/dist/target/dockerTargetBinding.d.ts +14 -0
  529. package/dist/target/dockerTargetBinding.js +96 -0
  530. package/dist/target/dockerWorldClock.d.ts +17 -0
  531. package/dist/target/dockerWorldClock.js +111 -0
  532. package/dist/target/dockerWorldReadiness.d.ts +17 -0
  533. package/dist/target/dockerWorldReadiness.js +119 -0
  534. package/dist/target/dockerWorldService.d.ts +23 -0
  535. package/dist/target/dockerWorldService.js +216 -0
  536. package/dist/target/dockerWorldServiceAuthority.d.ts +80 -0
  537. package/dist/target/dockerWorldServiceAuthority.js +182 -0
  538. package/dist/target/dockerWorldServiceLifecycle.d.ts +41 -0
  539. package/dist/target/dockerWorldServiceLifecycle.js +275 -0
  540. package/dist/target/dockerWorldServiceProvider.d.ts +60 -0
  541. package/dist/target/dockerWorldServiceProvider.js +318 -0
  542. package/dist/target/dockerWorldServiceStore.d.ts +73 -0
  543. package/dist/target/dockerWorldServiceStore.js +367 -0
  544. package/dist/target/evidenceExport.d.ts +55 -0
  545. package/dist/target/evidenceExport.js +518 -0
  546. package/dist/target/evidenceExportArchive.d.ts +10 -0
  547. package/dist/target/evidenceExportArchive.js +302 -0
  548. package/dist/target/evidenceExportContract.d.ts +27 -0
  549. package/dist/target/evidenceExportContract.js +40 -0
  550. package/dist/target/evidenceExportOperationsTestKit.d.ts +87 -0
  551. package/dist/target/evidenceExportOperationsTestKit.js +312 -0
  552. package/dist/target/evidenceExportProvider.d.ts +85 -0
  553. package/dist/target/evidenceExportProvider.js +187 -0
  554. package/dist/target/evidenceExportPublicationTypes.d.ts +16 -0
  555. package/dist/target/evidenceExportPublicationTypes.js +1 -0
  556. package/dist/target/evidenceExportStore.d.ts +70 -0
  557. package/dist/target/evidenceExportStore.js +498 -0
  558. package/dist/target/evidenceExportStorePublication.d.ts +7 -0
  559. package/dist/target/evidenceExportStorePublication.js +395 -0
  560. package/dist/target/handles.d.ts +20 -0
  561. package/dist/target/handles.js +56 -0
  562. package/dist/target/index.d.ts +12 -0
  563. package/dist/target/index.js +11 -0
  564. package/dist/target/journal.d.ts +59 -0
  565. package/dist/target/journal.js +529 -0
  566. package/dist/target/journalFilesystem.d.ts +3 -0
  567. package/dist/target/journalFilesystem.js +111 -0
  568. package/dist/target/journalRoot.d.ts +4 -0
  569. package/dist/target/journalRoot.js +6 -0
  570. package/dist/target/organizationAttachment.d.ts +23 -0
  571. package/dist/target/organizationAttachment.js +263 -0
  572. package/dist/target/organizationAttachmentAuthority.d.ts +65 -0
  573. package/dist/target/organizationAttachmentAuthority.js +161 -0
  574. package/dist/target/organizationAttachmentLifecycle.d.ts +17 -0
  575. package/dist/target/organizationAttachmentLifecycle.js +101 -0
  576. package/dist/target/organizationAttachmentProvider.d.ts +76 -0
  577. package/dist/target/organizationAttachmentProvider.js +289 -0
  578. package/dist/target/organizationAttachmentStore.d.ts +51 -0
  579. package/dist/target/organizationAttachmentStore.js +316 -0
  580. package/dist/target/publicArtifactSnapshot.d.ts +41 -0
  581. package/dist/target/publicArtifactSnapshot.js +150 -0
  582. package/dist/target/topologyActivation.d.ts +51 -0
  583. package/dist/target/topologyActivation.js +149 -0
  584. package/dist/target/topologyAttestation.d.ts +37 -0
  585. package/dist/target/topologyAttestation.js +300 -0
  586. package/dist/target/topologyAttestationErrors.d.ts +1 -0
  587. package/dist/target/topologyAttestationErrors.js +1 -0
  588. package/dist/target/worldClock.d.ts +60 -0
  589. package/dist/target/worldClock.js +129 -0
  590. package/dist/target/worldReadiness.d.ts +103 -0
  591. package/dist/target/worldReadiness.js +153 -0
  592. package/moltnet-releases.json +20 -0
  593. package/package.json +27 -11
  594. package/runtimes.yaml +8 -23
  595. package/dist/runtime/openclaw/scaffold-assets/CLAUDE.md +0 -5
  596. package/dist/runtime/picoclaw/scaffold-assets/CLAUDE.md +0 -5
  597. /package/dist/runtime/openclaw/scaffold-assets/{AGENTS.md → WORKSPACE_AGENTS.md} +0 -0
  598. /package/dist/runtime/picoclaw/scaffold-assets/{AGENTS.md → WORKSPACE_AGENTS.md} +0 -0
@@ -0,0 +1,63 @@
1
+ import { execFile as execFileCallback } from "node:child_process";
2
+ import path from "node:path";
3
+ import { promisify } from "node:util";
4
+ import { ensureDirectory } from "../filesystem/index.js";
5
+ import { VENDOR_BUILD_CONTEXT_DIR } from "../runtime/index.js";
6
+ import { SpawnfileError } from "../shared/index.js";
7
+ const execFile = promisify(execFileCallback);
8
+ const packOverride = async (packageName, packageDirectory, vendorDirectory) => {
9
+ try {
10
+ const { stdout } = await execFile("npm", [
11
+ "pack",
12
+ "--json",
13
+ // Every caller (assertRuntimePackageOverrideDistsBuilt in
14
+ // src/e2e/runtimePackageOverrides.ts) already asserts the
15
+ // override directory's dist is built before packing, so a `prepack`
16
+ // lifecycle script here would only redundantly rebuild it — and, since
17
+ // several packages' own `prepack` runs `rm -rf dist && tsc`, doing so
18
+ // is actively unsafe when two compiles pack the same shared source
19
+ // directory concurrently (one's `rm -rf` can race another's dist read).
20
+ "--ignore-scripts",
21
+ "--pack-destination",
22
+ vendorDirectory,
23
+ packageDirectory
24
+ ]);
25
+ const entries = JSON.parse(stdout);
26
+ const filename = entries[0]?.filename;
27
+ if (!filename) {
28
+ throw new Error("npm pack did not report a packed filename");
29
+ }
30
+ return { filename };
31
+ }
32
+ catch (error) {
33
+ const reason = error instanceof Error ? error.message : String(error);
34
+ throw new SpawnfileError("compile_error", `Unable to pack local override for ${packageName} from ${packageDirectory}: ${reason}`);
35
+ }
36
+ };
37
+ /**
38
+ * Packs each overridden runtime install package's local directory into the
39
+ * generated container's build context (`<outputDirectory>/container/vendor`)
40
+ * via `npm pack`, so `renderDockerfile` (containerArtifactsRender.ts) can
41
+ * COPY the tarball into the image and `createRuntimeInstallRecipe`
42
+ * (src/runtime/container.ts) can install from it instead of the registry.
43
+ * Mirrors how `stageMoltnetBinaries` (moltnetBinaries.ts) stages binaries
44
+ * directly onto disk outside the EmittedFile pipeline — a `.tgz` cannot
45
+ * round-trip through EmittedFile's string `content`.
46
+ *
47
+ * The caller is responsible for ensuring each override's `dist` is already
48
+ * built (see `assertRuntimePackageOverrideDistsBuilt` in
49
+ * src/e2e/runtimePackageOverrides.ts) — this function only packs, it never
50
+ * builds.
51
+ */
52
+ export const stageRuntimePackageOverrides = async (outputDirectory, overrides) => {
53
+ if (!overrides || Object.keys(overrides).length === 0) {
54
+ return undefined;
55
+ }
56
+ const vendorDirectory = path.join(outputDirectory, VENDOR_BUILD_CONTEXT_DIR);
57
+ await ensureDirectory(vendorDirectory);
58
+ const resolved = {};
59
+ for (const [packageName, packageDirectory] of Object.entries(overrides)) {
60
+ resolved[packageName] = await packOverride(packageName, packageDirectory, vendorDirectory);
61
+ }
62
+ return resolved;
63
+ };
@@ -0,0 +1,20 @@
1
+ import type { ModelAuthMethod } from "../shared/index.js";
2
+ import type { ContainerTarget, ContainerTargetInput, EmittedFile, RuntimeContainerMeta } from "../runtime/index.js";
3
+ import type { ResolvedPackage } from "./types.js";
4
+ export declare const createDefaultTargets: (inputs: ContainerTargetInput[]) => ContainerTarget[];
5
+ export declare const resolveTargetEnvFiles: (configPath: string, target: ContainerTarget) => Array<{
6
+ envName: string;
7
+ filePath: string;
8
+ }>;
9
+ export declare const resolveTargetConfigEnvBindings: (meta: RuntimeContainerMeta, target: ContainerTarget) => RuntimeContainerMeta["configEnvBindings"];
10
+ export declare const assertTargetHasConfig: (runtimeName: string, targetId: string, meta: RuntimeContainerMeta, files: EmittedFile[]) => void;
11
+ export declare const resolveTargetPackages: (target: ContainerTarget, inputs: ContainerTargetInput[]) => ResolvedPackage[];
12
+ export declare const resolveInstancePaths: (runtimeName: string, targetId: string, meta: RuntimeContainerMeta) => {
13
+ configPath: string;
14
+ homePath?: string;
15
+ instanceRoot: string;
16
+ workspacePath: string;
17
+ };
18
+ export declare const resolveTargetModelSecrets: (target: ContainerTarget, inputs: ContainerTargetInput[]) => string[];
19
+ export declare const resolveTargetModelAuthMethods: (target: ContainerTarget, inputs: ContainerTargetInput[]) => Record<string, ModelAuthMethod>;
20
+ export declare const resolveTargetExposure: (target: ContainerTarget, inputs: ContainerTargetInput[]) => boolean;
@@ -0,0 +1,97 @@
1
+ import path from "node:path";
2
+ import { SpawnfileError } from "../shared/index.js";
3
+ import { listExecutionModelSecretNames, resolveExecutionModelAuthMethods } from "./modelEnv.js";
4
+ const CONFIG_FILE_PLACEHOLDER = "<config-file>";
5
+ const INSTANCE_ROOT_PLACEHOLDER = "<instance-root>";
6
+ export const createDefaultTargets = (inputs) => inputs.map((input) => ({
7
+ files: input.emittedFiles,
8
+ id: `${input.kind}-${input.slug}`,
9
+ sourceIds: [input.id]
10
+ }));
11
+ export const resolveTargetEnvFiles = (configPath, target) => (target.envFiles ?? []).map((binding) => ({
12
+ envName: binding.envName,
13
+ filePath: path.posix.join(path.posix.dirname(configPath), binding.relativePath)
14
+ }));
15
+ export const resolveTargetConfigEnvBindings = (meta, target) => [...(meta.configEnvBindings ?? []), ...(target.configEnvBindings ?? [])];
16
+ export const assertTargetHasConfig = (runtimeName, targetId, meta, files) => {
17
+ if (!files.some((file) => file.path === meta.configFileName)) {
18
+ throw new SpawnfileError("runtime_error", `Container target ${targetId} for ${runtimeName} is missing ${meta.configFileName}`);
19
+ }
20
+ };
21
+ const createPackageIdentity = (pkg) => `${pkg.manager}\u0000${pkg.name}\u0000${pkg.version ?? ""}\u0000${pkg.scope ?? ""}`;
22
+ const createPackageConflictIdentity = (pkg) => `${pkg.manager}\u0000${pkg.name}`;
23
+ const createPackageLabel = (pkg) => `${pkg.manager} package ${pkg.name}`;
24
+ export const resolveTargetPackages = (target, inputs) => {
25
+ const sourceIds = new Set(target.sourceIds ?? []);
26
+ if (sourceIds.size === 0)
27
+ return [];
28
+ const byIdentity = new Map();
29
+ for (const input of inputs) {
30
+ if (!sourceIds.has(input.id) || input.value.kind !== "agent")
31
+ continue;
32
+ for (const currentPackage of input.value.packages ?? []) {
33
+ const conflictIdentity = createPackageConflictIdentity(currentPackage);
34
+ const existingPackage = byIdentity.get(conflictIdentity);
35
+ if (!existingPackage) {
36
+ byIdentity.set(conflictIdentity, currentPackage);
37
+ continue;
38
+ }
39
+ if (createPackageIdentity(existingPackage) !== createPackageIdentity(currentPackage)) {
40
+ throw new SpawnfileError("validation_error", `Container target ${target.id} declares conflicting package definitions for ${createPackageLabel(currentPackage)}`);
41
+ }
42
+ }
43
+ }
44
+ return [...byIdentity.values()].sort((left, right) => createPackageIdentity(left).localeCompare(createPackageIdentity(right)));
45
+ };
46
+ const replaceContainerPathTemplate = (template, instanceRoot, configFileName) => template
47
+ .replaceAll(INSTANCE_ROOT_PLACEHOLDER, instanceRoot)
48
+ .replaceAll(CONFIG_FILE_PLACEHOLDER, configFileName);
49
+ export const resolveInstancePaths = (runtimeName, targetId, meta) => {
50
+ const instanceRoot = `/var/lib/spawnfile/instances/${runtimeName}/${targetId}`;
51
+ return {
52
+ configPath: replaceContainerPathTemplate(meta.instancePaths.configPathTemplate, instanceRoot, meta.configFileName),
53
+ homePath: meta.instancePaths.homePathTemplate
54
+ ? replaceContainerPathTemplate(meta.instancePaths.homePathTemplate, instanceRoot, meta.configFileName)
55
+ : undefined,
56
+ instanceRoot,
57
+ workspacePath: replaceContainerPathTemplate(meta.instancePaths.workspacePathTemplate, instanceRoot, meta.configFileName)
58
+ };
59
+ };
60
+ export const resolveTargetModelSecrets = (target, inputs) => {
61
+ const sourceIds = new Set(target.sourceIds ?? []);
62
+ if (sourceIds.size === 0)
63
+ return [];
64
+ const secretNames = new Set();
65
+ for (const input of inputs) {
66
+ if (!sourceIds.has(input.id) || input.value.kind !== "agent")
67
+ continue;
68
+ for (const secretName of listExecutionModelSecretNames(input.value.execution)) {
69
+ secretNames.add(secretName);
70
+ }
71
+ }
72
+ return [...secretNames].sort();
73
+ };
74
+ export const resolveTargetModelAuthMethods = (target, inputs) => {
75
+ const sourceIds = new Set(target.sourceIds ?? []);
76
+ if (sourceIds.size === 0)
77
+ return {};
78
+ const methods = new Map();
79
+ for (const input of inputs) {
80
+ if (!sourceIds.has(input.id) || input.value.kind !== "agent")
81
+ continue;
82
+ for (const [provider, method] of Object.entries(resolveExecutionModelAuthMethods(input.value.execution))) {
83
+ const existingMethod = methods.get(provider);
84
+ if (existingMethod && existingMethod !== method) {
85
+ throw new SpawnfileError("validation_error", `Container target ${target.id} declares conflicting auth methods for provider ${provider}`);
86
+ }
87
+ methods.set(provider, method);
88
+ }
89
+ }
90
+ return Object.fromEntries([...methods.entries()].sort(([left], [right]) => left.localeCompare(right)));
91
+ };
92
+ export const resolveTargetExposure = (target, inputs) => {
93
+ const sourceIds = new Set(target.sourceIds ?? []);
94
+ if (sourceIds.size === 0)
95
+ return false;
96
+ return inputs.some((input) => sourceIds.has(input.id) && input.value.kind === "agent" && input.value.expose === true);
97
+ };
@@ -0,0 +1,22 @@
1
+ import type { ContainerPersistentMountReport } from "../report/index.js";
2
+ import type { CompiledNodeArtifact, RuntimeTargetPlan } from "./containerArtifactsTypes.js";
3
+ import type { CompilePlan } from "./types.js";
4
+ export interface DaimonTelemetryArtifactBundle {
5
+ /** One durable volume per pi/daimon agent, mounted onto its telemetry directory. */
6
+ mounts: ContainerPersistentMountReport[];
7
+ /** Runtime target plan id (e.g. "pi-app") -> { node id -> telemetry persistent mount id
8
+ * }, so `containerArtifacts.ts` can stamp `runtime_instances[].telemetry_mount_ids` and
9
+ * `artifactsExportPlan.ts`'s `planDaimonFiles` can resolve each agent's telemetry volume
10
+ * without re-deriving container paths of its own. */
11
+ telemetryMountIdsByInstance: Map<string, Record<string, string>>;
12
+ }
13
+ /**
14
+ * Registers one run-scoped durable volume per pi/daimon agent for its daimon turn/wake
15
+ * causal telemetry directory (`<instanceRoot>/runtime/agents/<slug>/telemetry` — the parent
16
+ * of `causal.jsonl`, see `appCoreSource.ts`'s `runtimeHomePath`/`instanceRoot`), mirroring
17
+ * exactly how `moltnetArtifacts.ts` mounts the Moltnet causal directory (Piece 4b,
18
+ * Decision 21: daimon inner-truth telemetry was container-local — `docker cp` only — until
19
+ * now). Daimon's own write path is untouched: this only makes the HOST side of that same
20
+ * directory a named volume, so `docker rm` no longer discards it.
21
+ */
22
+ export declare const createDaimonTelemetryArtifacts: (plan: CompilePlan, runtimePlans: RuntimeTargetPlan[], compiledNodes: CompiledNodeArtifact[]) => DaimonTelemetryArtifactBundle;
@@ -0,0 +1,61 @@
1
+ import path from "node:path/posix";
2
+ import { resolveNoopolisRunId } from "../runtime/index.js";
3
+ import { createPersistentVolumeName } from "./moltnetArtifactPaths.js";
4
+ /** Runtime names whose generated app is `src/runtime/pi/appCoreSource.ts` (the pi harness
5
+ * and its `daimonAdapter` alias — see `src/runtime/pi/adapter.ts`'s
6
+ * `export const daimonAdapter: RuntimeAdapter = { ...piAdapter, name: "daimon" }`, which
7
+ * shares `piAdapter.container`/`createContainerTargets` byte-for-byte). Both write daimon
8
+ * turn/wake causal telemetry the same way, under `runtimeHomePath` (appCoreSource.ts:189),
9
+ * so both need the telemetry mount, not just the literal "pi" runtime name. */
10
+ const DAIMON_TELEMETRY_RUNTIME_NAMES = new Set(["daimon", "pi"]);
11
+ const createTelemetryMountId = (agentSlug) => `agent-${agentSlug}-daimon-telemetry`;
12
+ /**
13
+ * Registers one run-scoped durable volume per pi/daimon agent for its daimon turn/wake
14
+ * causal telemetry directory (`<instanceRoot>/runtime/agents/<slug>/telemetry` — the parent
15
+ * of `causal.jsonl`, see `appCoreSource.ts`'s `runtimeHomePath`/`instanceRoot`), mirroring
16
+ * exactly how `moltnetArtifacts.ts` mounts the Moltnet causal directory (Piece 4b,
17
+ * Decision 21: daimon inner-truth telemetry was container-local — `docker cp` only — until
18
+ * now). Daimon's own write path is untouched: this only makes the HOST side of that same
19
+ * directory a named volume, so `docker rm` no longer discards it.
20
+ */
21
+ export const createDaimonTelemetryArtifacts = (plan, runtimePlans, compiledNodes) => {
22
+ // Same run-scoping key as every other durable mount (see
23
+ // moltnetArtifactPaths.ts's createPersistentVolumeName doc comment): present for
24
+ // `spawnfile run`/`up` (which always call ensureNoopolisRunId() first), absent for a
25
+ // bare `spawnfile compile`/`build`, keeping those byte-identical to before this module
26
+ // existed.
27
+ const runId = resolveNoopolisRunId(process.env);
28
+ const agentSlugByNodeId = new Map(compiledNodes
29
+ .filter((node) => node.kind === "agent" && Boolean(node.id))
30
+ .map((node) => [node.id, node.slug]));
31
+ const mounts = [];
32
+ const telemetryMountIdsByInstance = new Map();
33
+ for (const runtimePlan of runtimePlans) {
34
+ if (!DAIMON_TELEMETRY_RUNTIME_NAMES.has(runtimePlan.runtimeName) || !runtimePlan.instancePaths.homePath) {
35
+ continue;
36
+ }
37
+ const instanceRoot = runtimePlan.instancePaths.instanceRoot ?? path.dirname(runtimePlan.instancePaths.homePath);
38
+ const mountIdsByNodeId = {};
39
+ for (const nodeId of runtimePlan.sourceIds ?? []) {
40
+ const agentSlug = agentSlugByNodeId.get(nodeId);
41
+ if (!agentSlug) {
42
+ continue;
43
+ }
44
+ const mountId = createTelemetryMountId(agentSlug);
45
+ mounts.push({
46
+ id: mountId,
47
+ mount_path: path.join(instanceRoot, "runtime", "agents", agentSlug, "telemetry"),
48
+ reason: `daimon turn/wake causal telemetry for ${agentSlug}`,
49
+ volume_name: createPersistentVolumeName(plan.root, mountId, undefined, runId)
50
+ });
51
+ mountIdsByNodeId[nodeId] = mountId;
52
+ }
53
+ if (Object.keys(mountIdsByNodeId).length > 0) {
54
+ telemetryMountIdsByInstance.set(runtimePlan.id, mountIdsByNodeId);
55
+ }
56
+ }
57
+ return {
58
+ mounts: mounts.sort((left, right) => left.id.localeCompare(right.id)),
59
+ telemetryMountIdsByInstance
60
+ };
61
+ };
@@ -0,0 +1,16 @@
1
+ export declare const DOCKER_BUILD_CONTEXT_IGNORE_PATTERNS: readonly ["runtimes/", "spawnfile-report.json", "deployments/"];
2
+ export interface DockerBuildContextFile {
3
+ mode: number;
4
+ path: string;
5
+ size: number;
6
+ }
7
+ export interface DockerBuildContextIgnoreViolation {
8
+ pattern: string;
9
+ source: string;
10
+ }
11
+ export declare const matchesDockerBuildIgnorePattern: (relativePath: string, pattern: string) => boolean;
12
+ export declare const createDockerIgnoreContent: () => string;
13
+ export declare const listDockerBuildContextFiles: (directory: string) => Promise<DockerBuildContextFile[]>;
14
+ export declare const createDockerBuildContextDigest: (directory: string) => Promise<string>;
15
+ export declare const extractDockerBuildContextSources: (dockerfile: string) => string[];
16
+ export declare const findIgnoredDockerBuildSources: (dockerfile: string, patterns?: readonly string[]) => DockerBuildContextIgnoreViolation[];
@@ -0,0 +1,159 @@
1
+ import { createHash } from "node:crypto";
2
+ import { readFile, readdir, stat } from "node:fs/promises";
3
+ import path from "node:path";
4
+ export const DOCKER_BUILD_CONTEXT_IGNORE_PATTERNS = Object.freeze([
5
+ "runtimes/",
6
+ "spawnfile-report.json",
7
+ "deployments/"
8
+ ]);
9
+ const compareBytes = (left, right) => Buffer.compare(Buffer.from(left), Buffer.from(right));
10
+ const normalizeContextPath = (relativePath) => relativePath.replaceAll(path.sep, "/").replace(/^\.\/+/u, "");
11
+ const normalizeContextPathForContainment = (relativePath) => {
12
+ const normalized = path.posix.normalize(normalizeContextPath(relativePath));
13
+ return normalized === "." ? "" : normalized.replace(/\/+$/u, "");
14
+ };
15
+ export const matchesDockerBuildIgnorePattern = (relativePath, pattern) => {
16
+ const normalizedPath = normalizeContextPath(relativePath).replace(/\/+$/u, "");
17
+ const normalizedPattern = normalizeContextPath(pattern);
18
+ if (normalizedPattern.endsWith("/")) {
19
+ const directory = normalizedPattern.replace(/\/+$/u, "");
20
+ return normalizedPath === directory || normalizedPath.startsWith(`${directory}/`);
21
+ }
22
+ return normalizedPath === normalizedPattern;
23
+ };
24
+ export const createDockerIgnoreContent = () => `${DOCKER_BUILD_CONTEXT_IGNORE_PATTERNS.join("\n")}\n`;
25
+ const isIgnoredContextPath = (relativePath) => DOCKER_BUILD_CONTEXT_IGNORE_PATTERNS.some((pattern) => matchesDockerBuildIgnorePattern(relativePath, pattern));
26
+ const walkContextFiles = async (directory, relativeDirectory = "") => {
27
+ const entries = await readdir(path.join(directory, relativeDirectory), {
28
+ withFileTypes: true
29
+ });
30
+ const files = [];
31
+ for (const entry of entries) {
32
+ const relativePath = normalizeContextPath(path.join(relativeDirectory, entry.name));
33
+ if (isIgnoredContextPath(relativePath)) {
34
+ continue;
35
+ }
36
+ if (entry.isDirectory()) {
37
+ files.push(...await walkContextFiles(directory, relativePath));
38
+ continue;
39
+ }
40
+ const metadata = await stat(path.join(directory, relativePath));
41
+ if (metadata.isFile()) {
42
+ files.push({
43
+ mode: metadata.mode & 0o777,
44
+ path: relativePath,
45
+ size: metadata.size
46
+ });
47
+ }
48
+ }
49
+ return files;
50
+ };
51
+ export const listDockerBuildContextFiles = async (directory) => (await walkContextFiles(path.resolve(directory))).sort((left, right) => compareBytes(left.path, right.path));
52
+ const canonicalJson = (value) => {
53
+ if (Array.isArray(value)) {
54
+ return `[${value.map((entry) => canonicalJson(entry)).join(",")}]`;
55
+ }
56
+ if (value !== null && typeof value === "object") {
57
+ return `{${Object.entries(value)
58
+ .sort(([left], [right]) => compareBytes(left, right))
59
+ .map(([key, entry]) => `${JSON.stringify(key)}:${canonicalJson(entry)}`)
60
+ .join(",")}}`;
61
+ }
62
+ return JSON.stringify(value);
63
+ };
64
+ const createFileContentHash = async (directory, relativePath) => {
65
+ const content = await readFile(path.join(directory, relativePath));
66
+ if (relativePath !== "distribution-report.json") {
67
+ return createHash("sha256").update(content).digest("hex");
68
+ }
69
+ const report = JSON.parse(content.toString("utf8"));
70
+ const { generated_at: _generatedAt, ...normalizedReport } = report;
71
+ return createHash("sha256")
72
+ .update(canonicalJson(normalizedReport))
73
+ .digest("hex");
74
+ };
75
+ export const createDockerBuildContextDigest = async (directory) => {
76
+ const resolvedDirectory = path.resolve(directory);
77
+ const digest = createHash("sha256");
78
+ for (const file of await listDockerBuildContextFiles(resolvedDirectory)) {
79
+ const contentHash = await createFileContentHash(resolvedDirectory, file.path);
80
+ digest.update(`${file.path}\0${file.mode}\0${contentHash}`);
81
+ }
82
+ return `sha256:${digest.digest("hex")}`;
83
+ };
84
+ const createLogicalDockerfileLines = (dockerfile) => {
85
+ const logicalLines = [];
86
+ let current = "";
87
+ for (const line of dockerfile.split(/\r?\n/u)) {
88
+ const trimmed = line.trim();
89
+ current = current.length === 0 ? trimmed : `${current} ${trimmed}`;
90
+ if (current.endsWith("\\")) {
91
+ current = current.slice(0, -1).trimEnd();
92
+ continue;
93
+ }
94
+ logicalLines.push(current);
95
+ current = "";
96
+ }
97
+ if (current.length > 0) {
98
+ logicalLines.push(current);
99
+ }
100
+ return logicalLines;
101
+ };
102
+ const tokenizeDockerInstruction = (source) => {
103
+ const tokens = [];
104
+ const pattern = /"((?:\\.|[^"])*)"|'([^']*)'|([^\s]+)/gu;
105
+ for (const match of source.matchAll(pattern)) {
106
+ if (match[1] !== undefined) {
107
+ tokens.push(JSON.parse(`"${match[1]}"`));
108
+ }
109
+ else {
110
+ tokens.push(match[2] ?? match[3] ?? "");
111
+ }
112
+ }
113
+ return tokens;
114
+ };
115
+ const stripInstructionFlags = (tokens) => {
116
+ let index = 0;
117
+ while (tokens[index]?.startsWith("--")) {
118
+ index += tokens[index]?.includes("=") ? 1 : 2;
119
+ }
120
+ return tokens.slice(index);
121
+ };
122
+ export const extractDockerBuildContextSources = (dockerfile) => {
123
+ const sources = [];
124
+ for (const line of createLogicalDockerfileLines(dockerfile)) {
125
+ const match = line.match(/^(COPY|ADD)\s+(.+)$/iu);
126
+ if (!match) {
127
+ continue;
128
+ }
129
+ const instruction = match[1].toUpperCase();
130
+ const argumentsSource = match[2].trim();
131
+ const rawTokens = argumentsSource.startsWith("[")
132
+ ? JSON.parse(argumentsSource)
133
+ : tokenizeDockerInstruction(argumentsSource);
134
+ if (instruction === "COPY"
135
+ && rawTokens.some((token) => token === "--from" || token.startsWith("--from="))) {
136
+ continue;
137
+ }
138
+ const tokens = stripInstructionFlags(rawTokens);
139
+ for (const source of tokens.slice(0, -1)) {
140
+ if (instruction === "ADD" && /^(?:https?|git):\/\//u.test(source)) {
141
+ continue;
142
+ }
143
+ sources.push(normalizeContextPath(source));
144
+ }
145
+ }
146
+ return sources;
147
+ };
148
+ export const findIgnoredDockerBuildSources = (dockerfile, patterns = DOCKER_BUILD_CONTEXT_IGNORE_PATTERNS) => extractDockerBuildContextSources(dockerfile).flatMap((source) => {
149
+ const normalizedSource = normalizeContextPathForContainment(source);
150
+ return patterns.flatMap((pattern) => {
151
+ const normalizedPattern = normalizeContextPathForContainment(pattern);
152
+ const swallowsIgnoredPath = normalizedSource.length === 0
153
+ || normalizedPattern === normalizedSource
154
+ || normalizedPattern.startsWith(`${normalizedSource}/`);
155
+ return matchesDockerBuildIgnorePattern(source, pattern) || swallowsIgnoredPath
156
+ ? [{ pattern, source }]
157
+ : [];
158
+ });
159
+ });
@@ -0,0 +1,30 @@
1
+ import type { BuildImageCacheEntry } from "../deployment/buildImageCacheStore.js";
2
+ export declare const DOCKER_IMAGE_INSPECT_MAX_OUTPUT_BYTES: number;
3
+ export declare const DOCKER_IMAGE_INSPECT_TIMEOUT_MS = 5000;
4
+ export interface DockerImageInspection {
5
+ id: string;
6
+ labels: Record<string, string>;
7
+ }
8
+ export interface DockerImageInspectInput {
9
+ dockerCommand?: string;
10
+ dockerContext?: string | null;
11
+ imageTag: string;
12
+ }
13
+ export interface DockerImageInspectCommandOptions {
14
+ encoding: "utf8";
15
+ maxBuffer: number;
16
+ timeout: number;
17
+ }
18
+ export type DockerImageInspectCommandRunner = (command: string, args: string[], options: DockerImageInspectCommandOptions) => Promise<{
19
+ stdout: string;
20
+ }>;
21
+ export type DockerImageInspector = (input: DockerImageInspectInput) => Promise<DockerImageInspection | null>;
22
+ export declare const createDockerImageInspector: (runner?: DockerImageInspectCommandRunner) => DockerImageInspector;
23
+ export declare const inspectDockerImage: DockerImageInspector;
24
+ export interface DockerBuildSkipInput extends DockerImageInspectInput {
25
+ cacheEntry: BuildImageCacheEntry | null;
26
+ compileFingerprint: string;
27
+ contextDigest: string;
28
+ imageInspector?: DockerImageInspector;
29
+ }
30
+ export declare const shouldSkipDockerBuild: (input: DockerBuildSkipInput) => Promise<boolean>;
@@ -0,0 +1,81 @@
1
+ import { execFile as execFileCallback } from "node:child_process";
2
+ export const DOCKER_IMAGE_INSPECT_MAX_OUTPUT_BYTES = 64 * 1024;
3
+ export const DOCKER_IMAGE_INSPECT_TIMEOUT_MS = 5_000;
4
+ const runDockerImageInspectCommand = async (command, args, options) => new Promise((resolve, reject) => {
5
+ execFileCallback(command, args, options, (error, stdout) => {
6
+ if (error) {
7
+ reject(error);
8
+ return;
9
+ }
10
+ resolve({ stdout });
11
+ });
12
+ });
13
+ const parseDockerImageInspection = (source) => {
14
+ try {
15
+ const parsed = JSON.parse(source);
16
+ if (typeof parsed.id !== "string" || parsed.id.length === 0) {
17
+ return null;
18
+ }
19
+ if (parsed.labels === null || parsed.labels === undefined) {
20
+ return { id: parsed.id, labels: {} };
21
+ }
22
+ if (typeof parsed.labels !== "object" || Array.isArray(parsed.labels)) {
23
+ return null;
24
+ }
25
+ const labels = Object.fromEntries(Object.entries(parsed.labels).filter((entry) => typeof entry[1] === "string"));
26
+ if (Object.keys(labels).length !== Object.keys(parsed.labels).length) {
27
+ return null;
28
+ }
29
+ return { id: parsed.id, labels };
30
+ }
31
+ catch {
32
+ return null;
33
+ }
34
+ };
35
+ export const createDockerImageInspector = (runner = runDockerImageInspectCommand) => async (input) => {
36
+ const args = input.dockerContext
37
+ ? ["--context", input.dockerContext, "image", "inspect", input.imageTag]
38
+ : ["image", "inspect", input.imageTag];
39
+ args.push("--format", '{"id":{{json .Id}},"labels":{{json .Config.Labels}}}');
40
+ try {
41
+ const { stdout } = await runner(input.dockerCommand ?? "docker", args, {
42
+ encoding: "utf8",
43
+ maxBuffer: DOCKER_IMAGE_INSPECT_MAX_OUTPUT_BYTES,
44
+ timeout: DOCKER_IMAGE_INSPECT_TIMEOUT_MS
45
+ });
46
+ if (Buffer.byteLength(stdout) > DOCKER_IMAGE_INSPECT_MAX_OUTPUT_BYTES) {
47
+ return null;
48
+ }
49
+ return parseDockerImageInspection(stdout);
50
+ }
51
+ catch {
52
+ return null;
53
+ }
54
+ };
55
+ export const inspectDockerImage = createDockerImageInspector();
56
+ export const shouldSkipDockerBuild = async (input) => {
57
+ const entry = input.cacheEntry;
58
+ if (!entry) {
59
+ return false;
60
+ }
61
+ if (entry.contextDigest !== input.contextDigest) {
62
+ return false;
63
+ }
64
+ if (entry.imageTag !== input.imageTag) {
65
+ return false;
66
+ }
67
+ if (entry.compileFingerprint !== input.compileFingerprint) {
68
+ return false;
69
+ }
70
+ if (entry.dockerContext !== (input.dockerContext ?? null)) {
71
+ return false;
72
+ }
73
+ try {
74
+ const inspection = await (input.imageInspector ?? inspectDockerImage)(input);
75
+ return inspection?.id === entry.imageId
76
+ && inspection.labels["com.spawnfile.compile_fingerprint"] === entry.compileFingerprint;
77
+ }
78
+ catch {
79
+ return false;
80
+ }
81
+ };
@@ -4,6 +4,8 @@ export * from "./buildProject.js";
4
4
  export * from "./publishProject.js";
5
5
  export * from "./upProject.js";
6
6
  export * from "./compileProject.js";
7
+ export * from "./dockerBuildContext.js";
8
+ export * from "./dockerBuildSkip.js";
7
9
  export * from "./initProject.js";
8
10
  export * from "./moltnetRoomMemberships.js";
9
11
  export * from "./runProject.js";
@@ -12,4 +14,6 @@ export * from "./types.js";
12
14
  export * from "./updateProjectModels.js";
13
15
  export * from "./updateProjectRuntime.js";
14
16
  export * from "./updateProjectSurfaces.js";
17
+ export * from "./upReceipt.js";
18
+ export * from "./worldBindings.js";
15
19
  export * from "./view/index.js";
@@ -4,6 +4,8 @@ export * from "./buildProject.js";
4
4
  export * from "./publishProject.js";
5
5
  export * from "./upProject.js";
6
6
  export * from "./compileProject.js";
7
+ export * from "./dockerBuildContext.js";
8
+ export * from "./dockerBuildSkip.js";
7
9
  export * from "./initProject.js";
8
10
  export * from "./moltnetRoomMemberships.js";
9
11
  export * from "./runProject.js";
@@ -12,4 +14,6 @@ export * from "./types.js";
12
14
  export * from "./updateProjectModels.js";
13
15
  export * from "./updateProjectRuntime.js";
14
16
  export * from "./updateProjectSurfaces.js";
17
+ export * from "./upReceipt.js";
18
+ export * from "./worldBindings.js";
15
19
  export * from "./view/index.js";
@@ -0,0 +1,26 @@
1
+ import type { CompilePlan, ResolvedMemoryBank } from "./types.js";
2
+ import type { ContainerMemoryTransport, ContainerPersistentMountReport } from "../report/types.js";
3
+ type MemoryStoreKind = "json" | "memory" | "postgres" | "sqlite";
4
+ type MemoryArtifactSummary = {
5
+ id: string;
6
+ declaring_node_id: string;
7
+ accessible_node_ids: string[];
8
+ store: {
9
+ kind: MemoryStoreKind;
10
+ path?: string;
11
+ persistence?: "durable" | "ephemeral";
12
+ persistent_mount_id?: string;
13
+ dsn_secret?: string;
14
+ };
15
+ index: ResolvedMemoryBank["index"];
16
+ consolidation: ResolvedMemoryBank["consolidation"];
17
+ retention: ResolvedMemoryBank["retention"];
18
+ transport_by_node_id: Record<string, ContainerMemoryTransport>;
19
+ };
20
+ export interface MemoryArtifactBundle {
21
+ mountPathMemoryMap: Map<string, string>;
22
+ mounts: ContainerPersistentMountReport[];
23
+ memories: MemoryArtifactSummary[];
24
+ }
25
+ export declare const createMemoryArtifactBundle: (plan: CompilePlan) => MemoryArtifactBundle;
26
+ export {};