@promptbook/cli 0.113.0-8 → 0.113.0-9

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 (575) hide show
  1. package/apps/agents-server/next.config.ts +6 -3
  2. package/apps/agents-server/src/app/admin/resource-monitor/page.tsx +456 -0
  3. package/apps/agents-server/src/app/admin/task-manager/TaskManagerClient.tsx +14 -2
  4. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskLogActions.tsx +150 -0
  5. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskRow.tsx +58 -18
  6. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskTerminalDialog.tsx +125 -0
  7. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTasksCard.tsx +3 -1
  8. package/apps/agents-server/src/app/admin/task-manager/page.tsx +3 -2
  9. package/apps/agents-server/src/app/admin/update/AdvancedOriginRepositoryPanel.tsx +14 -9
  10. package/apps/agents-server/src/app/admin/update/AutomaticSelfUpdateConfigurationCard.tsx +93 -0
  11. package/apps/agents-server/src/app/admin/update/CurrentDeploymentCard.tsx +15 -13
  12. package/apps/agents-server/src/app/admin/update/CustomCommitPicker.tsx +10 -10
  13. package/apps/agents-server/src/app/admin/update/InstalledVersionsCard.tsx +112 -0
  14. package/apps/agents-server/src/app/admin/update/PendingCommitsCard.tsx +9 -8
  15. package/apps/agents-server/src/app/admin/update/TargetEnvironmentCard.tsx +14 -14
  16. package/apps/agents-server/src/app/admin/update/UpdateClient.tsx +18 -8
  17. package/apps/agents-server/src/app/admin/update/UpdateDatabaseMigrationsPanel.tsx +305 -0
  18. package/apps/agents-server/src/app/admin/update/UpdateJobCard.tsx +29 -8
  19. package/apps/agents-server/src/app/admin/update/UpdateOverview.ts +68 -0
  20. package/apps/agents-server/src/app/admin/update/updatePageCardClassName.ts +6 -0
  21. package/apps/agents-server/src/app/admin/update/useUpdateClientState.ts +241 -7
  22. package/apps/agents-server/src/app/agents/[agentName]/AgentChatWrapper.tsx +17 -3
  23. package/apps/agents-server/src/app/agents/[agentName]/chat/CanonicalAgentChatSurface.tsx +6 -2
  24. package/apps/agents-server/src/app/api/admin/chat-tasks/[taskId]/terminal/route.ts +52 -0
  25. package/apps/agents-server/src/app/api/admin/update/route.ts +55 -8
  26. package/apps/agents-server/src/app/api/admin/update/versions/route.ts +34 -0
  27. package/apps/agents-server/src/app/api/auth/shibboleth/acs/route.ts +4 -2
  28. package/apps/agents-server/src/app/api/auth/shibboleth/login/route.ts +3 -1
  29. package/apps/agents-server/src/app/api/auth/shibboleth/metadata/route.ts +5 -2
  30. package/apps/agents-server/src/app/api/auth/shibboleth/status/route.ts +5 -2
  31. package/apps/agents-server/src/app/layout.tsx +39 -25
  32. package/apps/agents-server/src/components/AgentAvatar/AgentAvatar.tsx +1 -1
  33. package/apps/agents-server/src/components/AgentAvatar/DefaultAgentAvatarVisualProvider.tsx +1 -1
  34. package/apps/agents-server/src/components/Header/Header.tsx +16 -3
  35. package/apps/agents-server/src/components/Header/HeaderTypes.ts +6 -0
  36. package/apps/agents-server/src/components/Header/buildAgentMenuStructure.tsx +6 -4
  37. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +13 -1
  38. package/apps/agents-server/src/components/Homepage/useAgentsListState.ts +1 -1
  39. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +21 -5
  40. package/apps/agents-server/src/constants/defaultAgentAvatarVisual.ts +4 -3
  41. package/apps/agents-server/src/database/metadataDefaults.ts +1 -1
  42. package/apps/agents-server/src/database/migrate.ts +25 -1
  43. package/apps/agents-server/src/database/migratePrefix.ts +24 -0
  44. package/apps/agents-server/src/database/runDatabaseMigrations.ts +9 -1
  45. package/apps/agents-server/src/instrumentation-node.ts +15 -0
  46. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +1 -0
  47. package/apps/agents-server/src/languages/translations/czech.yaml +1 -0
  48. package/apps/agents-server/src/languages/translations/english.yaml +1 -0
  49. package/apps/agents-server/src/{components/Homepage → utils/agentOrganization}/hiddenFolders.ts +49 -29
  50. package/apps/agents-server/src/utils/chat/createAttachmentAwareCitationLabelResolver.ts +147 -0
  51. package/apps/agents-server/src/utils/chatTasksAdmin.ts +1 -1
  52. package/apps/agents-server/src/utils/externalChatRunner/processExternalUserChatJob.ts +11 -5
  53. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/GetAdminChatTasksData.ts +12 -0
  54. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlQuery.ts +264 -0
  55. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlValues.ts +35 -0
  56. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskTimeUtilities.ts +30 -0
  57. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/compareAdminChatTasks.ts +135 -0
  58. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/createAdminChatTaskCounters.ts +29 -0
  59. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/filterAdminChatTasks.ts +78 -0
  60. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaClientSql.ts +62 -0
  61. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaSupabaseQuery.ts +29 -0
  62. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/loadAdminChatTaskFallbackData.ts +193 -0
  63. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskFallbackRows.ts +99 -0
  64. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskSqlRows.ts +94 -0
  65. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks.ts +4 -947
  66. package/apps/agents-server/src/utils/getAdminChatTasksResponse/mapVpsSelfUpdateJobToAdminChatTask.ts +18 -5
  67. package/apps/agents-server/src/utils/getAdminChatTasksResponse.ts +57 -21
  68. package/apps/agents-server/src/utils/localChatRunner/processLocalUserChatJob.ts +20 -5
  69. package/apps/agents-server/src/utils/pagePreviewBrowserSessions.ts +13 -1
  70. package/apps/agents-server/src/utils/resourceMonitor/formatResourceMonitorValue.ts +50 -0
  71. package/apps/agents-server/src/utils/resourceMonitor/readCpuResourceUsage.ts +75 -0
  72. package/apps/agents-server/src/utils/resourceMonitor/readDiskResourceUsage.ts +42 -0
  73. package/apps/agents-server/src/utils/resourceMonitor/readMemoryResourceUsage.ts +28 -0
  74. package/apps/agents-server/src/utils/resourceMonitor/readNetworkResourceUsage.ts +271 -0
  75. package/apps/agents-server/src/utils/resourceMonitor/readServerResourceMonitorSnapshot.ts +47 -0
  76. package/apps/agents-server/src/utils/resourceMonitor/resolveServerResourceWarningStatus.ts +72 -0
  77. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorConstants.ts +29 -0
  78. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorTypes.ts +155 -0
  79. package/apps/agents-server/src/utils/resourceMonitor/waitForResourceMonitorSample.ts +11 -0
  80. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethSamlClient.ts +35 -0
  81. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethServiceProviderMetadataXml.ts +25 -0
  82. package/apps/agents-server/src/utils/shibbolethAuthentication/extractShibbolethProfileAttributes.ts +173 -0
  83. package/apps/agents-server/src/utils/shibbolethAuthentication/fetchIdentityProviderMetadataXml.ts +21 -0
  84. package/apps/agents-server/src/utils/shibbolethAuthentication/findOrCreateShibbolethUser.ts +323 -0
  85. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethAuthenticationAttemptTableName.ts +13 -0
  86. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethRequestDetails.ts +19 -0
  87. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethUserIdentityTableName.ts +13 -0
  88. package/apps/agents-server/src/utils/shibbolethAuthentication/parseIdentityProviderMetadataXml.ts +110 -0
  89. package/apps/agents-server/src/utils/shibbolethAuthentication/recordShibbolethAuthenticationAttempt.ts +57 -0
  90. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethAuthenticationConfiguration.ts +78 -0
  91. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethPublicRequestUrl.ts +101 -0
  92. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethServiceProviderUrls.ts +63 -0
  93. package/apps/agents-server/src/utils/shibbolethAuthentication/sanitizeShibbolethRelayState.ts +17 -0
  94. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationConstants.ts +62 -0
  95. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationTypes.ts +105 -0
  96. package/apps/agents-server/src/utils/shibbolethAuthentication.ts +25 -957
  97. package/apps/agents-server/src/utils/taskTerminal/resolveAdminTaskTerminalSession.ts +322 -0
  98. package/apps/agents-server/src/utils/taskTerminal/runWithTaskTerminalCapture.ts +134 -0
  99. package/apps/agents-server/src/utils/taskTerminal/taskTerminalLog.ts +360 -0
  100. package/apps/agents-server/src/utils/userChat/finalizeUserChatJob.ts +16 -0
  101. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutStore/updateUserChatTimeoutTerminalState.ts +3 -0
  102. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutWorker.ts +4 -1
  103. package/apps/agents-server/src/utils/vpsConfiguration.ts +4 -0
  104. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +81 -0
  105. package/apps/agents-server/src/utils/vpsSelfUpdate/listVpsSelfUpdateCandidateCommits.ts +217 -0
  106. package/apps/agents-server/src/utils/vpsSelfUpdate/readPersistedVpsSelfUpdateJob.ts +310 -0
  107. package/apps/agents-server/src/utils/vpsSelfUpdate/readVpsSelfUpdateOverview.ts +178 -0
  108. package/apps/agents-server/src/utils/vpsSelfUpdate/resolveVpsSelfUpdateJobForOverview.ts +42 -0
  109. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +201 -0
  110. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateAutomaticConfiguration.ts +152 -0
  111. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateConfiguration.ts +81 -0
  112. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateCron.ts +357 -0
  113. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateEnvironment.ts +120 -0
  114. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateInstalledVersions.ts +162 -0
  115. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobConstants.ts +15 -0
  116. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobHistory.ts +387 -0
  117. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobIdentity.ts +26 -0
  118. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateOriginRepository.ts +90 -0
  119. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateRepository.ts +286 -0
  120. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateScheduler.ts +191 -0
  121. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateStateFiles.ts +197 -0
  122. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateTypes.ts +452 -0
  123. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +66 -1547
  124. package/esm/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  125. package/esm/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  126. package/esm/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  127. package/esm/index.es.js +28566 -27913
  128. package/esm/index.es.js.map +1 -1
  129. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  130. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  131. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  132. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  133. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  134. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  135. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  136. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  137. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  138. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  139. package/esm/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  140. package/esm/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  141. package/esm/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  142. package/esm/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  143. package/esm/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  144. package/esm/src/_packages/types.index.d.ts +2 -2
  145. package/esm/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  146. package/esm/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  147. package/esm/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  148. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  149. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  150. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  151. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  152. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  153. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  154. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  155. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  156. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  157. package/esm/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  158. package/esm/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  159. package/esm/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  160. package/esm/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  161. package/esm/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  162. package/esm/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  163. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  164. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  165. package/esm/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  166. package/esm/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  167. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  168. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  169. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  170. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  171. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  172. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  173. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  174. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  175. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  176. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  177. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  178. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  179. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  180. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  181. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  182. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  183. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  184. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  185. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  186. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  187. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  188. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  189. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  190. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  191. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  192. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  193. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  194. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  195. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  196. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  197. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  198. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  199. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  200. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  201. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  202. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  203. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  204. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  205. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  206. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  207. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  208. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  209. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  210. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  211. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  212. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  213. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  214. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  215. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  216. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  217. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  218. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  219. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  220. package/esm/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  221. package/esm/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  222. package/esm/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  223. package/esm/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  224. package/esm/src/commitments/META/META.d.ts +2 -2
  225. package/esm/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  226. package/esm/src/commitments/index.d.ts +1 -1
  227. package/esm/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  228. package/esm/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  229. package/esm/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  230. package/esm/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  231. package/esm/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  232. package/esm/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  233. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  234. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  235. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  236. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  237. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  238. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  239. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  240. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  241. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  242. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  243. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  244. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  245. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  246. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  247. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  248. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  249. package/esm/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  250. package/esm/src/utils/color/Color.d.ts +1 -1
  251. package/esm/src/version.d.ts +1 -1
  252. package/package.json +1 -1
  253. package/src/_packages/types.index.ts +2 -2
  254. package/src/avatars/Avatar.tsx +2 -13
  255. package/src/avatars/renderAvatarVisual.ts +2 -13
  256. package/src/avatars/renderAvatarVisualAsciiArt.ts +137 -18
  257. package/src/avatars/visuals/asciiOctopusAvatarVisual.ts +1 -6
  258. package/src/avatars/visuals/avatarVisualRegistry.ts +1 -1
  259. package/src/avatars/visuals/minecraft2AvatarVisual.ts +1 -2
  260. package/src/avatars/visuals/octopus2AvatarVisual.ts +1 -5
  261. package/src/avatars/visuals/octopus3AvatarVisual.ts +1 -8
  262. package/src/avatars/visuals/octopus3d2AvatarVisual.ts +4 -13
  263. package/src/avatars/visuals/octopus3d3AvatarVisual.ts +4 -13
  264. package/src/avatars/visuals/octopus3d4AvatarVisual.ts +4 -13
  265. package/src/avatars/visuals/octopus3dAvatarVisual.ts +3 -3
  266. package/src/avatars/visuals/octopus3dAvatarVisualShared.ts +2 -7
  267. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +2 -1
  268. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +3 -5
  269. package/src/book-3.0/CliAgent.ts +1 -7
  270. package/src/book-3.0/LiteAgent.ts +5 -5
  271. package/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.tsx +1 -4
  272. package/src/book-components/BookEditor/BookEditor.tsx +2 -2
  273. package/src/book-components/BookEditor/BookEditorAboutPromptbookInformation.tsx +3 -2
  274. package/src/book-components/BookEditor/BookEditorActionbar.tsx +1 -1
  275. package/src/book-components/BookEditor/BookEditorMonaco.tsx +2 -2
  276. package/src/book-components/BookEditor/BookEditorMonacoUploadPanel.tsx +1 -1
  277. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  278. package/src/book-components/BookEditor/useBookEditorMonacoStyles.ts +1 -1
  279. package/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.ts +147 -0
  280. package/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.ts +10 -0
  281. package/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.ts +209 -0
  282. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.ts +164 -0
  283. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.ts +121 -0
  284. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.ts +81 -0
  285. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.ts +360 -0
  286. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.ts +47 -0
  287. package/src/book-components/BookEditor/useBookEditorMonacoUploads.ts +10 -1067
  288. package/src/book-components/Chat/Chat/Chat.module.css +159 -0
  289. package/src/book-components/Chat/Chat/Chat.tsx +16 -1
  290. package/src/book-components/Chat/Chat/ChatCitationModal.tsx +2 -2
  291. package/src/book-components/Chat/Chat/ChatImageAttachmentModal.tsx +108 -0
  292. package/src/book-components/Chat/Chat/ChatInputArea.tsx +43 -27
  293. package/src/book-components/Chat/Chat/ChatMessageAttachments.tsx +212 -0
  294. package/src/book-components/Chat/Chat/ChatMessageItem.tsx +32 -18
  295. package/src/book-components/Chat/Chat/ChatMessageList.tsx +3 -0
  296. package/src/book-components/Chat/Chat/ChatProps.tsx +9 -0
  297. package/src/book-components/Chat/Chat/renderTimeoutToolCallDetails.tsx +1 -5
  298. package/src/book-components/Chat/Chat/useChatInputAreaComposer.ts +59 -7
  299. package/src/book-components/Chat/Chat/useChatInputAreaDictation.ts +7 -7
  300. package/src/book-components/Chat/Chat/useChatToolCallModalState.ts +1 -4
  301. package/src/book-components/Chat/hooks/useChatRatings.ts +1 -1
  302. package/src/book-components/Chat/save/html/htmlSaveFormatDefinition.ts +2 -3
  303. package/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.ts +2 -2
  304. package/src/book-components/Chat/save/pdf/buildChatPdf.ts +1 -1
  305. package/src/book-components/Chat/utils/getToolCallChipletInfo.ts +1 -5
  306. package/src/book-components/Chat/utils/isVisibleChatToolCall.ts +2 -1
  307. package/src/book-components/Chat/utils/parseMessageButtons.ts +27 -2
  308. package/src/cli/cli-commands/about.ts +1 -1
  309. package/src/cli/cli-commands/agent/agentCliOptions.ts +2 -5
  310. package/src/cli/cli-commands/agent-folder/agentProjectPaths.ts +6 -12
  311. package/src/cli/cli-commands/agent-folder/init.ts +3 -8
  312. package/src/cli/cli-commands/agent-folder/initializeAgentProjectConfiguration.ts +2 -11
  313. package/src/cli/cli-commands/agent-folder/printAgentInitializationSummary.ts +2 -9
  314. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.ts +6 -0
  315. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.ts +6 -0
  316. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.ts +6 -0
  317. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.ts +11 -0
  318. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.ts +9 -0
  319. package/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.ts +6 -0
  320. package/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.ts +19 -0
  321. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.ts +71 -0
  322. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.ts +69 -0
  323. package/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.ts +59 -0
  324. package/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.ts +23 -0
  325. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.ts +20 -0
  326. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.ts +17 -0
  327. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.ts +27 -0
  328. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.ts +21 -0
  329. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.ts +22 -0
  330. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.ts +30 -0
  331. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.ts +41 -0
  332. package/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.ts +14 -0
  333. package/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.ts +10 -0
  334. package/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.ts +10 -0
  335. package/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.ts +31 -0
  336. package/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.ts +35 -0
  337. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.ts +33 -0
  338. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.ts +30 -0
  339. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.ts +19 -0
  340. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.ts +21 -0
  341. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.ts +19 -0
  342. package/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.ts +184 -0
  343. package/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.ts +48 -0
  344. package/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.ts +179 -0
  345. package/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.ts +28 -0
  346. package/src/cli/cli-commands/agents-server/buildAgentsServer.ts +22 -1045
  347. package/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.ts +2 -1
  348. package/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.ts +2 -1
  349. package/src/cli/cli-commands/agents-server/run.ts +2 -5
  350. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.ts +67 -0
  351. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.ts +43 -0
  352. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.ts +44 -0
  353. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.ts +59 -0
  354. package/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.ts +9 -0
  355. package/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.ts +14 -0
  356. package/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.ts +26 -0
  357. package/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.ts +15 -0
  358. package/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.ts +29 -0
  359. package/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.ts +32 -0
  360. package/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.ts +18 -0
  361. package/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.ts +81 -0
  362. package/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.ts +52 -0
  363. package/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.ts +17 -0
  364. package/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.ts +97 -0
  365. package/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.ts +132 -0
  366. package/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.ts +14 -0
  367. package/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.ts +132 -0
  368. package/src/cli/cli-commands/agents-server/startAgentsServer.ts +24 -797
  369. package/src/cli/cli-commands/agents-server.ts +2 -6
  370. package/src/cli/cli-commands/coder/agentCodingFile.ts +1 -7
  371. package/src/cli/cli-commands/coder/generate-boilerplates.ts +2 -6
  372. package/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.ts +2 -7
  373. package/src/cli/cli-commands/coder/server.ts +4 -2
  374. package/src/cli/cli-commands/common/promptRunnerCliOptions.ts +3 -8
  375. package/src/cli/cli-commands/make.ts +1 -1
  376. package/src/cli/cli-commands/run/runCommandAction.ts +1 -1
  377. package/src/collection/agent-collection/CreateAgentInput.ts +2 -5
  378. package/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.ts +1 -1
  379. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +1 -10
  380. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +1 -10
  381. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +1 -6
  382. package/src/commitments/META/META.ts +4 -4
  383. package/src/commitments/META_AVATAR/META_AVATAR.ts +16 -10
  384. package/src/commitments/USE_CALENDAR/createUseCalendarToolFunctions.ts +1 -4
  385. package/src/commitments/USE_PROJECT/createUseProjectToolFunctions.ts +2 -10
  386. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +1 -11
  387. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +1 -6
  388. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +1 -6
  389. package/src/commitments/WALLET/createWalletToolFunctions.ts +2 -11
  390. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +1 -6
  391. package/src/commitments/WALLET/parseWalletToolArgs.ts +1 -10
  392. package/src/commitments/index.ts +1 -0
  393. package/src/conversion/parsePipeline/applyPipelineHead.ts +1 -1
  394. package/src/conversion/parsePipeline/createUniqueSectionNameResolver.ts +1 -1
  395. package/src/conversion/parsePipeline/processPipelineSection.ts +1 -1
  396. package/src/conversion/validation/validatePipeline/createPipelineValidationContext.ts +43 -0
  397. package/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.ts +72 -0
  398. package/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.ts +220 -0
  399. package/src/conversion/validation/validatePipeline/validatePipelineMetadata.ts +66 -0
  400. package/src/conversion/validation/validatePipeline/validatePipelineParameters.ts +136 -0
  401. package/src/conversion/validation/validatePipeline/validatePipelineTasks.ts +243 -0
  402. package/src/conversion/validation/validatePipeline.ts +7 -750
  403. package/src/execution/LlmExecutionTools.ts +1 -6
  404. package/src/execution/createPipelineExecutor/getReservedParametersForTask.ts +1 -5
  405. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.ts +51 -0
  406. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.ts +30 -0
  407. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.ts +62 -0
  408. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.ts +10 -0
  409. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.ts +75 -0
  410. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.ts +101 -0
  411. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.ts +24 -0
  412. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.ts +17 -0
  413. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.ts +15 -0
  414. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.ts +19 -0
  415. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.ts +44 -0
  416. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.ts +21 -0
  417. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.ts +97 -0
  418. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.ts +17 -0
  419. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.ts +30 -0
  420. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.ts +32 -0
  421. package/src/llm-providers/_common/register/$registeredLlmToolsMessage.ts +5 -568
  422. package/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.ts +1 -6
  423. package/src/llm-providers/openai/OpenAiAgentKitExecutionTools.ts +2 -2
  424. package/src/llm-providers/openai/OpenAiAssistantExecutionTools.ts +1 -1
  425. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.ts +2 -2
  426. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.ts +1 -1
  427. package/src/llm-providers/openai/OpenAiCompatibleExecutionTools.ts +2 -7
  428. package/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.ts +1 -1
  429. package/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.ts +2 -2
  430. package/src/llm-providers/openai/utils/OpenAiCompatibleUnsupportedParameterRetrier.ts +1 -5
  431. package/src/llm-providers/openai/utils/buildToolInvocationScript.ts +1 -6
  432. package/src/other/templates/getTemplatesPipelineCollection.ts +692 -774
  433. package/src/remote-server/startRemoteServer/registerExecutionRoutes.ts +1 -1
  434. package/src/remote-server/startRemoteServer/registerServerIndexRoute.ts +1 -1
  435. package/src/scrapers/_common/utils/makeKnowledgeSourceHandler.ts +1 -6
  436. package/src/speech-recognition/OpenAiSpeechRecognition.ts +1 -6
  437. package/src/transpilers/_common/prepareSdkTranspilerContext.ts +1 -4
  438. package/src/types/Prompt.ts +1 -7
  439. package/src/types/string_host.ts +1 -9
  440. package/src/types/string_pipeline_url.ts +1 -4
  441. package/src/utils/agents/resolveAgentAvatarImageUrl.ts +2 -2
  442. package/src/utils/color/Color.ts +2 -2
  443. package/src/utils/markdown/parseMarkdownSection.ts +1 -5
  444. package/src/utils/random/$randomFullnameWithColor.ts +1 -6
  445. package/src/version.ts +2 -2
  446. package/src/versions.txt +1 -0
  447. package/umd/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  448. package/umd/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  449. package/umd/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  450. package/umd/index.umd.js +28568 -27915
  451. package/umd/index.umd.js.map +1 -1
  452. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  453. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  454. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  455. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  456. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  457. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  458. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  459. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  460. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  461. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  462. package/umd/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  463. package/umd/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  464. package/umd/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  465. package/umd/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  466. package/umd/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  467. package/umd/src/_packages/types.index.d.ts +2 -2
  468. package/umd/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  469. package/umd/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  470. package/umd/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  471. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  472. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  473. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  474. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  475. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  476. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  477. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  478. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  479. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  480. package/umd/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  481. package/umd/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  482. package/umd/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  483. package/umd/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  484. package/umd/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  485. package/umd/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  486. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  487. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  488. package/umd/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  489. package/umd/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  490. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  491. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  492. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  493. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  494. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  495. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  496. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  497. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  498. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  499. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  500. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  501. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  502. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  503. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  504. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  505. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  506. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  507. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  508. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  509. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  510. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  511. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  512. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  513. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  514. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  515. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  516. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  517. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  518. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  519. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  520. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  521. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  522. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  523. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  524. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  525. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  526. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  527. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  528. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  529. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  530. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  531. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  532. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  533. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  534. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  535. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  536. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  537. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  538. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  539. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  540. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  541. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  542. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  543. package/umd/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  544. package/umd/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  545. package/umd/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  546. package/umd/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  547. package/umd/src/commitments/META/META.d.ts +2 -2
  548. package/umd/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  549. package/umd/src/commitments/index.d.ts +1 -1
  550. package/umd/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  551. package/umd/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  552. package/umd/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  553. package/umd/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  554. package/umd/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  555. package/umd/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  556. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  557. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  558. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  559. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  560. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  561. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  562. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  563. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  564. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  565. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  566. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  567. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  568. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  569. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  570. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  571. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  572. package/umd/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  573. package/umd/src/utils/color/Color.d.ts +1 -1
  574. package/umd/src/version.d.ts +1 -1
  575. package/apps/agents-server/src/utils/userChat/createUserChatRunnerProgressCard.ts +0 -57
@@ -0,0 +1,217 @@
1
+ import { resolveManagedPromptbookRepositoryDirectory } from './vpsSelfUpdateConfiguration';
2
+ import { readConfiguredVpsSelfUpdateOriginRepositoryUrl } from './vpsSelfUpdateOriginRepository';
3
+ import { GIT_LOG_FIELD_SEPARATOR, runGitInRepository } from './vpsSelfUpdateRepository';
4
+ import type { VpsSelfUpdateCandidateCommit, VpsSelfUpdateCandidateCommitsFilter } from './vpsSelfUpdateTypes';
5
+
6
+ /**
7
+ * Hard ceiling for the candidate-commit listing to avoid streaming the entire repository to the browser.
8
+ *
9
+ * @private constant of `vpsSelfUpdate`
10
+ */
11
+ const VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS = 500;
12
+
13
+ /**
14
+ * Default candidate-commit count returned to the browser.
15
+ *
16
+ * @private constant of `vpsSelfUpdate`
17
+ */
18
+ const VPS_SELF_UPDATE_DEFAULT_CANDIDATE_COMMITS = 200;
19
+
20
+ /**
21
+ * Lists commits from the managed repository for the custom-target picker.
22
+ *
23
+ * Fetches the latest refs from the configured upstream first so the picker can include
24
+ * recent commits that have not been deployed yet, then resolves branches/tags per commit.
25
+ *
26
+ * @param filter - Filter applied to the result.
27
+ * @returns Browser-safe commit list.
28
+ *
29
+ * @private function of `vpsSelfUpdate`
30
+ */
31
+ export async function listVpsSelfUpdateCandidateCommits(
32
+ filter: VpsSelfUpdateCandidateCommitsFilter = {},
33
+ ): Promise<ReadonlyArray<VpsSelfUpdateCandidateCommit>> {
34
+ if (process.platform !== 'linux') {
35
+ return [];
36
+ }
37
+
38
+ const repositoryDirectory = await resolveManagedPromptbookRepositoryDirectory();
39
+ if (!repositoryDirectory) {
40
+ return [];
41
+ }
42
+
43
+ const originRepositoryUrl = await readConfiguredVpsSelfUpdateOriginRepositoryUrl();
44
+ await runGitInRepository(repositoryDirectory, [
45
+ 'fetch',
46
+ '--no-tags',
47
+ '--prune',
48
+ '--depth=200',
49
+ originRepositoryUrl,
50
+ '+refs/heads/*:refs/remotes/origin/*',
51
+ ]);
52
+ await runGitInRepository(repositoryDirectory, [
53
+ 'fetch',
54
+ '--tags',
55
+ '--force',
56
+ originRepositoryUrl,
57
+ '+refs/tags/*:refs/tags/*',
58
+ ]);
59
+
60
+ const limit = clampVpsSelfUpdateCandidateCommitLimit(filter.limit);
61
+ const gitLogArguments = [
62
+ 'log',
63
+ `--max-count=${VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS}`,
64
+ '--all',
65
+ `--format=%H${GIT_LOG_FIELD_SEPARATOR}%aI${GIT_LOG_FIELD_SEPARATOR}%an${GIT_LOG_FIELD_SEPARATOR}%ae${GIT_LOG_FIELD_SEPARATOR}%s`,
66
+ ];
67
+
68
+ if (filter.authoredAfter) {
69
+ gitLogArguments.push(`--since=${filter.authoredAfter}`);
70
+ }
71
+ if (filter.authoredBefore) {
72
+ gitLogArguments.push(`--until=${filter.authoredBefore}`);
73
+ }
74
+
75
+ const gitLogOutput = await runGitInRepository(repositoryDirectory, gitLogArguments);
76
+ if (!gitLogOutput) {
77
+ return [];
78
+ }
79
+
80
+ const branchesByCommit = await readVpsSelfUpdateRefsByCommit(repositoryDirectory, 'refs/remotes/origin');
81
+ const tagsByCommit = await readVpsSelfUpdateRefsByCommit(repositoryDirectory, 'refs/tags');
82
+ const searchText = filter.searchText?.trim().toLowerCase() || '';
83
+
84
+ const commits: Array<VpsSelfUpdateCandidateCommit> = [];
85
+ for (const line of gitLogOutput.split('\n')) {
86
+ if (!line) {
87
+ continue;
88
+ }
89
+
90
+ const fields = line.split(GIT_LOG_FIELD_SEPARATOR);
91
+ const commitSha = fields[0] ?? '';
92
+ if (!commitSha) {
93
+ continue;
94
+ }
95
+
96
+ const authoredAt = fields[1] ?? '';
97
+ const authorName = fields[2] ?? '';
98
+ const authorEmail = fields[3] ?? '';
99
+ const subject = fields.slice(4).join(GIT_LOG_FIELD_SEPARATOR);
100
+ const branches = branchesByCommit.get(commitSha) ?? [];
101
+ const tags = tagsByCommit.get(commitSha) ?? [];
102
+
103
+ if (
104
+ searchText &&
105
+ !matchesVpsSelfUpdateCandidateCommitSearchText(searchText, commitSha, subject, authorName, branches, tags)
106
+ ) {
107
+ continue;
108
+ }
109
+
110
+ commits.push({
111
+ commitSha,
112
+ shortCommitSha: commitSha.slice(0, 7),
113
+ subject,
114
+ authorName,
115
+ authorEmail,
116
+ authoredAt,
117
+ branches,
118
+ tags,
119
+ isReleaseTag: tags.length > 0,
120
+ });
121
+
122
+ if (commits.length >= limit) {
123
+ break;
124
+ }
125
+ }
126
+
127
+ return commits;
128
+ }
129
+
130
+ /**
131
+ * Clamps an external limit value to the safe candidate-commit range.
132
+ *
133
+ * @param value - Raw user-provided limit.
134
+ * @returns Clamped value.
135
+ */
136
+ function clampVpsSelfUpdateCandidateCommitLimit(value: number | null | undefined): number {
137
+ if (value === null || value === undefined || !Number.isFinite(value)) {
138
+ return VPS_SELF_UPDATE_DEFAULT_CANDIDATE_COMMITS;
139
+ }
140
+
141
+ return Math.max(1, Math.min(VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS, Math.floor(value)));
142
+ }
143
+
144
+ /**
145
+ * Returns `true` when one commit matches the free-text filter applied to the picker.
146
+ *
147
+ * @param searchText - Lower-cased search text.
148
+ * @param commitSha - Full commit hash.
149
+ * @param subject - Commit subject.
150
+ * @param authorName - Author display name.
151
+ * @param branches - Branches pointing at the commit.
152
+ * @param tags - Tags pointing at the commit.
153
+ * @returns `true` when the commit should be included.
154
+ */
155
+ function matchesVpsSelfUpdateCandidateCommitSearchText(
156
+ searchText: string,
157
+ commitSha: string,
158
+ subject: string,
159
+ authorName: string,
160
+ branches: ReadonlyArray<string>,
161
+ tags: ReadonlyArray<string>,
162
+ ): boolean {
163
+ if (commitSha.toLowerCase().startsWith(searchText)) {
164
+ return true;
165
+ }
166
+
167
+ if (subject.toLowerCase().includes(searchText)) {
168
+ return true;
169
+ }
170
+
171
+ if (authorName.toLowerCase().includes(searchText)) {
172
+ return true;
173
+ }
174
+
175
+ if (branches.some((branch) => branch.toLowerCase().includes(searchText))) {
176
+ return true;
177
+ }
178
+
179
+ return tags.some((tag) => tag.toLowerCase().includes(searchText));
180
+ }
181
+
182
+ /**
183
+ * Reads refs grouped by commit hash so the picker can annotate each commit with its branches/tags.
184
+ *
185
+ * @param repositoryDirectory - Repository checkout path.
186
+ * @param refPrefix - Ref namespace passed to `git for-each-ref` (e.g. `refs/tags`).
187
+ * @returns Map keyed by commit hash.
188
+ */
189
+ async function readVpsSelfUpdateRefsByCommit(
190
+ repositoryDirectory: string,
191
+ refPrefix: string,
192
+ ): Promise<Map<string, Array<string>>> {
193
+ const output = await runGitInRepository(repositoryDirectory, [
194
+ 'for-each-ref',
195
+ '--format=%(objectname)\x1f%(refname:short)',
196
+ refPrefix,
197
+ ]);
198
+ const refsByCommit = new Map<string, Array<string>>();
199
+
200
+ if (!output) {
201
+ return refsByCommit;
202
+ }
203
+
204
+ for (const line of output.split('\n')) {
205
+ const [commitSha, refName] = line.split('\x1f');
206
+ if (!commitSha || !refName) {
207
+ continue;
208
+ }
209
+
210
+ const cleanRefName = refName.replace(/^origin\//u, '');
211
+ const list = refsByCommit.get(commitSha) ?? [];
212
+ list.push(cleanRefName);
213
+ refsByCommit.set(commitSha, list);
214
+ }
215
+
216
+ return refsByCommit;
217
+ }
@@ -0,0 +1,310 @@
1
+ import { resolveVpsSelfUpdateEnvironment } from './vpsSelfUpdateEnvironment';
2
+ import { VPS_SELF_UPDATE_STALE_ERROR_MESSAGE } from './vpsSelfUpdateJobConstants';
3
+ import {
4
+ decodeVpsSelfUpdateStatusField,
5
+ readLastVpsSelfUpdateTextFileChunk,
6
+ readVpsSelfUpdateStatusFile,
7
+ resolveVpsSelfUpdateLogFilePath,
8
+ } from './vpsSelfUpdateStateFiles';
9
+ import type {
10
+ VpsSelfUpdateDatabaseMigrationSnapshot,
11
+ VpsSelfUpdateDatabaseMigrationStatus,
12
+ VpsSelfUpdateJobSnapshot,
13
+ VpsSelfUpdateJobStatus,
14
+ } from './vpsSelfUpdateTypes';
15
+ import type { VpsSelfUpdateJobTrigger } from './vpsSelfUpdateTypes';
16
+
17
+ /**
18
+ * Options for reading the shell-owned self-update status snapshot.
19
+ */
20
+ type ReadPersistedVpsSelfUpdateJobOptions = {
21
+ /**
22
+ * Whether to include the log tail in the returned snapshot.
23
+ */
24
+ readonly isLogTailIncluded?: boolean;
25
+ };
26
+
27
+ /**
28
+ * Status values accepted from the shell-owned database migration status field.
29
+ */
30
+ const VPS_SELF_UPDATE_DATABASE_MIGRATION_STATUSES = new Set<VpsSelfUpdateDatabaseMigrationStatus>([
31
+ 'pending',
32
+ 'running',
33
+ 'succeeded',
34
+ 'failed',
35
+ 'skipped',
36
+ 'unknown',
37
+ ]);
38
+
39
+ /**
40
+ * Reads a lightweight snapshot of the currently persisted standalone VPS self-update job.
41
+ *
42
+ * Reads only the persisted status file and its log tail — no git access, no remote fetching —
43
+ * so it is safe to call from frequent polling loops such as the admin task manager.
44
+ *
45
+ * @returns Parsed job snapshot (status `idle` when no job has ever been persisted).
46
+ *
47
+ * @private function of `vpsSelfUpdate`
48
+ */
49
+ export async function readVpsSelfUpdateJobSnapshot(): Promise<VpsSelfUpdateJobSnapshot> {
50
+ return readPersistedVpsSelfUpdateJob({ isLogTailIncluded: false });
51
+ }
52
+
53
+ /**
54
+ * Reads one persisted update-job snapshot from disk.
55
+ *
56
+ * @param options - Snapshot loading options.
57
+ * @returns Parsed job snapshot.
58
+ *
59
+ * @private function of `vpsSelfUpdate`
60
+ */
61
+ export async function readPersistedVpsSelfUpdateJob(
62
+ options: ReadPersistedVpsSelfUpdateJobOptions = {},
63
+ ): Promise<VpsSelfUpdateJobSnapshot> {
64
+ const statusEntries = await readVpsSelfUpdateStatusFile();
65
+ const jobId = statusEntries.get('JOB_ID') || null;
66
+ const targetBranch = statusEntries.get('TARGET_REF') || null;
67
+ const targetEnvironment = resolveVpsSelfUpdateEnvironment(targetBranch);
68
+ const pid = parseNullableVpsSelfUpdateInteger(statusEntries.get('PID'));
69
+ const currentStep = decodeVpsSelfUpdateStatusField(statusEntries.get('CURRENT_STEP_B64'));
70
+ const errorMessage = decodeVpsSelfUpdateStatusField(statusEntries.get('ERROR_MESSAGE_B64'));
71
+ const logFilePath = statusEntries.get('LOG_FILE') || resolveVpsSelfUpdateLogFilePath();
72
+ const rawStatus = statusEntries.get('STATUS');
73
+ const status = isVpsSelfUpdateJobStatus(rawStatus) ? rawStatus : 'idle';
74
+ const rawTrigger = statusEntries.get('TRIGGER');
75
+ const trigger = isVpsSelfUpdateJobTrigger(rawTrigger) ? rawTrigger : 'manual';
76
+ const isStale = status === 'running' && pid !== null ? !(await isVpsSelfUpdateProcessAlive(pid)) : false;
77
+ const databaseMigrations = parseVpsSelfUpdateDatabaseMigrationSnapshot(statusEntries, status);
78
+
79
+ return {
80
+ jobId,
81
+ status: isStale ? 'failed' : status,
82
+ trigger,
83
+ pid,
84
+ targetBranch,
85
+ targetEnvironment,
86
+ currentStep,
87
+ currentCommitSha: statusEntries.get('CURRENT_COMMIT') || null,
88
+ targetCommitSha: statusEntries.get('TARGET_COMMIT') || null,
89
+ errorMessage: isStale && !errorMessage ? VPS_SELF_UPDATE_STALE_ERROR_MESSAGE : errorMessage,
90
+ startedAt: statusEntries.get('STARTED_AT') || null,
91
+ finishedAt: statusEntries.get('FINISHED_AT') || null,
92
+ isStale,
93
+ logTail: options.isLogTailIncluded === false ? null : await readLastVpsSelfUpdateTextFileChunk(logFilePath),
94
+ logFilePath,
95
+ databaseMigrations,
96
+ };
97
+ }
98
+
99
+ /**
100
+ * Checks whether a detached update process is still alive.
101
+ *
102
+ * @param pid - Candidate process id.
103
+ * @returns `true` when the process exists.
104
+ */
105
+ async function isVpsSelfUpdateProcessAlive(pid: number): Promise<boolean> {
106
+ if (!Number.isFinite(pid) || pid <= 0) {
107
+ return false;
108
+ }
109
+
110
+ try {
111
+ process.kill(pid, 0);
112
+ return true;
113
+ } catch (error) {
114
+ return (error as NodeJS.ErrnoException).code === 'EPERM';
115
+ }
116
+ }
117
+
118
+ /**
119
+ * Parses one optional integer field.
120
+ *
121
+ * @param value - Raw string value.
122
+ * @returns Parsed integer or `null`.
123
+ */
124
+ function parseNullableVpsSelfUpdateInteger(value: string | undefined): number | null {
125
+ if (!value) {
126
+ return null;
127
+ }
128
+
129
+ const parsedValue = Number.parseInt(value, 10);
130
+ return Number.isFinite(parsedValue) ? parsedValue : null;
131
+ }
132
+
133
+ /**
134
+ * Type guard for persisted job statuses.
135
+ *
136
+ * @param value - Raw status value.
137
+ * @returns `true` when supported.
138
+ */
139
+ function isVpsSelfUpdateJobStatus(value: string | undefined): value is VpsSelfUpdateJobStatus {
140
+ return value === 'idle' || value === 'running' || value === 'succeeded' || value === 'failed';
141
+ }
142
+
143
+ /**
144
+ * Type guard for persisted job triggers.
145
+ *
146
+ * @param value - Raw trigger value.
147
+ * @returns `true` when supported.
148
+ */
149
+ function isVpsSelfUpdateJobTrigger(value: string | undefined): value is VpsSelfUpdateJobTrigger {
150
+ return value === 'manual' || value === 'automatic';
151
+ }
152
+
153
+ /**
154
+ * Parses database migration status and summary fields from the shell-owned update status file.
155
+ *
156
+ * @param statusEntries - Parsed status-file fields.
157
+ * @param jobStatus - Persisted self-update job status.
158
+ * @returns Browser-safe database migration snapshot.
159
+ */
160
+ function parseVpsSelfUpdateDatabaseMigrationSnapshot(
161
+ statusEntries: ReadonlyMap<string, string>,
162
+ jobStatus: VpsSelfUpdateJobStatus,
163
+ ): VpsSelfUpdateDatabaseMigrationSnapshot {
164
+ const rawStatus = statusEntries.get('DATABASE_MIGRATION_STATUS');
165
+ const summaryFilePath = statusEntries.get('DATABASE_MIGRATION_SUMMARY_FILE') || null;
166
+ const errorMessage = decodeVpsSelfUpdateStatusField(statusEntries.get('DATABASE_MIGRATION_ERROR_MESSAGE_B64'));
167
+ const summary = parseVpsSelfUpdateDatabaseMigrationSummary(
168
+ decodeVpsSelfUpdateStatusField(statusEntries.get('DATABASE_MIGRATION_SUMMARY_B64')),
169
+ );
170
+
171
+ return {
172
+ status: isVpsSelfUpdateDatabaseMigrationStatus(rawStatus)
173
+ ? rawStatus
174
+ : resolveMissingVpsSelfUpdateDatabaseMigrationStatus(jobStatus),
175
+ ...summary,
176
+ errorMessage,
177
+ summaryFilePath,
178
+ };
179
+ }
180
+
181
+ /**
182
+ * Parses the machine-readable migration summary produced by the migration CLI.
183
+ *
184
+ * @param rawSummary - JSON summary string from `PTBK_DATABASE_MIGRATION_SUMMARY_FILE`.
185
+ * @returns Normalized migration summary fields.
186
+ */
187
+ function parseVpsSelfUpdateDatabaseMigrationSummary(
188
+ rawSummary: string | null,
189
+ ): Pick<
190
+ VpsSelfUpdateDatabaseMigrationSnapshot,
191
+ 'processedPrefixes' | 'totalMigrationFiles' | 'perPrefix' | 'isSkippedDueToActiveMigrationLock'
192
+ > {
193
+ if (!rawSummary) {
194
+ return createEmptyVpsSelfUpdateDatabaseMigrationSummary();
195
+ }
196
+
197
+ try {
198
+ const parsedSummary = JSON.parse(rawSummary) as unknown;
199
+ if (!isRecord(parsedSummary)) {
200
+ return createEmptyVpsSelfUpdateDatabaseMigrationSummary();
201
+ }
202
+
203
+ return {
204
+ processedPrefixes: parseStringArray(parsedSummary.processedPrefixes),
205
+ totalMigrationFiles: parseNullableNonNegativeInteger(parsedSummary.totalMigrationFiles),
206
+ perPrefix: parseVpsSelfUpdateDatabaseMigrationPrefixSummaries(parsedSummary.perPrefix),
207
+ isSkippedDueToActiveMigrationLock:
208
+ typeof parsedSummary.isSkippedDueToActiveMigrationLock === 'boolean'
209
+ ? parsedSummary.isSkippedDueToActiveMigrationLock
210
+ : null,
211
+ };
212
+ } catch {
213
+ return createEmptyVpsSelfUpdateDatabaseMigrationSummary();
214
+ }
215
+ }
216
+
217
+ /**
218
+ * Creates empty migration summary values for jobs without recorded migration details.
219
+ *
220
+ * @returns Empty database migration summary.
221
+ */
222
+ function createEmptyVpsSelfUpdateDatabaseMigrationSummary(): Pick<
223
+ VpsSelfUpdateDatabaseMigrationSnapshot,
224
+ 'processedPrefixes' | 'totalMigrationFiles' | 'perPrefix' | 'isSkippedDueToActiveMigrationLock'
225
+ > {
226
+ return {
227
+ processedPrefixes: [],
228
+ totalMigrationFiles: null,
229
+ perPrefix: [],
230
+ isSkippedDueToActiveMigrationLock: null,
231
+ };
232
+ }
233
+
234
+ /**
235
+ * Resolves the migration status used when older status files do not contain migration fields.
236
+ *
237
+ * @param jobStatus - Persisted self-update job status.
238
+ * @returns Migration status fallback.
239
+ */
240
+ function resolveMissingVpsSelfUpdateDatabaseMigrationStatus(
241
+ jobStatus: VpsSelfUpdateJobStatus,
242
+ ): VpsSelfUpdateDatabaseMigrationStatus {
243
+ return jobStatus === 'idle' ? 'pending' : 'unknown';
244
+ }
245
+
246
+ /**
247
+ * Type guard for persisted database migration statuses.
248
+ *
249
+ * @param value - Raw status value.
250
+ * @returns `true` when supported.
251
+ */
252
+ function isVpsSelfUpdateDatabaseMigrationStatus(
253
+ value: string | undefined,
254
+ ): value is VpsSelfUpdateDatabaseMigrationStatus {
255
+ return value !== undefined && VPS_SELF_UPDATE_DATABASE_MIGRATION_STATUSES.has(value as VpsSelfUpdateDatabaseMigrationStatus);
256
+ }
257
+
258
+ /**
259
+ * Parses per-prefix migration summaries from untrusted JSON.
260
+ *
261
+ * @param value - Raw per-prefix JSON value.
262
+ * @returns Normalized per-prefix summaries.
263
+ */
264
+ function parseVpsSelfUpdateDatabaseMigrationPrefixSummaries(
265
+ value: unknown,
266
+ ): VpsSelfUpdateDatabaseMigrationSnapshot['perPrefix'] {
267
+ if (!Array.isArray(value)) {
268
+ return [];
269
+ }
270
+
271
+ return value.filter(isRecord).map((prefixSummary) => ({
272
+ prefix: typeof prefixSummary.prefix === 'string' ? prefixSummary.prefix : '',
273
+ appliedCount: parseNullableNonNegativeInteger(prefixSummary.appliedCount) ?? 0,
274
+ appliedMigrationFiles: parseStringArray(prefixSummary.appliedMigrationFiles),
275
+ }));
276
+ }
277
+
278
+ /**
279
+ * Parses an array of strings from untrusted JSON.
280
+ *
281
+ * @param value - Raw JSON value.
282
+ * @returns String array.
283
+ */
284
+ function parseStringArray(value: unknown): Array<string> {
285
+ if (!Array.isArray(value)) {
286
+ return [];
287
+ }
288
+
289
+ return value.filter((item): item is string => typeof item === 'string');
290
+ }
291
+
292
+ /**
293
+ * Parses a non-negative integer from untrusted JSON.
294
+ *
295
+ * @param value - Raw JSON value.
296
+ * @returns Parsed integer or `null`.
297
+ */
298
+ function parseNullableNonNegativeInteger(value: unknown): number | null {
299
+ return typeof value === 'number' && Number.isInteger(value) && value >= 0 ? value : null;
300
+ }
301
+
302
+ /**
303
+ * Checks whether a raw JSON value is a record.
304
+ *
305
+ * @param value - Raw JSON value.
306
+ * @returns `true` when the value is a non-array object.
307
+ */
308
+ function isRecord(value: unknown): value is Record<string, unknown> {
309
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
310
+ }
@@ -0,0 +1,178 @@
1
+ import { resolveVpsInstallerScriptPath } from '../vpsConfiguration';
2
+ import {
3
+ readCurrentVpsSelfUpdateEnvironment,
4
+ resolveManagedPromptbookRepositoryDirectory,
5
+ } from './vpsSelfUpdateConfiguration';
6
+ import { readVpsSelfUpdateAutomaticConfiguration } from './vpsSelfUpdateAutomaticConfiguration';
7
+ import { VPS_SELF_UPDATE_ENVIRONMENTS, type VpsSelfUpdateEnvironmentOption } from './vpsSelfUpdateEnvironment';
8
+ import {
9
+ readConfiguredVpsSelfUpdateOriginRepositoryUrl,
10
+ VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
11
+ } from './vpsSelfUpdateOriginRepository';
12
+ import { readPersistedVpsSelfUpdateJob } from './readPersistedVpsSelfUpdateJob';
13
+ import { resolveVpsSelfUpdateJobForOverview } from './resolveVpsSelfUpdateJobForOverview';
14
+ import {
15
+ listVpsSelfUpdateInstalledVersions,
16
+ readAgentsServerGcKeepVersionsCount,
17
+ } from './vpsSelfUpdateInstalledVersions';
18
+ import {
19
+ abbreviateCommitSha,
20
+ countCommitsBetween,
21
+ listCommitsBetween,
22
+ readCommitMetadataFromRepository,
23
+ readLatestRemoteBranchCommitSha,
24
+ refreshVpsSelfUpdateRemoteBranch,
25
+ } from './vpsSelfUpdateRepository';
26
+ import type { VpsSelfUpdateJobSnapshot, VpsSelfUpdateOverview } from './vpsSelfUpdateTypes';
27
+
28
+ /**
29
+ * Reads the current standalone VPS self-update overview.
30
+ *
31
+ * @returns Browser-safe update summary for the super-admin UI.
32
+ *
33
+ * @private function of `vpsSelfUpdate`
34
+ */
35
+ export async function readVpsSelfUpdateOverview(): Promise<VpsSelfUpdateOverview> {
36
+ const currentEnvironment = await readCurrentVpsSelfUpdateEnvironment();
37
+ const repositoryDirectory = await resolveManagedPromptbookRepositoryDirectory();
38
+ const scriptPath = await resolveVpsInstallerScriptPath();
39
+ const job = await readPersistedVpsSelfUpdateJob();
40
+ const originRepositoryUrl = await readConfiguredVpsSelfUpdateOriginRepositoryUrl();
41
+ const automaticConfiguration = await readVpsSelfUpdateAutomaticConfiguration();
42
+ const installedVersions = await listVpsSelfUpdateInstalledVersions();
43
+ const garbageCollectionKeepVersionsCount = await readAgentsServerGcKeepVersionsCount();
44
+
45
+ if (process.platform !== 'linux') {
46
+ return createUnavailableOverview({
47
+ currentEnvironment,
48
+ repositoryDirectory,
49
+ job,
50
+ originRepositoryUrl,
51
+ automaticConfiguration,
52
+ installedVersions,
53
+ garbageCollectionKeepVersionsCount,
54
+ unavailableReason: 'Self-update is available only on the standalone Linux VPS deployment.',
55
+ });
56
+ }
57
+
58
+ if (!scriptPath) {
59
+ return createUnavailableOverview({
60
+ currentEnvironment,
61
+ repositoryDirectory,
62
+ job,
63
+ originRepositoryUrl,
64
+ automaticConfiguration,
65
+ installedVersions,
66
+ garbageCollectionKeepVersionsCount,
67
+ unavailableReason: 'The shared VPS installer script could not be found on this server.',
68
+ });
69
+ }
70
+
71
+ if (!repositoryDirectory) {
72
+ return createUnavailableOverview({
73
+ currentEnvironment,
74
+ repositoryDirectory: null,
75
+ job,
76
+ originRepositoryUrl,
77
+ automaticConfiguration,
78
+ installedVersions,
79
+ garbageCollectionKeepVersionsCount,
80
+ unavailableReason: 'The managed Promptbook repository directory is not configured on this server.',
81
+ });
82
+ }
83
+
84
+ await refreshVpsSelfUpdateRemoteBranch(repositoryDirectory, currentEnvironment.branch, originRepositoryUrl);
85
+
86
+ const [currentCommit, latestRemoteCommitSha] = await Promise.all([
87
+ readCommitMetadataFromRepository(repositoryDirectory, 'HEAD'),
88
+ readLatestRemoteBranchCommitSha(repositoryDirectory, currentEnvironment.branch, originRepositoryUrl),
89
+ ]);
90
+ const latestRemoteCommit = latestRemoteCommitSha
91
+ ? await readCommitMetadataFromRepository(repositoryDirectory, latestRemoteCommitSha)
92
+ : null;
93
+ const currentCommitSha = currentCommit?.commitSha ?? null;
94
+ const latestRemoteCommitResolvedSha = latestRemoteCommit?.commitSha ?? latestRemoteCommitSha;
95
+ const commitsBehindCount =
96
+ currentCommitSha && latestRemoteCommitResolvedSha
97
+ ? await countCommitsBetween(repositoryDirectory, currentCommitSha, latestRemoteCommitResolvedSha)
98
+ : null;
99
+ const pendingCommits =
100
+ currentCommitSha && latestRemoteCommitResolvedSha
101
+ ? await listCommitsBetween(repositoryDirectory, currentCommitSha, latestRemoteCommitResolvedSha)
102
+ : [];
103
+ const resolvedJob = resolveVpsSelfUpdateJobForOverview(job, {
104
+ currentEnvironment,
105
+ currentCommitSha,
106
+ });
107
+
108
+ return {
109
+ isAvailable: Boolean(currentCommitSha),
110
+ unavailableReason: currentCommitSha ? null : 'The managed Promptbook repository checkout is not available.',
111
+ environments: VPS_SELF_UPDATE_ENVIRONMENTS,
112
+ currentEnvironment,
113
+ repositoryDirectory,
114
+ currentCommitSha,
115
+ currentCommitShortSha: abbreviateCommitSha(currentCommitSha),
116
+ currentCommitMessage: currentCommit?.subject ?? null,
117
+ currentCommitDate: currentCommit?.authoredAt ?? null,
118
+ latestRemoteCommitSha: latestRemoteCommitResolvedSha,
119
+ latestRemoteCommitShortSha: abbreviateCommitSha(latestRemoteCommitResolvedSha),
120
+ latestRemoteCommitDate: latestRemoteCommit?.authoredAt ?? null,
121
+ latestRemoteCommitMessage: latestRemoteCommit?.subject ?? null,
122
+ commitsBehindCount,
123
+ pendingCommits,
124
+ isUpdateAvailable: Boolean(
125
+ currentCommitSha && latestRemoteCommitResolvedSha && currentCommitSha !== latestRemoteCommitResolvedSha,
126
+ ),
127
+ originRepositoryUrl,
128
+ isOriginRepositoryDefault: originRepositoryUrl === VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
129
+ defaultOriginRepositoryUrl: VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
130
+ automaticConfiguration,
131
+ installedVersions,
132
+ garbageCollectionKeepVersionsCount,
133
+ job: resolvedJob,
134
+ };
135
+ }
136
+
137
+ /**
138
+ * Builds the placeholder overview used when self-update is unavailable on the host.
139
+ *
140
+ * @param context - Fields shared across every unavailable-overview branch.
141
+ * @returns Browser-safe placeholder overview.
142
+ */
143
+ function createUnavailableOverview(context: {
144
+ readonly currentEnvironment: VpsSelfUpdateEnvironmentOption;
145
+ readonly repositoryDirectory: string | null;
146
+ readonly job: VpsSelfUpdateJobSnapshot;
147
+ readonly originRepositoryUrl: string;
148
+ readonly automaticConfiguration: VpsSelfUpdateOverview['automaticConfiguration'];
149
+ readonly installedVersions: VpsSelfUpdateOverview['installedVersions'];
150
+ readonly garbageCollectionKeepVersionsCount: number;
151
+ readonly unavailableReason: string;
152
+ }): VpsSelfUpdateOverview {
153
+ return {
154
+ isAvailable: false,
155
+ unavailableReason: context.unavailableReason,
156
+ environments: VPS_SELF_UPDATE_ENVIRONMENTS,
157
+ currentEnvironment: context.currentEnvironment,
158
+ repositoryDirectory: context.repositoryDirectory,
159
+ currentCommitSha: null,
160
+ currentCommitShortSha: null,
161
+ currentCommitMessage: null,
162
+ currentCommitDate: null,
163
+ latestRemoteCommitSha: null,
164
+ latestRemoteCommitShortSha: null,
165
+ latestRemoteCommitDate: null,
166
+ latestRemoteCommitMessage: null,
167
+ commitsBehindCount: null,
168
+ pendingCommits: [],
169
+ isUpdateAvailable: false,
170
+ originRepositoryUrl: context.originRepositoryUrl,
171
+ isOriginRepositoryDefault: context.originRepositoryUrl === VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
172
+ defaultOriginRepositoryUrl: VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
173
+ automaticConfiguration: context.automaticConfiguration,
174
+ installedVersions: context.installedVersions,
175
+ garbageCollectionKeepVersionsCount: context.garbageCollectionKeepVersionsCount,
176
+ job: context.job,
177
+ };
178
+ }