@taskforcehq/taskforce 0.3.305 → 0.3.307

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 (440) hide show
  1. package/README.md +0 -2
  2. package/dist/Taskforce.module.css +603 -107
  3. package/dist/TaskforceCore.js +216 -43
  4. package/dist/TaskforceCore.test.js +611 -28
  5. package/dist/assets/fonts/CourierPrime-Bold.woff2 +0 -0
  6. package/dist/assets/fonts/CourierPrime-BoldItalic.woff2 +0 -0
  7. package/dist/assets/fonts/CourierPrime-Italic.woff2 +0 -0
  8. package/dist/assets/fonts/CourierPrime-Regular.woff2 +0 -0
  9. package/dist/assets/fonts/Noir_medium.woff2 +0 -0
  10. package/dist/assets/fonts/Noir_regular.woff2 +0 -0
  11. package/dist/assets/fonts/RussoOne-Regular.woff2 +0 -0
  12. package/dist/assets/fonts/SpecialElite-Regular.woff2 +0 -0
  13. package/dist/compat/workspaceSyncCompat.js +46 -2
  14. package/dist/compat/workspaceSyncCompat.test.js +38 -1
  15. package/dist/components/activity/EntityActivityTimeline.d.ts +34 -0
  16. package/dist/components/activity/EntityActivityTimeline.js +81 -0
  17. package/dist/components/context/ContextAttachmentManager.d.ts +14 -0
  18. package/dist/components/context/ContextAttachmentManager.js +561 -0
  19. package/dist/components/features/AgentsModule.d.ts +14 -1
  20. package/dist/components/features/AgentsModule.js +366 -18
  21. package/dist/components/features/AgentsModule.test.js +507 -8
  22. package/dist/components/features/AnnotatedAttachmentWorkspace.d.ts +3 -1
  23. package/dist/components/features/AnnotatedAttachmentWorkspace.js +118 -4
  24. package/dist/components/features/AnnotatedAttachmentWorkspace.test.js +52 -0
  25. package/dist/components/features/DocumentIndex.d.ts +2 -2
  26. package/dist/components/features/DocumentIndex.js +3 -4
  27. package/dist/components/features/DocumentViewer.d.ts +7 -1
  28. package/dist/components/features/DocumentViewer.js +62 -4
  29. package/dist/components/features/DocumentWorkspace.d.ts +10 -2
  30. package/dist/components/features/DocumentWorkspace.js +15 -4
  31. package/dist/components/features/DocumentWorkspace.test.js +51 -1
  32. package/dist/components/features/TaskSettings.d.ts +2 -0
  33. package/dist/components/features/TaskSettings.js +83 -78
  34. package/dist/components/features/TaskSettings.test.js +171 -82
  35. package/dist/components/features/documentWorkspaceModel.d.ts +1 -1
  36. package/dist/components/task/TaskActionHeader.js +11 -5
  37. package/dist/components/task/TaskActionHeader.test.js +10 -0
  38. package/dist/components/task/TaskCard.js +24 -29
  39. package/dist/components/task/TaskCard.test.js +38 -3
  40. package/dist/components/task/TaskContextUpload.js +4 -526
  41. package/dist/components/task/TaskContextUpload.test.js +3 -3
  42. package/dist/components/task/TaskForm.js +61 -116
  43. package/dist/components/task/TaskForm.test.js +110 -8
  44. package/dist/components/task/TaskKanban.d.ts +2 -1
  45. package/dist/components/task/TaskKanban.js +94 -21
  46. package/dist/components/task/TaskKanban.test.js +36 -0
  47. package/dist/components/task/TaskList.js +5 -1
  48. package/dist/components/task/TaskList.test.js +4 -0
  49. package/dist/components/ui/EditableAvatarButton.d.ts +18 -0
  50. package/dist/components/ui/EditableAvatarButton.js +18 -0
  51. package/dist/components/ui/HierarchyActionBadge.d.ts +10 -0
  52. package/dist/components/ui/HierarchyActionBadge.js +5 -0
  53. package/dist/components/views/AppShellHeader.d.ts +3 -1
  54. package/dist/components/views/AppShellHeader.js +27 -11
  55. package/dist/components/views/AppShellHeader.test.js +18 -1
  56. package/dist/components/views/PlanComparisonPage.d.ts +9 -1
  57. package/dist/components/views/PlanComparisonPage.js +78 -14
  58. package/dist/components/views/PlanComparisonPage.test.js +257 -0
  59. package/dist/components/views/PlansPage.js +127 -36
  60. package/dist/components/views/PlansPage.test.js +294 -12
  61. package/dist/components/views/StandaloneLayout.js +529 -592
  62. package/dist/components/views/WidgetView.js +10 -8
  63. package/dist/components/views/panels/PlanningDrawer.d.ts +25 -5
  64. package/dist/components/views/panels/PlanningDrawer.js +270 -55
  65. package/dist/components/views/panels/PlanningDrawer.test.d.ts +1 -0
  66. package/dist/components/views/panels/PlanningDrawer.test.js +529 -0
  67. package/dist/components/views/planningScope.d.ts +20 -0
  68. package/dist/components/views/planningScope.js +25 -0
  69. package/dist/components/views/planningScope.test.d.ts +1 -0
  70. package/dist/components/views/planningScope.test.js +60 -0
  71. package/dist/components/views/standalone/modals/AccountHubModal.d.ts +26 -1
  72. package/dist/components/views/standalone/modals/AccountHubModal.js +76 -2
  73. package/dist/components/views/standalone/modals/AccountHubModal.test.js +20 -3
  74. package/dist/components/views/standalone/modals/AvatarImageManagerModal.d.ts +20 -0
  75. package/dist/components/views/standalone/modals/AvatarImageManagerModal.js +127 -0
  76. package/dist/components/views/standalone/modals/EditProfileModal.d.ts +2 -9
  77. package/dist/components/views/standalone/modals/EditProfileModal.js +3 -2
  78. package/dist/components/views/standalone/modals/SyncEnableWarningModal.d.ts +9 -0
  79. package/dist/components/views/standalone/modals/SyncEnableWarningModal.js +6 -0
  80. package/dist/components/views/standalone/modals/SyncEnableWarningModal.test.d.ts +1 -0
  81. package/dist/components/views/standalone/modals/SyncEnableWarningModal.test.js +24 -0
  82. package/dist/components/views/standalone/modals/SyncStatusModal.d.ts +2 -1
  83. package/dist/components/views/standalone/modals/SyncStatusModal.js +2 -2
  84. package/dist/config/envSchema.js +1 -0
  85. package/dist/core/AiProfileService.d.ts +46 -2
  86. package/dist/core/AiProfileService.js +1073 -82
  87. package/dist/core/AiProfileService.test.js +19 -1
  88. package/dist/core/AiProfiles.test.js +1249 -44
  89. package/dist/core/AttachmentLinkService.d.ts +3 -0
  90. package/dist/core/AttachmentLinkService.js +110 -23
  91. package/dist/core/AuthIdentityService.d.ts +107 -0
  92. package/dist/core/AuthIdentityService.js +284 -0
  93. package/dist/core/AuthTokenService.d.ts +4 -0
  94. package/dist/core/AuthTokenService.js +34 -6
  95. package/dist/core/AuthTokenService.test.js +3 -3
  96. package/dist/core/EntitlementsPolicy.test.js +2 -2
  97. package/dist/core/GlobalSettingsService.js +127 -6
  98. package/dist/core/McpTokenService.d.ts +12 -0
  99. package/dist/core/McpTokenService.js +44 -1
  100. package/dist/core/PlanEntitlementService.d.ts +23 -2
  101. package/dist/core/PlanEntitlementService.js +343 -57
  102. package/dist/core/PlanFeatureCatalog.test.d.ts +1 -0
  103. package/dist/core/PlanFeatureCatalog.test.js +84 -0
  104. package/dist/core/PlanVersionPolicy.test.js +35 -2
  105. package/dist/core/PlanningEntities.test.js +418 -4
  106. package/dist/core/SignupMonetizationSettings.test.js +199 -27
  107. package/dist/core/SyncReconciliationService.js +2 -65
  108. package/dist/core/SystemAdmin.test.js +42 -42
  109. package/dist/core/TaskActivityService.d.ts +28 -1
  110. package/dist/core/TaskActivityService.js +227 -46
  111. package/dist/core/TaskActivitySync.test.d.ts +1 -0
  112. package/dist/core/TaskActivitySync.test.js +90 -0
  113. package/dist/core/TaskAttachmentsCanonical.test.js +51 -1
  114. package/dist/core/TaskAuditTimeline.test.js +96 -0
  115. package/dist/core/Taskforce.d.ts +415 -40
  116. package/dist/core/Taskforce.ids.test.js +58 -0
  117. package/dist/core/Taskforce.js +1543 -266
  118. package/dist/core/Taskforce.listTasksSlim.test.d.ts +1 -0
  119. package/dist/core/Taskforce.listTasksSlim.test.js +91 -0
  120. package/dist/core/Taskforce.mcpAuth.test.js +109 -0
  121. package/dist/core/UserProfileAvatarDrafts.test.js +30 -3
  122. package/dist/core/WorkspaceLifecycleService.js +0 -5
  123. package/dist/core/WorkspacePermissions.test.js +25 -1
  124. package/dist/core/WorkspacePlanMode.test.js +117 -16
  125. package/dist/core/shared.d.ts +1 -1
  126. package/dist/core/shared.js +5 -1
  127. package/dist/core/types.d.ts +75 -2
  128. package/dist/hooks/auth/useTaskforceAuthBootstrap.js +28 -2
  129. package/dist/hooks/bootstrapTimeouts.d.ts +4 -0
  130. package/dist/hooks/bootstrapTimeouts.js +8 -0
  131. package/dist/hooks/bootstrapTimeouts.test.d.ts +1 -0
  132. package/dist/hooks/bootstrapTimeouts.test.js +12 -0
  133. package/dist/hooks/sync/bootstrap.js +2 -0
  134. package/dist/hooks/sync/controlPlane.d.ts +37 -0
  135. package/dist/hooks/sync/controlPlane.js +78 -0
  136. package/dist/hooks/sync/controlPlane.test.d.ts +1 -0
  137. package/dist/hooks/sync/controlPlane.test.js +121 -0
  138. package/dist/hooks/sync/lifecyclePolicy.d.ts +45 -0
  139. package/dist/hooks/sync/lifecyclePolicy.js +93 -0
  140. package/dist/hooks/sync/lifecyclePolicy.test.d.ts +1 -0
  141. package/dist/hooks/sync/lifecyclePolicy.test.js +124 -0
  142. package/dist/hooks/sync/orchestratorShared.d.ts +13 -4
  143. package/dist/hooks/sync/orchestratorShared.js +129 -48
  144. package/dist/hooks/sync/orchestratorShared.test.js +50 -1
  145. package/dist/hooks/sync/pullLifecycle.d.ts +31 -0
  146. package/dist/hooks/sync/pullLifecycle.js +24 -0
  147. package/dist/hooks/sync/pullLifecycle.test.d.ts +1 -0
  148. package/dist/hooks/sync/pullLifecycle.test.js +80 -0
  149. package/dist/hooks/sync/recovery.d.ts +16 -2
  150. package/dist/hooks/sync/recovery.js +179 -53
  151. package/dist/hooks/sync/recovery.test.d.ts +1 -0
  152. package/dist/hooks/sync/recovery.test.js +292 -0
  153. package/dist/hooks/sync/transfers.d.ts +16 -3
  154. package/dist/hooks/sync/transfers.js +210 -66
  155. package/dist/hooks/sync/transfers.test.d.ts +1 -0
  156. package/dist/hooks/sync/transfers.test.js +928 -0
  157. package/dist/hooks/sync/useRecentSyncEvents.d.ts +21 -0
  158. package/dist/hooks/sync/useRecentSyncEvents.js +92 -0
  159. package/dist/hooks/sync/useRecentSyncEvents.test.d.ts +1 -0
  160. package/dist/hooks/sync/useRecentSyncEvents.test.js +124 -0
  161. package/dist/hooks/sync/useSyncStatusActions.d.ts +30 -0
  162. package/dist/hooks/sync/useSyncStatusActions.js +88 -0
  163. package/dist/hooks/sync/useSyncStatusActions.test.d.ts +1 -0
  164. package/dist/hooks/sync/useSyncStatusActions.test.js +133 -0
  165. package/dist/hooks/sync/useSyncStatusControls.d.ts +25 -0
  166. package/dist/hooks/sync/useSyncStatusControls.js +60 -0
  167. package/dist/hooks/sync/useSyncStatusControls.test.d.ts +1 -0
  168. package/dist/hooks/sync/useSyncStatusControls.test.js +88 -0
  169. package/dist/hooks/useFilterSort.js +13 -13
  170. package/dist/hooks/useFilterSort.test.js +87 -1
  171. package/dist/hooks/useSyncOrchestrator.aiProfiles.test.js +12 -0
  172. package/dist/hooks/useSyncOrchestrator.d.ts +9 -2
  173. package/dist/hooks/useSyncOrchestrator.js +409 -183
  174. package/dist/hooks/useSyncOrchestrator.retry-closure.test.js +407 -0
  175. package/dist/hooks/useTaskData.js +8 -3
  176. package/dist/hooks/useTaskData.test.js +45 -0
  177. package/dist/hooks/useTaskforce.d.ts +145 -52
  178. package/dist/hooks/useTaskforce.js +592 -253
  179. package/dist/hooks/useTaskforce.runtime-routing.test.d.ts +1 -0
  180. package/dist/hooks/useTaskforce.runtime-routing.test.js +246 -0
  181. package/dist/hooks/useTaskforce.sync-behavior.test.js +2468 -201
  182. package/dist/hooks/useWorkspaceSyncController.d.ts +1 -0
  183. package/dist/hooks/useWorkspaceSyncController.js +13 -2
  184. package/dist/hooks/useWorkspaceSyncController.test.js +48 -0
  185. package/dist/hooks/workspace/useTaskforceWorkspaceBootstrap.d.ts +16 -0
  186. package/dist/hooks/workspace/useTaskforceWorkspaceBootstrap.js +328 -40
  187. package/dist/localization/locales/en-US.d.ts +0 -1
  188. package/dist/localization/locales/en-US.js +0 -1
  189. package/dist/localization/locales/es-419.js +0 -1
  190. package/dist/localization/locales/pt-BR.js +0 -1
  191. package/dist/mcp/canonicalAssetHelpers.d.ts +16 -4
  192. package/dist/mcp/canonicalAssetHelpers.js +18 -10
  193. package/dist/mcp/canonicalAssetHelpers.test.d.ts +1 -0
  194. package/dist/mcp/canonicalAssetHelpers.test.js +67 -0
  195. package/dist/mcp/clientIntegrations.d.ts +1 -0
  196. package/dist/mcp/clientIntegrations.js +25 -0
  197. package/dist/mcp/clientIntegrations.test.js +14 -3
  198. package/dist/mcp/clientProfileDefaults.js +3 -3
  199. package/dist/mcp/collaborationRegistrar.js +7 -7
  200. package/dist/mcp/documentAssetRegistrar.js +116 -10
  201. package/dist/mcp/runtime.d.ts +3 -0
  202. package/dist/mcp/runtime.js +1099 -185
  203. package/dist/mcp/runtime.test.js +1491 -140
  204. package/dist/mcp/taskAttachmentTypes.d.ts +1 -1
  205. package/dist/mcp/taskPlanningRegistrar.js +48 -0
  206. package/dist/mcp/toolRegistry.d.ts +56 -0
  207. package/dist/mcp/toolRegistry.js +8 -0
  208. package/dist/mcp/toolRegistry.test.js +4 -0
  209. package/dist/migrations/taskSchemaMigrations.d.ts +1 -1
  210. package/dist/migrations/taskSchemaMigrations.js +192 -61
  211. package/dist/migrations/taskSchemaMigrations.test.js +15 -0
  212. package/dist/resources/templates/workflow-sources/workflowDocs.mjs +6 -6
  213. package/dist/resources/templates/workflows/collaborate.yaml +1 -1
  214. package/dist/resources/templates/workflows/evaluate.yaml +2 -2
  215. package/dist/resources/templates/workflows/plan.yaml +1 -1
  216. package/dist/resources/templates/workflows/review.yaml +2 -2
  217. package/dist/server/aiProfileAvatarAssets.d.ts +49 -0
  218. package/dist/server/aiProfileAvatarAssets.js +319 -0
  219. package/dist/server/aiProfileAvatarAssets.test.d.ts +1 -0
  220. package/dist/server/aiProfileAvatarAssets.test.js +213 -0
  221. package/dist/server/annotatedAttachmentsRoutes.test.js +69 -10
  222. package/dist/server/auth/providers/apple.d.ts +33 -0
  223. package/dist/server/auth/providers/apple.js +82 -0
  224. package/dist/server/auth/providers/appleClientSecret.d.ts +37 -0
  225. package/dist/server/auth/providers/appleClientSecret.js +65 -0
  226. package/dist/server/auth/providers/github.d.ts +26 -0
  227. package/dist/server/auth/providers/github.js +86 -0
  228. package/dist/server/auth/providers/google.d.ts +21 -0
  229. package/dist/server/auth/providers/google.js +56 -0
  230. package/dist/server/auth/providers/types.d.ts +21 -0
  231. package/dist/server/auth/providers/types.js +1 -0
  232. package/dist/server/auth.d.ts +2 -0
  233. package/dist/server/auth.js +6 -3
  234. package/dist/server/documentReviewRoutes.test.js +36 -3
  235. package/dist/server/index.cookieProxy.test.js +1 -0
  236. package/dist/server/index.d.ts +12 -0
  237. package/dist/server/index.js +124 -9
  238. package/dist/server/index.rateLimit.test.js +3 -0
  239. package/dist/server/index.test.js +111 -3
  240. package/dist/server/routes/admin.d.ts +3 -0
  241. package/dist/server/routes/admin.js +459 -28
  242. package/dist/server/routes/annotatedAttachments.js +51 -0
  243. package/dist/server/routes/auth.d.ts +26 -2
  244. package/dist/server/routes/auth.js +1170 -71
  245. package/dist/server/routes/authSupport.d.ts +5 -1
  246. package/dist/server/routes/authSupport.js +13 -2
  247. package/dist/server/routes/billing.js +372 -35
  248. package/dist/server/routes/billing.test.js +595 -12
  249. package/dist/server/routes/documents.d.ts +1 -0
  250. package/dist/server/routes/documents.js +182 -70
  251. package/dist/server/routes/shared.d.ts +28 -2
  252. package/dist/server/routes/shared.js +69 -14
  253. package/dist/server/routes/sync.integration.test.js +658 -39
  254. package/dist/server/routes/sync.js +74 -608
  255. package/dist/server/routes/syncAuxRoutes.d.ts +15 -0
  256. package/dist/server/routes/syncAuxRoutes.js +91 -0
  257. package/dist/server/routes/syncAuxRoutes.test.d.ts +1 -0
  258. package/dist/server/routes/syncAuxRoutes.test.js +158 -0
  259. package/dist/server/routes/syncPullApplyRoutes.d.ts +36 -0
  260. package/dist/server/routes/syncPullApplyRoutes.js +204 -0
  261. package/dist/server/routes/syncPushRoutes.d.ts +24 -0
  262. package/dist/server/routes/syncPushRoutes.js +212 -0
  263. package/dist/server/routes/syncRouteGuards.d.ts +36 -0
  264. package/dist/server/routes/syncRouteGuards.js +67 -0
  265. package/dist/server/routes/syncRouteGuards.test.d.ts +1 -0
  266. package/dist/server/routes/syncRouteGuards.test.js +94 -0
  267. package/dist/server/routes/syncRouteTypes.d.ts +13 -0
  268. package/dist/server/routes/syncRouteTypes.js +1 -0
  269. package/dist/server/routes/syncSnapshotRoutes.d.ts +66 -0
  270. package/dist/server/routes/syncSnapshotRoutes.js +182 -0
  271. package/dist/server/routes/tasks.js +55 -10
  272. package/dist/server/routes/workspaces.js +36 -5
  273. package/dist/server/routes.js +147 -11
  274. package/dist/server/routes.test.js +2704 -183
  275. package/dist/services/workflowExportSnapshots.test.js +2 -0
  276. package/dist/shared/aiProfileSeatScope.d.ts +5 -0
  277. package/dist/shared/aiProfileSeatScope.js +21 -0
  278. package/dist/shared/aiProfileSurfaceType.d.ts +1 -1
  279. package/dist/shared/aiProfileSurfaceType.js +10 -8
  280. package/dist/shared/passwordPolicy.d.ts +13 -0
  281. package/dist/shared/passwordPolicy.js +84 -0
  282. package/dist/shared/passwordPolicy.test.d.ts +1 -0
  283. package/dist/shared/passwordPolicy.test.js +34 -0
  284. package/dist/storage/objectStorage.d.ts +1 -0
  285. package/dist/storage/objectStorage.js +2 -1
  286. package/dist/storage/objectStorageClient.d.ts +1 -0
  287. package/dist/storage/objectStorageClient.js +41 -8
  288. package/dist/storage/objectStorageClient.test.js +26 -1
  289. package/dist/storage/objectStorageConfig.js +3 -1
  290. package/dist/storage/objectStorageConfig.test.js +13 -1
  291. package/dist/storage/workspaceAssetStore.d.ts +15 -3
  292. package/dist/storage/workspaceAssetStore.js +132 -44
  293. package/dist/storage/workspaceAssetStore.test.js +93 -6
  294. package/dist/styles/fonts.css +70 -0
  295. package/dist/sync/collaborationSyncPayload.d.ts +6 -1
  296. package/dist/sync/collaborationSyncPayload.js +19 -11
  297. package/dist/sync/collaborationSyncPayload.test.js +14 -1
  298. package/dist/sync/collaborationSyncState.d.ts +3 -3
  299. package/dist/sync/collaborationSyncState.js +19 -12
  300. package/dist/sync/contentSyncPayload.d.ts +5 -1
  301. package/dist/sync/contentSyncPayload.js +9 -0
  302. package/dist/sync/contentSyncPayload.test.js +39 -0
  303. package/dist/sync/contentSyncState.d.ts +9 -9
  304. package/dist/sync/contentSyncState.js +248 -107
  305. package/dist/sync/planningSyncPayload.js +5 -0
  306. package/dist/sync/planningSyncPayload.test.js +24 -0
  307. package/dist/sync/syncApplyHandlers.d.ts +11 -4
  308. package/dist/sync/syncApplyHandlers.js +115 -42
  309. package/dist/sync/syncApplyHandlers.test.js +251 -4
  310. package/dist/sync/syncFieldSemantics.d.ts +12 -0
  311. package/dist/sync/syncFieldSemantics.js +55 -0
  312. package/dist/sync/syncResourceAdapters.d.ts +46 -0
  313. package/dist/sync/syncResourceAdapters.js +79 -0
  314. package/dist/sync/syncService.d.ts +6 -0
  315. package/dist/sync/syncService.js +65 -1
  316. package/dist/sync/syncService.test.js +96 -3
  317. package/dist/sync/taskSyncChangeKey.d.ts +2 -0
  318. package/dist/sync/taskSyncChangeKey.js +143 -0
  319. package/dist/sync/taskSyncPayload.js +3 -8
  320. package/dist/sync/workspacePullFeed.d.ts +4 -0
  321. package/dist/sync/workspacePullFeed.js +132 -72
  322. package/dist/sync/workspacePullFeed.test.js +92 -0
  323. package/dist/sync/workspaceRepair.js +5 -2
  324. package/dist/sync/workspaceSyncModel.d.ts +73 -6
  325. package/dist/sync/workspaceSyncModel.js +342 -73
  326. package/dist/sync/workspaceSyncModel.test.js +559 -14
  327. package/dist/sync/workspaceSyncState.d.ts +17 -0
  328. package/dist/sync/workspaceSyncState.js +2 -1
  329. package/dist/sync/workspaceSyncSurface.js +3 -8
  330. package/dist/types.d.ts +50 -2
  331. package/dist/ui/assets/AgentsModule-2y82_3DO.js +1 -0
  332. package/dist/ui/assets/AnnotatedAttachmentWorkspace-BTLZZCiQ.js +3 -0
  333. package/dist/ui/assets/AnnotatedAttachmentWorkspace-BVKew-mH.css +1 -0
  334. package/dist/ui/assets/ContextAttachmentManager-D2epuNnG.js +3 -0
  335. package/dist/ui/assets/CourierPrime-Bold-BuLj_dpw.woff2 +0 -0
  336. package/dist/ui/assets/CourierPrime-BoldItalic-BrK2pUkZ.woff2 +0 -0
  337. package/dist/ui/assets/CourierPrime-Italic-DFUZK5Ey.woff2 +0 -0
  338. package/dist/ui/assets/CourierPrime-Regular-BsKphzVf.woff2 +0 -0
  339. package/dist/ui/assets/DocumentWorkspace-D4rJKXzd.css +1 -0
  340. package/dist/ui/assets/DocumentWorkspace-sVa-3Do6.js +252 -0
  341. package/dist/ui/assets/EntityActivityTimeline-DyqvvhuF.css +1 -0
  342. package/dist/ui/assets/EntityActivityTimeline-Zods27y_.js +1 -0
  343. package/dist/ui/assets/{InitiativesModule-Dhm7M8e7.js → InitiativesModule-D4XseTwW.js} +1 -1
  344. package/dist/ui/assets/Noir_medium-bxQwKGzB.woff2 +0 -0
  345. package/dist/ui/assets/Noir_regular-ojf2kxlG.woff2 +0 -0
  346. package/dist/ui/assets/PlansPage-D5AcbO0L.js +1 -0
  347. package/dist/ui/assets/PlansPage-Dvqsz5zc.css +1 -0
  348. package/dist/ui/assets/RussoOne-Regular-Cu_qq_qC.woff2 +0 -0
  349. package/dist/ui/assets/SpecialElite-Regular-Di6gSvAS.woff2 +0 -0
  350. package/dist/ui/assets/TaskContextUpload-uC5qx4Bv.js +1 -0
  351. package/dist/ui/assets/TaskSettings-CqvPAsTv.js +9 -0
  352. package/dist/ui/assets/{WorkflowsModule-BcS4afRn.js → WorkflowsModule-oOA9bcdK.js} +4 -4
  353. package/dist/ui/assets/documentReferences-DPZuTgHh.js +1 -0
  354. package/dist/ui/assets/index-607WPo_X.js +4 -0
  355. package/dist/ui/assets/index-CYyodXsg.css +1 -0
  356. package/dist/ui/assets/{vendor-icons-BSUaRwF8.js → vendor-icons-B32hGuF2.js} +1 -1
  357. package/dist/ui/fonts/CourierPrime-Bold.ttf +0 -0
  358. package/dist/ui/fonts/CourierPrime-Bold.woff2 +0 -0
  359. package/dist/ui/fonts/CourierPrime-BoldItalic.ttf +0 -0
  360. package/dist/ui/fonts/CourierPrime-BoldItalic.woff2 +0 -0
  361. package/dist/ui/fonts/CourierPrime-Italic.ttf +0 -0
  362. package/dist/ui/fonts/CourierPrime-Italic.woff2 +0 -0
  363. package/dist/ui/fonts/CourierPrime-Regular.ttf +0 -0
  364. package/dist/ui/fonts/CourierPrime-Regular.woff2 +0 -0
  365. package/dist/ui/fonts/Noir_medium.otf +0 -0
  366. package/dist/ui/fonts/Noir_medium.woff2 +0 -0
  367. package/dist/ui/fonts/Noir_regular.otf +0 -0
  368. package/dist/ui/fonts/Noir_regular.woff2 +0 -0
  369. package/dist/ui/fonts/RussoOne-Regular.woff2 +0 -0
  370. package/dist/ui/fonts/SpecialElite-Regular.ttf +0 -0
  371. package/dist/ui/fonts/SpecialElite-Regular.woff2 +0 -0
  372. package/dist/ui/index.html +3 -3
  373. package/dist/ui/product/agent manager.png +0 -0
  374. package/dist/ui/product/agent_manager_02.png +0 -0
  375. package/dist/utils/accountProfileSummaryCache.d.ts +5 -0
  376. package/dist/utils/aiProfileEvents.d.ts +7 -0
  377. package/dist/utils/aiProfileEvents.js +6 -0
  378. package/dist/utils/assignees.d.ts +8 -0
  379. package/dist/utils/assignees.js +10 -1
  380. package/dist/utils/assignees.test.d.ts +1 -0
  381. package/dist/utils/assignees.test.js +25 -0
  382. package/dist/utils/avatarDisplay.d.ts +1 -0
  383. package/dist/utils/avatarDisplay.js +15 -0
  384. package/dist/utils/avatarUpload.d.ts +27 -0
  385. package/dist/utils/avatarUpload.js +132 -0
  386. package/dist/utils/avatarUpload.test.d.ts +1 -0
  387. package/dist/utils/avatarUpload.test.js +40 -0
  388. package/dist/utils/bootstrapTrace.d.ts +7 -0
  389. package/dist/utils/bootstrapTrace.js +29 -0
  390. package/dist/utils/commercialLifecyclePresentation.js +3 -0
  391. package/dist/utils/contextAssetEvents.d.ts +2 -0
  392. package/dist/utils/contextFiles.d.ts +3 -1
  393. package/dist/utils/contextFiles.js +2 -1
  394. package/dist/utils/syncEventDetails.d.ts +3 -0
  395. package/dist/utils/syncEventDetails.js +64 -0
  396. package/dist/utils/syncEventDetails.test.d.ts +1 -0
  397. package/dist/utils/syncEventDetails.test.js +23 -0
  398. package/dist/utils/syncEventPresentation.d.ts +15 -0
  399. package/dist/utils/syncEventPresentation.js +129 -0
  400. package/dist/utils/syncEventPresentation.test.d.ts +1 -0
  401. package/dist/utils/syncEventPresentation.test.js +64 -0
  402. package/dist/utils/syncStatusPresentation.d.ts +72 -0
  403. package/dist/utils/syncStatusPresentation.js +217 -0
  404. package/dist/utils/syncStatusPresentation.test.d.ts +1 -0
  405. package/dist/utils/syncStatusPresentation.test.js +164 -0
  406. package/dist/utils/taskActivity.d.ts +9 -1
  407. package/dist/utils/taskActivity.js +290 -22
  408. package/dist/utils/taskActivity.test.js +141 -8
  409. package/dist/utils/taskSearch.d.ts +22 -0
  410. package/dist/utils/taskSearch.js +87 -0
  411. package/dist/utils/taskSearch.test.d.ts +1 -0
  412. package/dist/utils/taskSearch.test.js +69 -0
  413. package/dist/utils/taskUtils.js +10 -3
  414. package/dist/utils/taskUtils.test.d.ts +1 -0
  415. package/dist/utils/taskUtils.test.js +19 -0
  416. package/dist/utils/workspaceSyncPresentation.d.ts +4 -0
  417. package/dist/utils/workspaceSyncPresentation.js +68 -2
  418. package/dist/utils/workspaceSyncPresentation.test.js +36 -1
  419. package/package.json +3 -2
  420. package/scripts/export-sqlite-to-postgres.mjs +7 -9
  421. package/scripts/run-e2e-realtime.sh +17 -3
  422. package/scripts/run-smoke.sh +17 -5
  423. package/scripts/run-soak.sh +17 -5
  424. package/src/resources/templates/workflow-sources/workflowDocs.mjs +6 -6
  425. package/src/resources/templates/workflows/collaborate.yaml +1 -1
  426. package/src/resources/templates/workflows/evaluate.yaml +2 -2
  427. package/src/resources/templates/workflows/plan.yaml +1 -1
  428. package/src/resources/templates/workflows/review.yaml +2 -2
  429. package/dist/ui/assets/AgentsModule-N2MnQBZk.js +0 -1
  430. package/dist/ui/assets/AnnotatedAttachmentWorkspace-BG6P_GVW.js +0 -3
  431. package/dist/ui/assets/AnnotatedAttachmentWorkspace-BaS2VwIr.css +0 -1
  432. package/dist/ui/assets/DocumentWorkspace-B3nV_Gc5.css +0 -1
  433. package/dist/ui/assets/DocumentWorkspace-DRbDMwh8.js +0 -252
  434. package/dist/ui/assets/PlansPage-C2dd2n1X.css +0 -1
  435. package/dist/ui/assets/PlansPage-Cq0zXj3I.js +0 -1
  436. package/dist/ui/assets/RussoOne-Regular-C3BxZIj7.ttf +0 -0
  437. package/dist/ui/assets/TaskSettings-ln0aF7xc.js +0 -9
  438. package/dist/ui/assets/index-C2-OXZV7.css +0 -1
  439. package/dist/ui/assets/index-DcSI5F86.js +0 -6
  440. package/scripts/migrate-planning-model.ts +0 -233
@@ -32,14 +32,14 @@ function seedPlanCatalog(core) {
32
32
  core.updatePlanVersionFeatures({
33
33
  planVersionId: 'free-v1',
34
34
  features: [
35
- { featureKey: 'workspace.switching', access: 'enabled' }
35
+ { featureKey: 'workspace.workspaces', access: 'enabled' }
36
36
  ]
37
37
  });
38
38
  core.updatePlanVersionFeatures({
39
39
  planVersionId: 'basic-v1',
40
40
  features: [
41
41
  { featureKey: 'context.uploads', access: 'enabled' },
42
- { featureKey: 'workspace.switching', access: 'enabled' }
42
+ { featureKey: 'workspace.workspaces', access: 'enabled' }
43
43
  ]
44
44
  });
45
45
  core.updatePlanVersionFeatures({
@@ -48,7 +48,7 @@ function seedPlanCatalog(core) {
48
48
  { featureKey: 'collaboration.invites', access: 'enabled' },
49
49
  { featureKey: 'collaboration.team_management', access: 'enabled' },
50
50
  { featureKey: 'context.uploads', access: 'enabled' },
51
- { featureKey: 'workspace.switching', access: 'enabled' }
51
+ { featureKey: 'workspace.workspaces', access: 'enabled' }
52
52
  ]
53
53
  });
54
54
  insertFreePriceMapping(core, 'free-v1');
@@ -59,7 +59,7 @@ function seedPlans(core) {
59
59
  billing: {
60
60
  onboardingPolicy: {
61
61
  mode: 'auto_grant_free',
62
- planVersionId: 'free-v1'
62
+ planId: 'free'
63
63
  }
64
64
  }
65
65
  });
@@ -81,7 +81,7 @@ describe('TaskforceCore system admin model', () => {
81
81
  try {
82
82
  const created = core.registerPasswordUser({
83
83
  email: 'billing-noworkspace@example.com',
84
- password: 'password123'
84
+ password: 'ValidPassphrase123!'
85
85
  });
86
86
  const db = core.db;
87
87
  const row = db.prepare(`
@@ -106,7 +106,7 @@ describe('TaskforceCore system admin model', () => {
106
106
  core.createWorkspace({ workspaceId: 'workspace-1', name: 'Workspace 1' });
107
107
  const created = core.registerPasswordUser({
108
108
  email: 'billing-workspace@example.com',
109
- password: 'password123',
109
+ password: 'ValidPassphrase123!',
110
110
  workspaceId: 'workspace-1',
111
111
  role: 'member'
112
112
  });
@@ -143,7 +143,7 @@ describe('TaskforceCore system admin model', () => {
143
143
  { featureKey: 'collaboration.invites', access: 'enabled' },
144
144
  { featureKey: 'collaboration.team_management', access: 'enabled' },
145
145
  { featureKey: 'context.uploads', access: 'enabled' },
146
- { featureKey: 'workspace.switching', access: 'enabled' }
146
+ { featureKey: 'workspace.workspaces', access: 'enabled' }
147
147
  ]
148
148
  });
149
149
  core.createPlanVersion({
@@ -156,13 +156,13 @@ describe('TaskforceCore system admin model', () => {
156
156
  billing: {
157
157
  onboardingPolicy: {
158
158
  mode: 'auto_start_trial',
159
- planVersionId: 'team-5-v2'
159
+ planId: 'team-5'
160
160
  }
161
161
  }
162
162
  });
163
163
  const created = core.registerPasswordUser({
164
164
  email: 'configured-signup@example.com',
165
- password: 'password123'
165
+ password: 'ValidPassphrase123!'
166
166
  });
167
167
  const entitlement = core.getAccountEntitlement(created.userId);
168
168
  const db = core.db;
@@ -191,13 +191,13 @@ describe('TaskforceCore system admin model', () => {
191
191
  billing: {
192
192
  onboardingPolicy: {
193
193
  mode: 'auto_grant_free',
194
- planVersionId: 'missing-v9'
194
+ planId: 'missing'
195
195
  }
196
196
  }
197
197
  });
198
198
  expect(() => core.registerPasswordUser({
199
199
  email: 'fallback-signup@example.com',
200
- password: 'password123'
200
+ password: 'ValidPassphrase123!'
201
201
  })).toThrowError(/was not found/i);
202
202
  }
203
203
  finally {
@@ -213,13 +213,13 @@ describe('TaskforceCore system admin model', () => {
213
213
  billing: {
214
214
  onboardingPolicy: {
215
215
  mode: 'require_plan_selection',
216
- planVersionId: null
216
+ planId: null
217
217
  }
218
218
  }
219
219
  });
220
220
  const created = core.registerPasswordUser({
221
221
  email: 'pending-plan@example.com',
222
- password: 'password123'
222
+ password: 'ValidPassphrase123!'
223
223
  });
224
224
  expect(created.planSelectionRequired).toBe(true);
225
225
  expect(core.hasAccountEntitlement(created.userId)).toBe(true);
@@ -294,13 +294,13 @@ describe('TaskforceCore system admin model', () => {
294
294
  billing: {
295
295
  onboardingPolicy: {
296
296
  mode: 'auto_grant_free',
297
- planVersionId: 'free-v1'
297
+ planId: 'free'
298
298
  }
299
299
  }
300
300
  });
301
301
  const created = core.registerPasswordUser({
302
302
  email: 'selected-plan@example.com',
303
- password: 'password123',
303
+ password: 'ValidPassphrase123!',
304
304
  planVersionId: 'basic-v1'
305
305
  });
306
306
  expect(created.planSelectionRequired).toBe(false);
@@ -328,13 +328,13 @@ describe('TaskforceCore system admin model', () => {
328
328
  billing: {
329
329
  onboardingPolicy: {
330
330
  mode: 'require_plan_selection',
331
- planVersionId: null
331
+ planId: null
332
332
  }
333
333
  }
334
334
  });
335
335
  const created = core.registerPasswordUser({
336
336
  email: 'selected-plan-required@example.com',
337
- password: 'password123',
337
+ password: 'ValidPassphrase123!',
338
338
  planVersionId: 'basic-v1'
339
339
  });
340
340
  expect(created.planSelectionRequired).toBe(false);
@@ -366,13 +366,13 @@ describe('TaskforceCore system admin model', () => {
366
366
  billing: {
367
367
  onboardingPolicy: {
368
368
  mode: 'require_plan_selection',
369
- planVersionId: null
369
+ planId: null
370
370
  }
371
371
  }
372
372
  });
373
373
  const created = core.registerPasswordUser({
374
374
  email: 'legacy-free@example.com',
375
- password: 'password123',
375
+ password: 'ValidPassphrase123!',
376
376
  planVersionId: 'free-v1'
377
377
  });
378
378
  core.updateAccountEntitlement({
@@ -421,13 +421,13 @@ describe('TaskforceCore system admin model', () => {
421
421
  billing: {
422
422
  onboardingPolicy: {
423
423
  mode: 'require_plan_selection',
424
- planVersionId: null
424
+ planId: null
425
425
  }
426
426
  }
427
427
  });
428
428
  const created = core.registerPasswordUser({
429
429
  email: 'current-default-free@example.com',
430
- password: 'password123',
430
+ password: 'ValidPassphrase123!',
431
431
  planVersionId: 'free-v2'
432
432
  });
433
433
  core.updateAccountEntitlement({
@@ -467,16 +467,16 @@ describe('TaskforceCore system admin model', () => {
467
467
  billing: {
468
468
  onboardingPolicy: {
469
469
  mode: 'require_plan_selection',
470
- planVersionId: null
470
+ planId: null
471
471
  }
472
472
  }
473
473
  });
474
474
  const now = new Date().toISOString();
475
475
  const db = core.db;
476
476
  db.prepare(`
477
- INSERT INTO users (id, tenant_id, email, display_name, auth_provider, external_auth_id, password_hash, system_role, beta_access, is_disabled, created_at, updated_at)
478
- VALUES (?, ?, ?, ?, ?, ?, ?, 'user', 1, 0, ?, ?)
479
- `).run('user-missing-entitlement', 'default', 'broken@example.com', 'Broken', 'password', 'broken@example.com', 'hash', now, now);
477
+ INSERT INTO users (id, tenant_id, email, display_name, system_role, beta_access, is_disabled, created_at, updated_at)
478
+ VALUES (?, ?, ?, ?, 'user', 1, 0, ?, ?)
479
+ `).run('user-missing-entitlement', 'default', 'broken@example.com', 'Broken', now, now);
480
480
  expect(core.getAccountAccessStatus('user-missing-entitlement')).toMatchObject({
481
481
  gate: 'missing_entitlement',
482
482
  hasEntitlement: false,
@@ -529,7 +529,7 @@ describe('TaskforceCore system admin model', () => {
529
529
  billing: {
530
530
  onboardingPolicy: {
531
531
  mode: 'require_plan_selection',
532
- planVersionId: null
532
+ planId: null
533
533
  }
534
534
  }
535
535
  });
@@ -541,7 +541,7 @@ describe('TaskforceCore system admin model', () => {
541
541
  try {
542
542
  expect(reopened.getOnboardingPolicy()).toEqual({
543
543
  mode: 'require_plan_selection',
544
- planVersionId: null
544
+ planId: null
545
545
  });
546
546
  }
547
547
  finally {
@@ -590,7 +590,7 @@ describe('TaskforceCore system admin model', () => {
590
590
  try {
591
591
  const created = initial.registerPasswordUser({
592
592
  email: 'legacy-billing@example.com',
593
- password: 'password123'
593
+ password: 'ValidPassphrase123!'
594
594
  });
595
595
  legacyUserId = created.userId;
596
596
  const db = initial.db;
@@ -672,11 +672,11 @@ describe('TaskforceCore system admin model', () => {
672
672
  try {
673
673
  const first = core.registerPasswordUser({
674
674
  email: 'first@example.com',
675
- password: 'password123'
675
+ password: 'ValidPassphrase123!'
676
676
  });
677
677
  const second = core.registerPasswordUser({
678
678
  email: 'second@example.com',
679
- password: 'password123'
679
+ password: 'ValidPassphrase123!'
680
680
  });
681
681
  expect(core.getSystemRole(first.userId)).toBe('system_admin');
682
682
  expect(core.getSystemRole(second.userId)).toBe('user');
@@ -694,11 +694,11 @@ describe('TaskforceCore system admin model', () => {
694
694
  core.createWorkspace({ workspaceId: 'workspace-1', name: 'Workspace 1' });
695
695
  core.registerPasswordUser({
696
696
  email: 'bootstrap-admin@example.com',
697
- password: 'password123'
697
+ password: 'ValidPassphrase123!'
698
698
  });
699
699
  const user = core.registerPasswordUser({
700
700
  email: 'beta-off@example.com',
701
- password: 'password123',
701
+ password: 'ValidPassphrase123!',
702
702
  workspaceId: 'workspace-1',
703
703
  role: 'owner',
704
704
  betaAccess: false
@@ -718,7 +718,7 @@ describe('TaskforceCore system admin model', () => {
718
718
  try {
719
719
  const first = core.registerPasswordUser({
720
720
  email: 'first@example.com',
721
- password: 'password123'
721
+ password: 'ValidPassphrase123!'
722
722
  });
723
723
  expect(() => core.setSystemRole(first.userId, 'user')).toThrowError(/last system admin/i);
724
724
  expect(() => core.setUserDisabledGlobal(first.userId, true)).toThrowError(/last system admin/i);
@@ -734,11 +734,11 @@ describe('TaskforceCore system admin model', () => {
734
734
  try {
735
735
  const first = core.registerPasswordUser({
736
736
  email: 'first@example.com',
737
- password: 'password123'
737
+ password: 'ValidPassphrase123!'
738
738
  });
739
739
  const second = core.registerPasswordUser({
740
740
  email: 'second@example.com',
741
- password: 'password123'
741
+ password: 'ValidPassphrase123!'
742
742
  });
743
743
  core.createWorkspace({ workspaceId: 'workspace-1', name: 'Workspace 1' });
744
744
  core.ensureBootstrapUserAccess({
@@ -762,11 +762,11 @@ describe('TaskforceCore system admin model', () => {
762
762
  try {
763
763
  const admin = core.registerPasswordUser({
764
764
  email: 'admin@example.com',
765
- password: 'password123'
765
+ password: 'ValidPassphrase123!'
766
766
  });
767
767
  const member = core.registerPasswordUser({
768
768
  email: 'member@example.com',
769
- password: 'password123'
769
+ password: 'ValidPassphrase123!'
770
770
  });
771
771
  core.createPlanVersion({
772
772
  planId: 'free',
@@ -795,11 +795,11 @@ describe('TaskforceCore system admin model', () => {
795
795
  try {
796
796
  const admin = core.registerPasswordUser({
797
797
  email: 'admin@example.com',
798
- password: 'password123'
798
+ password: 'ValidPassphrase123!'
799
799
  });
800
800
  const member = core.registerPasswordUser({
801
801
  email: 'member@example.com',
802
- password: 'password123'
802
+ password: 'ValidPassphrase123!'
803
803
  });
804
804
  const workspaceId = member.workspaceId || 'default';
805
805
  const db = core.db;
@@ -877,11 +877,11 @@ describe('TaskforceCore system admin model', () => {
877
877
  try {
878
878
  const admin = core.registerPasswordUser({
879
879
  email: 'admin@example.com',
880
- password: 'password123'
880
+ password: 'ValidPassphrase123!'
881
881
  });
882
882
  const member = core.registerPasswordUser({
883
883
  email: 'member@example.com',
884
- password: 'password123'
884
+ password: 'ValidPassphrase123!'
885
885
  });
886
886
  const db = core.db;
887
887
  const now = new Date().toISOString();
@@ -1094,7 +1094,7 @@ describe('TaskforceCore system admin model', () => {
1094
1094
  try {
1095
1095
  const created = core.registerPasswordUser({
1096
1096
  email: 'nomembership@example.com',
1097
- password: 'password123'
1097
+ password: 'ValidPassphrase123!'
1098
1098
  });
1099
1099
  expect(core.resolvePreferredUserWorkspaceId(created.userId)).toBeNull();
1100
1100
  }
@@ -1,6 +1,6 @@
1
1
  import type { DatabaseAdapter } from '../storage/databaseAdapter.js';
2
2
  import type { TaskActor } from '../shared/taskActor.js';
3
- import type { Comment, TaskActivityItem, TaskEvent, TaskEventDetails } from './Taskforce.js';
3
+ import type { ActivityEntityType, Comment, EntityActivityItem, EntityEvent, TaskActivityItem, TaskEvent, TaskEventDetails } from './Taskforce.js';
4
4
  export interface TaskActivityServiceDeps {
5
5
  db: DatabaseAdapter;
6
6
  tenantId: string;
@@ -9,9 +9,34 @@ export interface TaskActivityServiceDeps {
9
9
  resolveWorkspaceActor: (workspaceId: string, actorRef: unknown) => TaskActor | null;
10
10
  }
11
11
  export declare function listWorkspaceTaskEventsService(deps: TaskActivityServiceDeps, workspaceId: string): TaskEvent[];
12
+ export declare function listWorkspaceEntityEventsService(deps: TaskActivityServiceDeps, workspaceId: string): EntityEvent[];
13
+ export declare function listWorkspaceEntityEventsForSyncService(deps: TaskActivityServiceDeps, workspaceId: string): EntityEvent[];
14
+ export declare function listWorkspaceTaskEventsForSyncService(deps: TaskActivityServiceDeps, workspaceId: string): TaskEvent[];
15
+ export declare function getTaskEventForSyncService(deps: TaskActivityServiceDeps, input: {
16
+ taskId: string;
17
+ workspaceId: string;
18
+ eventId: string;
19
+ }): TaskEvent | null;
20
+ export declare function getEntityEventForSyncService(deps: TaskActivityServiceDeps, input: {
21
+ workspaceId: string;
22
+ eventId: string;
23
+ }): EntityEvent | null;
12
24
  export declare function replaceTaskCommentsService(deps: TaskActivityServiceDeps, taskId: string, workspaceId: string, comments: Comment[]): void;
25
+ export declare function listEntityEventsInternalService(deps: TaskActivityServiceDeps, entityType: ActivityEntityType, entityId: string, workspaceId: string): EntityEvent[];
13
26
  export declare function listTaskEventsInternalService(deps: TaskActivityServiceDeps, taskId: string, workspaceId: string): TaskEvent[];
27
+ export declare function buildEntityActivityService(comments: Comment[], entityEvents: EntityEvent[], options?: {
28
+ hiddenActions?: string[];
29
+ }): EntityActivityItem[];
14
30
  export declare function buildTaskActivityService(comments: Comment[], taskEvents: TaskEvent[]): TaskActivityItem[];
31
+ export declare function addEntityEventService(deps: TaskActivityServiceDeps, input: {
32
+ entityType: ActivityEntityType;
33
+ entityId: string;
34
+ workspaceId: string;
35
+ action: string;
36
+ actor: unknown;
37
+ createdAt?: string;
38
+ details?: TaskEventDetails;
39
+ }): void;
15
40
  export declare function addTaskEventService(deps: TaskActivityServiceDeps, input: {
16
41
  taskId: string;
17
42
  workspaceId: string;
@@ -20,5 +45,7 @@ export declare function addTaskEventService(deps: TaskActivityServiceDeps, input
20
45
  createdAt?: string;
21
46
  details?: TaskEventDetails;
22
47
  }): void;
48
+ export declare function replaceEntityEventsService(deps: TaskActivityServiceDeps, entityType: ActivityEntityType, entityId: string, workspaceId: string, entityEvents: EntityEvent[]): void;
23
49
  export declare function replaceTaskEventsService(deps: TaskActivityServiceDeps, taskId: string, workspaceId: string, taskEvents: TaskEvent[]): void;
50
+ export declare function upsertEntityEventForSyncService(deps: TaskActivityServiceDeps, event: EntityEvent): EntityEvent;
24
51
  export declare function upsertTaskEventForSyncService(deps: TaskActivityServiceDeps, event: TaskEvent): TaskEvent;