@taskforcehq/taskforce 0.3.303 → 0.3.304

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 (165) hide show
  1. package/dist/Taskforce.module.css +102 -5
  2. package/dist/TaskforceCore.js +514 -212
  3. package/dist/TaskforceCore.test.js +1172 -133
  4. package/dist/annotatedAttachments/service.d.ts +1 -1
  5. package/dist/annotatedAttachments/types.d.ts +1 -1
  6. package/dist/components/features/AgentsModule.js +1 -1
  7. package/dist/components/features/AgentsModule.test.js +1 -1
  8. package/dist/components/features/TaskSettings.js +58 -38
  9. package/dist/components/features/TaskSettings.test.js +139 -40
  10. package/dist/components/task/TaskActionHeader.d.ts +2 -1
  11. package/dist/components/task/TaskActionHeader.js +3 -3
  12. package/dist/components/task/TaskActionHeader.test.js +8 -0
  13. package/dist/components/task/TaskCard.js +16 -1
  14. package/dist/components/task/TaskCard.test.js +31 -0
  15. package/dist/components/task/TaskForm.d.ts +2 -1
  16. package/dist/components/task/TaskForm.js +22 -4
  17. package/dist/components/task/TaskForm.test.js +46 -0
  18. package/dist/components/task/TaskKanban.d.ts +1 -1
  19. package/dist/components/task/TaskKanban.js +31 -160
  20. package/dist/components/task/TaskStatusActions.d.ts +6 -1
  21. package/dist/components/task/TaskStatusActions.js +8 -3
  22. package/dist/components/task/TaskStatusActions.test.js +9 -0
  23. package/dist/components/task/taskKanbanDropRules.d.ts +58 -0
  24. package/dist/components/task/taskKanbanDropRules.js +187 -0
  25. package/dist/components/task/taskKanbanDropRules.test.d.ts +1 -0
  26. package/dist/components/task/taskKanbanDropRules.test.js +114 -0
  27. package/dist/components/ui/Modal.d.ts +1 -1
  28. package/dist/components/ui/Modal.js +1 -0
  29. package/dist/components/views/AppShellHeader.js +5 -1
  30. package/dist/components/views/AppShellHeader.test.js +4 -0
  31. package/dist/components/views/PlanComparisonPage.d.ts +3 -2
  32. package/dist/components/views/PlanComparisonPage.js +4 -2
  33. package/dist/components/views/PlanComparisonPage.test.js +4 -0
  34. package/dist/components/views/PlansPage.d.ts +5 -1
  35. package/dist/components/views/PlansPage.js +39 -12
  36. package/dist/components/views/PlansPage.test.js +59 -2
  37. package/dist/components/views/StandaloneLayout.js +113 -38
  38. package/dist/components/views/WidgetView.js +11 -2
  39. package/dist/components/views/standalone/modals/SyncStatusModal.js +1 -1
  40. package/dist/core/DeletedTaskLifecycleService.d.ts +2 -1
  41. package/dist/core/PlanEntitlementService.d.ts +3 -1
  42. package/dist/core/PlanEntitlementService.js +61 -11
  43. package/dist/core/SignupMonetizationSettings.test.js +37 -2
  44. package/dist/core/TaskActivityService.d.ts +4 -1
  45. package/dist/core/TaskActivityService.js +45 -0
  46. package/dist/core/TaskAuditTimeline.test.js +52 -1
  47. package/dist/core/Taskforce.d.ts +15 -11
  48. package/dist/core/Taskforce.js +43 -2
  49. package/dist/core/WorkspacePlanMode.test.js +65 -0
  50. package/dist/documentReviews/service.d.ts +1 -1
  51. package/dist/documentReviews/types.d.ts +1 -1
  52. package/dist/hooks/auth/useTaskforceAuthBootstrap.d.ts +48 -0
  53. package/dist/hooks/auth/useTaskforceAuthBootstrap.js +219 -0
  54. package/dist/hooks/sync/auth.d.ts +37 -0
  55. package/dist/hooks/sync/auth.js +61 -0
  56. package/dist/hooks/sync/bootstrap.d.ts +34 -0
  57. package/dist/hooks/sync/bootstrap.js +52 -0
  58. package/dist/hooks/sync/orchestratorShared.d.ts +36 -0
  59. package/dist/hooks/sync/orchestratorShared.js +209 -0
  60. package/dist/hooks/sync/orchestratorShared.test.d.ts +1 -0
  61. package/dist/hooks/sync/orchestratorShared.test.js +49 -0
  62. package/dist/hooks/sync/realtime.d.ts +25 -0
  63. package/dist/hooks/sync/realtime.js +60 -0
  64. package/dist/hooks/sync/recovery.d.ts +69 -0
  65. package/dist/hooks/sync/recovery.js +118 -0
  66. package/dist/hooks/sync/transfers.d.ts +122 -0
  67. package/dist/hooks/sync/transfers.js +431 -0
  68. package/dist/hooks/sync/useDataVersionRefresh.d.ts +16 -0
  69. package/dist/hooks/sync/useDataVersionRefresh.js +73 -0
  70. package/dist/hooks/ui/useResourceExport.d.ts +3 -1
  71. package/dist/hooks/ui/useResourceExport.js +5 -2
  72. package/dist/hooks/ui/useWorkflowTemplates.js +11 -6
  73. package/dist/hooks/useRealtimeSync.js +2 -1
  74. package/dist/hooks/useSyncOrchestrator.aiProfiles.test.js +8 -0
  75. package/dist/hooks/useSyncOrchestrator.context-assets.test.d.ts +1 -0
  76. package/dist/hooks/useSyncOrchestrator.context-assets.test.js +228 -0
  77. package/dist/hooks/useSyncOrchestrator.d.ts +5 -4
  78. package/dist/hooks/useSyncOrchestrator.js +314 -873
  79. package/dist/hooks/useSyncOrchestrator.retry-closure.test.js +568 -3
  80. package/dist/hooks/useTaskMutations.js +45 -6
  81. package/dist/hooks/useTaskMutations.test.js +147 -0
  82. package/dist/hooks/useTaskforce.d.ts +8 -2
  83. package/dist/hooks/useTaskforce.js +285 -812
  84. package/dist/hooks/useWorkspaceSyncController.d.ts +1 -0
  85. package/dist/hooks/useWorkspaceSyncController.js +22 -10
  86. package/dist/hooks/workspace/useTaskforceApiRouting.test.js +17 -0
  87. package/dist/hooks/workspace/useTaskforceWorkspaceBootstrap.d.ts +166 -0
  88. package/dist/hooks/workspace/useTaskforceWorkspaceBootstrap.js +434 -0
  89. package/dist/hooks/workspace/workspaceLocalState.d.ts +19 -0
  90. package/dist/hooks/workspace/workspaceLocalState.js +100 -0
  91. package/dist/hooks/workspace/workspaceLocalState.test.d.ts +1 -0
  92. package/dist/hooks/workspace/workspaceLocalState.test.js +59 -0
  93. package/dist/localization/locales/en-US.js +2 -2
  94. package/dist/mcp/canonicalAssetHelpers.d.ts +70 -0
  95. package/dist/mcp/canonicalAssetHelpers.js +259 -0
  96. package/dist/mcp/clientIntegrations.d.ts +12 -1
  97. package/dist/mcp/clientIntegrations.js +161 -6
  98. package/dist/mcp/clientIntegrations.test.js +76 -4
  99. package/dist/mcp/documentHelpers.d.ts +100 -0
  100. package/dist/mcp/documentHelpers.js +161 -0
  101. package/dist/mcp/runtime.js +174 -476
  102. package/dist/mcp/runtime.test.js +81 -8
  103. package/dist/mcp/taskAttachmentHelpers.d.ts +41 -0
  104. package/dist/mcp/taskAttachmentHelpers.js +60 -0
  105. package/dist/mcp/taskAttachmentTypes.d.ts +37 -0
  106. package/dist/mcp/taskAttachmentTypes.js +1 -0
  107. package/dist/plugins/vite.js +1 -1
  108. package/dist/runtime/appGateDefinitions.d.ts +1 -1
  109. package/dist/runtime/appGateDefinitions.js +1 -1
  110. package/dist/server/index.d.ts +1 -0
  111. package/dist/server/index.js +46 -3
  112. package/dist/server/index.test.js +12 -1
  113. package/dist/server/routes/admin.js +13 -19
  114. package/dist/server/routes/auth.js +37 -2
  115. package/dist/server/routes/billing.js +18 -67
  116. package/dist/server/routes/billing.test.js +43 -0
  117. package/dist/server/routes/shared.d.ts +30 -0
  118. package/dist/server/routes/shared.js +26 -0
  119. package/dist/server/routes/sync.integration.test.js +20 -0
  120. package/dist/server/routes/sync.js +110 -237
  121. package/dist/server/routes/tasks.js +49 -7
  122. package/dist/server/routes.js +8 -19
  123. package/dist/server/routes.test.js +243 -5
  124. package/dist/shared/taskActor.d.ts +10 -0
  125. package/dist/shared/taskActor.js +1 -0
  126. package/dist/sync/collaborationSyncPayload.js +4 -0
  127. package/dist/sync/collaborationSyncPayload.test.js +8 -0
  128. package/dist/sync/collaborationSyncState.d.ts +3 -1
  129. package/dist/sync/collaborationSyncState.js +19 -0
  130. package/dist/sync/contentSyncState.js +12 -10
  131. package/dist/sync/syncApplyHandlers.d.ts +87 -1
  132. package/dist/sync/syncApplyHandlers.js +370 -8
  133. package/dist/sync/syncApplyHandlers.test.d.ts +1 -0
  134. package/dist/sync/syncApplyHandlers.test.js +377 -0
  135. package/dist/sync/syncService.d.ts +8 -1
  136. package/dist/sync/syncService.js +36 -2
  137. package/dist/sync/syncService.test.js +48 -0
  138. package/dist/sync/workspacePullFeed.d.ts +1 -0
  139. package/dist/sync/workspacePullFeed.js +66 -59
  140. package/dist/sync/workspacePullFeed.test.js +72 -4
  141. package/dist/sync/workspaceSyncModel.d.ts +22 -1
  142. package/dist/sync/workspaceSyncModel.js +65 -0
  143. package/dist/sync/workspaceSyncModel.test.js +119 -0
  144. package/dist/types.d.ts +2 -10
  145. package/dist/ui/assets/AgentsModule-BLWVbuKP.js +1 -0
  146. package/dist/ui/assets/{AnnotatedAttachmentWorkspace-C_TmXZwA.js → AnnotatedAttachmentWorkspace-BlS-cqnl.js} +1 -1
  147. package/dist/ui/assets/{DocumentWorkspace-C3GyzrWm.js → DocumentWorkspace-BH_6DF6x.js} +1 -1
  148. package/dist/ui/assets/{InitiativesModule-4-Rh2K2n.js → InitiativesModule-BjR6iBf9.js} +1 -1
  149. package/dist/ui/assets/{PlansPage-BlVC_lRq.css → PlansPage-C2dd2n1X.css} +1 -1
  150. package/dist/ui/assets/PlansPage-CSDQ4sLa.js +1 -0
  151. package/dist/ui/assets/TaskSettings-CEDy34Jo.js +9 -0
  152. package/dist/ui/assets/{WorkflowsModule-CGk9s3NJ.js → WorkflowsModule-DnFqdUME.js} +1 -1
  153. package/dist/ui/assets/index-DXUdtH1B.js +6 -0
  154. package/dist/ui/assets/index-Ii0B0rTO.css +1 -0
  155. package/dist/ui/assets/{vendor-icons-pWocEipT.js → vendor-icons-I7ZwG1z_.js} +1 -1
  156. package/dist/ui/index.html +4 -4
  157. package/dist/utils/taskActivity.js +4 -0
  158. package/dist/utils/taskActivity.test.js +25 -1
  159. package/package.json +3 -1
  160. package/scripts/playwright-auth.sh +4 -0
  161. package/dist/ui/assets/AgentsModule-CpsTmrIW.js +0 -1
  162. package/dist/ui/assets/PlansPage-BP7AYOqr.js +0 -1
  163. package/dist/ui/assets/TaskSettings-BOC5F6Ag.js +0 -8
  164. package/dist/ui/assets/index-CLIMgR6g.js +0 -6
  165. package/dist/ui/assets/index-DneETxcu.css +0 -1
@@ -3870,6 +3870,65 @@
3870
3870
  letter-spacing: 0.08em;
3871
3871
  }
3872
3872
 
3873
+ .codeHeaderDescription {
3874
+ font-size: 11px;
3875
+ color: var(--text-muted, #666);
3876
+ line-height: 1.4;
3877
+ max-width: none;
3878
+ width: 100%;
3879
+ }
3880
+
3881
+ .mcpTokenCardBody {
3882
+ display: flex;
3883
+ flex-direction: column;
3884
+ gap: 12px;
3885
+ padding: 14px 16px 10px;
3886
+ background: color-mix(in srgb, var(--bg-secondary, #171726) 88%, transparent);
3887
+ }
3888
+
3889
+ .mcpTokenFormGrid {
3890
+ display: grid;
3891
+ grid-template-columns: minmax(0, 2fr) minmax(220px, 1fr);
3892
+ gap: 12px;
3893
+ align-items: end;
3894
+ }
3895
+
3896
+ .mcpTokenOutputWrap {
3897
+ display: flex;
3898
+ flex-direction: column;
3899
+ gap: 6px;
3900
+ padding: 0 16px;
3901
+ }
3902
+
3903
+ .mcpTokenValueField {
3904
+ display: flex;
3905
+ align-items: center;
3906
+ min-height: 44px;
3907
+ padding: 10px 14px;
3908
+ border: 1px solid var(--border-primary, rgba(255, 255, 255, 0.1));
3909
+ border-radius: 12px;
3910
+ background: var(--bg-primary, #0f0f1a);
3911
+ }
3912
+
3913
+ .mcpTokenValueText {
3914
+ font-family: "JetBrains Mono", "Fira Code", monospace;
3915
+ font-size: 13px;
3916
+ line-height: 1.5;
3917
+ word-break: break-all;
3918
+ width: 100%;
3919
+ }
3920
+
3921
+ .mcpTokenValueText code {
3922
+ font-family: inherit;
3923
+ font-size: inherit;
3924
+ }
3925
+
3926
+ .mcpTokenActionRow {
3927
+ display: flex;
3928
+ justify-content: flex-end;
3929
+ padding: 8px 16px 14px;
3930
+ }
3931
+
3873
3932
  .codeBlock {
3874
3933
  margin: 0;
3875
3934
  background: #1e1e2e !important;
@@ -4585,6 +4644,12 @@
4585
4644
  height: 16px;
4586
4645
  }
4587
4646
 
4647
+ @media (max-width: 900px) {
4648
+ .mcpTokenFormGrid {
4649
+ grid-template-columns: 1fr;
4650
+ }
4651
+ }
4652
+
4588
4653
  .marginTop12 {
4589
4654
  margin-top: 12px;
4590
4655
  }
@@ -4679,19 +4744,43 @@
4679
4744
 
4680
4745
  .aiProfilesExplorer {
4681
4746
  display: grid;
4682
- grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
4747
+ grid-template-columns: 360px 360px;
4683
4748
  gap: 16px;
4684
4749
  align-items: start;
4750
+ justify-content: start;
4685
4751
  }
4686
4752
 
4687
4753
  .aiProfilesListPane {
4688
4754
  min-width: 0;
4755
+ max-height: min(72vh, 780px);
4756
+ overflow-y: auto;
4757
+ overscroll-behavior: contain;
4758
+ padding-right: 6px;
4759
+ scrollbar-gutter: stable;
4760
+ scrollbar-width: thin;
4761
+ scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
4762
+ }
4763
+
4764
+ .aiProfilesListPane::-webkit-scrollbar {
4765
+ width: 10px;
4766
+ }
4767
+
4768
+ .aiProfilesListPane::-webkit-scrollbar-track {
4769
+ background: var(--scrollbar-track);
4770
+ border-radius: 999px;
4771
+ }
4772
+
4773
+ .aiProfilesListPane::-webkit-scrollbar-thumb {
4774
+ background: var(--scrollbar-thumb);
4775
+ border-radius: 999px;
4776
+ border: 2px solid var(--scrollbar-track);
4689
4777
  }
4690
4778
 
4691
4779
  .aiProfilesList {
4692
4780
  display: flex;
4693
4781
  flex-direction: column;
4694
4782
  gap: 16px;
4783
+ min-width: 0;
4695
4784
  }
4696
4785
 
4697
4786
  .aiProfilesSection {
@@ -4719,7 +4808,8 @@
4719
4808
  color: inherit;
4720
4809
  background: rgba(255, 255, 255, 0.02);
4721
4810
  cursor: pointer;
4722
- transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
4811
+ box-sizing: border-box;
4812
+ transition: border-color 140ms ease, background 140ms ease, box-shadow 140ms ease;
4723
4813
  }
4724
4814
 
4725
4815
  .aiProfileGroup:hover {
@@ -4733,7 +4823,6 @@
4733
4823
  linear-gradient(135deg, rgba(59, 130, 246, 0.14), rgba(14, 165, 233, 0.06)),
4734
4824
  rgba(255, 255, 255, 0.04);
4735
4825
  box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.16);
4736
- transform: translateY(-1px);
4737
4826
  }
4738
4827
 
4739
4828
  .aiProfileGroupDuplicate {
@@ -4834,11 +4923,13 @@
4834
4923
  }
4835
4924
 
4836
4925
  .aiProfileDetailPane {
4926
+ min-width: 0;
4837
4927
  position: sticky;
4838
4928
  top: 16px;
4839
4929
  }
4840
4930
 
4841
4931
  .aiProfileDetailCard {
4932
+ min-width: 0;
4842
4933
  border: 1px solid var(--border-primary, rgba(255, 255, 255, 0.08));
4843
4934
  border-radius: var(--radius-md);
4844
4935
  padding: 18px;
@@ -4884,6 +4975,7 @@
4884
4975
  font-size: 17px;
4885
4976
  line-height: 1.15;
4886
4977
  color: var(--text-primary, #fff);
4978
+ overflow-wrap: anywhere;
4887
4979
  }
4888
4980
 
4889
4981
  .aiProfileDetailMetaRow {
@@ -5018,9 +5110,14 @@
5018
5110
  color: var(--text-secondary, #94a3b8);
5019
5111
  }
5020
5112
 
5021
- @media (max-width: 980px) {
5113
+ @media (max-width: 1100px) {
5022
5114
  .aiProfilesExplorer {
5023
- grid-template-columns: 1fr;
5115
+ grid-template-columns: minmax(0, 1fr);
5116
+ }
5117
+
5118
+ .aiProfilesListPane {
5119
+ max-height: min(52vh, 420px);
5120
+ padding-right: 2px;
5024
5121
  }
5025
5122
 
5026
5123
  .aiProfileDetailPane {