@parhelia/core 0.3.12777 → 0.3.12791

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 (205) hide show
  1. package/dist/components/ui/LanguageSelector.js +4 -1
  2. package/dist/components/ui/LanguageSelector.js.map +1 -1
  3. package/dist/components/ui/select.js +12 -1
  4. package/dist/components/ui/select.js.map +1 -1
  5. package/dist/editor/FieldHistory.js +2 -2
  6. package/dist/editor/FieldHistory.js.map +1 -1
  7. package/dist/editor/ai/InlineAiDialog.js +35 -8
  8. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  9. package/dist/editor/ai/dialogs/offscreenPageCapture.d.ts +14 -1
  10. package/dist/editor/ai/dialogs/offscreenPageCapture.js +95 -27
  11. package/dist/editor/ai/dialogs/offscreenPageCapture.js.map +1 -1
  12. package/dist/editor/ai/terminal/components/AgentProjectProgress.d.ts +4 -3
  13. package/dist/editor/ai/terminal/components/AgentProjectProgress.js +34 -50
  14. package/dist/editor/ai/terminal/components/AgentProjectProgress.js.map +1 -1
  15. package/dist/editor/ai/terminal/components/AgentTerminalView.d.ts +2 -1
  16. package/dist/editor/ai/terminal/components/AgentTerminalView.js +2 -2
  17. package/dist/editor/ai/terminal/components/AgentTerminalView.js.map +1 -1
  18. package/dist/editor/ai/terminal/useAgentContextDisplayNames.js +37 -2
  19. package/dist/editor/ai/terminal/useAgentContextDisplayNames.js.map +1 -1
  20. package/dist/editor/ai/terminal/useAgentTerminalController.js +1 -0
  21. package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
  22. package/dist/editor/ai/terminal/useAgentTerminalViewProps.d.ts +1 -0
  23. package/dist/editor/ai/terminal/useAgentTerminalViewProps.js +2 -1
  24. package/dist/editor/ai/terminal/useAgentTerminalViewProps.js.map +1 -1
  25. package/dist/editor/bridge/protocol.d.ts +4 -0
  26. package/dist/editor/bridge/protocol.js +1 -0
  27. package/dist/editor/bridge/protocol.js.map +1 -1
  28. package/dist/editor/client/EditorShell.js +174 -65
  29. package/dist/editor/client/EditorShell.js.map +1 -1
  30. package/dist/editor/client/editContext.d.ts +13 -3
  31. package/dist/editor/client/editContext.js.map +1 -1
  32. package/dist/editor/client/hooks/activeSessionSnapshots.d.ts +2 -0
  33. package/dist/editor/client/hooks/activeSessionSnapshots.js +43 -0
  34. package/dist/editor/client/hooks/activeSessionSnapshots.js.map +1 -0
  35. package/dist/editor/client/hooks/feedbackSocketState.js +3 -0
  36. package/dist/editor/client/hooks/feedbackSocketState.js.map +1 -1
  37. package/dist/editor/client/hooks/operationRefreshDeduplication.d.ts +22 -0
  38. package/dist/editor/client/hooks/operationRefreshDeduplication.js +45 -0
  39. package/dist/editor/client/hooks/operationRefreshDeduplication.js.map +1 -0
  40. package/dist/editor/client/hooks/socketMessageRetention.d.ts +7 -0
  41. package/dist/editor/client/hooks/socketMessageRetention.js +11 -0
  42. package/dist/editor/client/hooks/socketMessageRetention.js.map +1 -0
  43. package/dist/editor/client/hooks/useSocketMessageHandler.js +39 -19
  44. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  45. package/dist/editor/client/hooks/useWorkbox.d.ts +4 -0
  46. package/dist/editor/client/hooks/useWorkbox.js +132 -2
  47. package/dist/editor/client/hooks/useWorkbox.js.map +1 -1
  48. package/dist/editor/client/itemsRepository.d.ts +7 -1
  49. package/dist/editor/client/itemsRepository.js +41 -18
  50. package/dist/editor/client/itemsRepository.js.map +1 -1
  51. package/dist/editor/client/operations.d.ts +7 -3
  52. package/dist/editor/client/operations.js +216 -150
  53. package/dist/editor/client/operations.js.map +1 -1
  54. package/dist/editor/client/pageModelBuilder.js +22 -4
  55. package/dist/editor/client/pageModelBuilder.js.map +1 -1
  56. package/dist/editor/client/sidebarAvailability.d.ts +4 -0
  57. package/dist/editor/client/sidebarAvailability.js +15 -0
  58. package/dist/editor/client/sidebarAvailability.js.map +1 -1
  59. package/dist/editor/commands/itemCommands.js +1 -1
  60. package/dist/editor/commands/itemCommands.js.map +1 -1
  61. package/dist/editor/componentTreeHelper.js +13 -7
  62. package/dist/editor/componentTreeHelper.js.map +1 -1
  63. package/dist/editor/field-types/RichTextEditorComponent.js +6 -1
  64. package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
  65. package/dist/editor/field-types/SingleLineText.js +2 -3
  66. package/dist/editor/field-types/SingleLineText.js.map +1 -1
  67. package/dist/editor/field-types/richtext/components/ReactSlate.d.ts +6 -1
  68. package/dist/editor/field-types/richtext/components/ReactSlate.js +91 -5
  69. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  70. package/dist/editor/field-types/singleLineTextValue.d.ts +3 -0
  71. package/dist/editor/field-types/singleLineTextValue.js +9 -0
  72. package/dist/editor/field-types/singleLineTextValue.js.map +1 -0
  73. package/dist/editor/insertOptionCompatibility.d.ts +7 -0
  74. package/dist/editor/insertOptionCompatibility.js +15 -0
  75. package/dist/editor/insertOptionCompatibility.js.map +1 -0
  76. package/dist/editor/menubar/ItemLanguageVersion.js +1 -1
  77. package/dist/editor/menubar/ItemLanguageVersion.js.map +1 -1
  78. package/dist/editor/menubar/VersionSelector.js +18 -6
  79. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  80. package/dist/editor/menubar/WorkflowButton.js +8 -3
  81. package/dist/editor/menubar/WorkflowButton.js.map +1 -1
  82. package/dist/editor/menubar/toolbar-sections/EditControls.js +1 -1
  83. package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
  84. package/dist/editor/notifications/NotificationCenter.js +26 -7
  85. package/dist/editor/notifications/NotificationCenter.js.map +1 -1
  86. package/dist/editor/notifications/useNotifications.d.ts +3 -1
  87. package/dist/editor/notifications/useNotifications.js +27 -9
  88. package/dist/editor/notifications/useNotifications.js.map +1 -1
  89. package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +18 -0
  90. package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
  91. package/dist/editor/page-editor-chrome/DragInsertionOverlay.js +1 -1
  92. package/dist/editor/page-editor-chrome/DragInsertionOverlay.js.map +1 -1
  93. package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js +30 -8
  94. package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js.map +1 -1
  95. package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js +30 -8
  96. package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js.map +1 -1
  97. package/dist/editor/page-editor-chrome/componentDragObject.d.ts +5 -4
  98. package/dist/editor/page-editor-chrome/componentDragObject.js +8 -8
  99. package/dist/editor/page-editor-chrome/componentDragObject.js.map +1 -1
  100. package/dist/editor/page-editor-chrome/overlay/placeholderZones.js +4 -9
  101. package/dist/editor/page-editor-chrome/overlay/placeholderZones.js.map +1 -1
  102. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.d.ts +5 -3
  103. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js +111 -19
  104. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js.map +1 -1
  105. package/dist/editor/page-viewer/EditorForm.d.ts +2 -1
  106. package/dist/editor/page-viewer/EditorForm.js +41 -12
  107. package/dist/editor/page-viewer/EditorForm.js.map +1 -1
  108. package/dist/editor/page-viewer/PageViewer.d.ts +2 -0
  109. package/dist/editor/page-viewer/PageViewer.js +11 -2
  110. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  111. package/dist/editor/page-viewer/PageViewerFrame.js +241 -46
  112. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  113. package/dist/editor/page-viewer/bridgeInlineAiSelection.d.ts +17 -0
  114. package/dist/editor/page-viewer/bridgeInlineAiSelection.js +80 -0
  115. package/dist/editor/page-viewer/bridgeInlineAiSelection.js.map +1 -0
  116. package/dist/editor/page-viewer/bridgeInlineEditCommit.d.ts +18 -0
  117. package/dist/editor/page-viewer/bridgeInlineEditCommit.js +24 -0
  118. package/dist/editor/page-viewer/bridgeInlineEditCommit.js.map +1 -0
  119. package/dist/editor/page-viewer/bridgeInlineEditSession.d.ts +3 -0
  120. package/dist/editor/page-viewer/bridgeInlineEditSession.js +30 -0
  121. package/dist/editor/page-viewer/bridgeInlineEditSession.js.map +1 -1
  122. package/dist/editor/page-viewer/bridgeItemChangeTarget.d.ts +9 -0
  123. package/dist/editor/page-viewer/bridgeItemChangeTarget.js +38 -0
  124. package/dist/editor/page-viewer/bridgeItemChangeTarget.js.map +1 -0
  125. package/dist/editor/page-viewer/bridgePointerDragRelease.d.ts +31 -0
  126. package/dist/editor/page-viewer/bridgePointerDragRelease.js +32 -0
  127. package/dist/editor/page-viewer/bridgePointerDragRelease.js.map +1 -0
  128. package/dist/editor/page-viewer/parentBridgeInjection.d.ts +4 -1
  129. package/dist/editor/page-viewer/parentBridgeInjection.js +54 -8
  130. package/dist/editor/page-viewer/parentBridgeInjection.js.map +1 -1
  131. package/dist/editor/page-viewer/renderUrl.d.ts +8 -0
  132. package/dist/editor/page-viewer/renderUrl.js +10 -0
  133. package/dist/editor/page-viewer/renderUrl.js.map +1 -1
  134. package/dist/editor/personalization/PersonalizationPanel.js +52 -25
  135. package/dist/editor/personalization/PersonalizationPanel.js.map +1 -1
  136. package/dist/editor/reviews/Comment.js +3 -1
  137. package/dist/editor/reviews/Comment.js.map +1 -1
  138. package/dist/editor/reviews/CommentDisplayPopover.js +2 -0
  139. package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
  140. package/dist/editor/reviews/Comments.js +16 -3
  141. package/dist/editor/reviews/Comments.js.map +1 -1
  142. package/dist/editor/reviews/ReviewDetail.js +4 -0
  143. package/dist/editor/reviews/ReviewDetail.js.map +1 -1
  144. package/dist/editor/reviews/SuggestedEdit.js +25 -2
  145. package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
  146. package/dist/editor/reviews/SuggestionCommentThread.js +2 -0
  147. package/dist/editor/reviews/SuggestionCommentThread.js.map +1 -1
  148. package/dist/editor/reviews/applySuggestedEditActions.js +105 -25
  149. package/dist/editor/reviews/applySuggestedEditActions.js.map +1 -1
  150. package/dist/editor/reviews/commentState.d.ts +4 -0
  151. package/dist/editor/reviews/commentState.js +15 -0
  152. package/dist/editor/reviews/commentState.js.map +1 -0
  153. package/dist/editor/reviews/feedbackOrdering.d.ts +1 -0
  154. package/dist/editor/reviews/feedbackOrdering.js +6 -0
  155. package/dist/editor/reviews/feedbackOrdering.js.map +1 -1
  156. package/dist/editor/reviews/suggestionContentChange.d.ts +7 -0
  157. package/dist/editor/reviews/suggestionContentChange.js +10 -0
  158. package/dist/editor/reviews/suggestionContentChange.js.map +1 -1
  159. package/dist/editor/reviews/suggestionPatch.js +6 -0
  160. package/dist/editor/reviews/suggestionPatch.js.map +1 -1
  161. package/dist/editor/reviews/useMultiReview.js +42 -17
  162. package/dist/editor/reviews/useMultiReview.js.map +1 -1
  163. package/dist/editor/reviews/useReviews.js +24 -5
  164. package/dist/editor/reviews/useReviews.js.map +1 -1
  165. package/dist/editor/services/personalizationService.js +30 -6
  166. package/dist/editor/services/personalizationService.js.map +1 -1
  167. package/dist/editor/services/suggestedEditsService.d.ts +1 -0
  168. package/dist/editor/services/suggestedEditsService.js +3 -0
  169. package/dist/editor/services/suggestedEditsService.js.map +1 -1
  170. package/dist/editor/settings/SettingsView.js +15 -7
  171. package/dist/editor/settings/SettingsView.js.map +1 -1
  172. package/dist/editor/settings/panels/MemoriesPanel.js +3 -2
  173. package/dist/editor/settings/panels/MemoriesPanel.js.map +1 -1
  174. package/dist/editor/settings/panels/ProjectTemplatesPanel.d.ts +3 -0
  175. package/dist/editor/settings/panels/ProjectTemplatesPanel.js +84 -15
  176. package/dist/editor/settings/panels/ProjectTemplatesPanel.js.map +1 -1
  177. package/dist/editor/settings/panels/projectTemplateDuplication.d.ts +5 -0
  178. package/dist/editor/settings/panels/projectTemplateDuplication.js +52 -0
  179. package/dist/editor/settings/panels/projectTemplateDuplication.js.map +1 -0
  180. package/dist/editor/sidebar/ComponentTree.js +24 -52
  181. package/dist/editor/sidebar/ComponentTree.js.map +1 -1
  182. package/dist/editor/ui/PerfectTree.js +2 -2
  183. package/dist/editor/ui/PerfectTree.js.map +1 -1
  184. package/dist/editor/ui/PublishRestrictionsDialog.js +9 -1
  185. package/dist/editor/ui/PublishRestrictionsDialog.js.map +1 -1
  186. package/dist/editor/utils.js +5 -2
  187. package/dist/editor/utils.js.map +1 -1
  188. package/dist/editor/views/EditorSlot.js +5 -1
  189. package/dist/editor/views/EditorSlot.js.map +1 -1
  190. package/dist/editor/views/SingleEditView.d.ts +4 -1
  191. package/dist/editor/views/SingleEditView.js +2 -2
  192. package/dist/editor/views/SingleEditView.js.map +1 -1
  193. package/dist/licensing/LicenseContext.js +7 -0
  194. package/dist/licensing/LicenseContext.js.map +1 -1
  195. package/dist/revision.d.ts +2 -2
  196. package/dist/revision.js +2 -2
  197. package/dist/revision.js.map +1 -1
  198. package/dist/task-board/TaskBoardWorkspace.js +5 -1
  199. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  200. package/dist/task-board/taskExecutionRecords.js +7 -0
  201. package/dist/task-board/taskExecutionRecords.js.map +1 -1
  202. package/dist/task-board/views/DependencyGraphView.d.ts +1 -0
  203. package/dist/task-board/views/DependencyGraphView.js +15 -12
  204. package/dist/task-board/views/DependencyGraphView.js.map +1 -1
  205. package/package.json +3 -3
@@ -36,29 +36,52 @@ export function SuggestedEditComponent({ edit, resolvedAuthorName, children, })
36
36
  const hasContentChange = hasSuggestionContentChange(edit.oldValue, edit.newValue);
37
37
  // Load the full item from the repository.
38
38
  useEffect(() => {
39
+ let cancelled = false;
39
40
  if (editContext?.itemsRepository &&
40
41
  edit.itemId &&
41
42
  getSuggestedEditItemLanguage(edit) &&
42
43
  getSuggestedEditItemVersion(edit) !== undefined) {
43
- editContext.itemsRepository
44
- .getItem({
44
+ const descriptor = {
45
45
  id: edit.itemId,
46
46
  language: getSuggestedEditItemLanguage(edit),
47
47
  version: getSuggestedEditItemVersion(edit),
48
+ };
49
+ const repository = editContext.itemsRepository;
50
+ void repository
51
+ .getItem(descriptor)
52
+ .then(async () => {
53
+ // A page reload can populate this cache before the preceding save
54
+ // acknowledgement reaches Sitecore. Patchability is a server-value
55
+ // decision, so the first value exposed by a suggestion card must be
56
+ // reconciled rather than briefly publishing a stale conflict state.
57
+ await repository.refreshItems([descriptor], {
58
+ fields: [edit.fieldId],
59
+ });
60
+ return repository.getItem(descriptor);
48
61
  })
49
62
  .then((loadedItem) => {
63
+ if (cancelled)
64
+ return;
50
65
  setItem(loadedItem);
51
66
  // When the item loads, check if the patch is applicable.
52
67
  checkAndComputePatch(loadedItem);
53
68
  })
54
69
  .catch((err) => {
70
+ if (cancelled)
71
+ return;
55
72
  console.error("Error loading item:", err);
56
73
  });
57
74
  }
75
+ return () => {
76
+ cancelled = true;
77
+ };
58
78
  }, [
59
79
  edit.itemId,
80
+ edit.itemLanguage,
81
+ edit.itemVersion,
60
82
  edit.mainItemLanguage,
61
83
  edit.mainItemVersion,
84
+ edit.fieldId,
62
85
  editContext?.itemsRepository,
63
86
  ]);
64
87
  const isSelected = editContext?.selectedSuggestedEdit?.id === edit.id;
@@ -1 +1 @@
1
- {"version":3,"file":"SuggestedEdit.js","sourceRoot":"","sources":["../../../src/editor/reviews/SuggestedEdit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SuggestedEdit.js","sourceRoot":"","sources":["../../../src/editor/reviews/SuggestedEdit.tsx"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { toast } from "sonner";
7
7
  import { CommentEditor, COMMENT_INPUT_PLACEHOLDER } from "./CommentEditor";
8
8
  import { CommentView } from "./CommentView";
9
9
  import { getCommentParentSnippet } from "./feedbackCommentRules";
10
+ import { markCommentRemoved } from "./commentState";
10
11
  function getCurrentReviewId() {
11
12
  if (typeof window === "undefined")
12
13
  return undefined;
@@ -107,6 +108,7 @@ export function SuggestionCommentThread({ suggestion, comments, compact = false,
107
108
  toast.error(result.details || result.summary || "Failed to delete comment");
108
109
  return;
109
110
  }
111
+ markCommentRemoved(comment.id);
110
112
  await editContext?.loadComments?.();
111
113
  }
112
114
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"SuggestionCommentThread.js","sourceRoot":"","sources":["../../../src/editor/reviews/SuggestionCommentThread.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SuggestionCommentThread.js","sourceRoot":"","sources":["../../../src/editor/reviews/SuggestionCommentThread.tsx"],"names":[],"mappings":"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"}
@@ -68,10 +68,20 @@ async function persistRebasedSibling({ sibling, baseValue, editContext, }) {
68
68
  return false;
69
69
  }
70
70
  async function rebaseSiblingSuggestions({ appliedEdit, newFieldValue, fieldItem, editContext, }) {
71
- const itemId = fieldItem?.id ?? appliedEdit.itemId;
72
- const itemLanguage = fieldItem?.language ?? getSuggestedEditItemLanguage(appliedEdit);
73
- const itemVersion = fieldItem?.version ?? getSuggestedEditItemVersion(appliedEdit);
74
- const siblings = getPendingFieldSuggestions(editContext.getCurrentSuggestedEdits(), {
71
+ // A sibling can be authored by another session after this editor's last
72
+ // snapshot. Refresh before discovering siblings so settlement uses the
73
+ // authoritative server set rather than only the cards this tab rendered.
74
+ // Consume the response that completed this refresh directly. Under load, a
75
+ // later realtime refresh can overlap this one; rereading only the mutable UI
76
+ // ref would make sibling discovery depend on React/request ordering.
77
+ const refreshedSuggestions = await editContext.loadSuggestedEdits?.();
78
+ const itemId = fieldItem?.id || appliedEdit.itemId;
79
+ const itemLanguage = fieldItem?.language || getSuggestedEditItemLanguage(appliedEdit);
80
+ const descriptorVersion = fieldItem?.version ?? 0;
81
+ const itemVersion = descriptorVersion > 0
82
+ ? descriptorVersion
83
+ : getSuggestedEditItemVersion(appliedEdit);
84
+ const siblings = getPendingFieldSuggestions(refreshedSuggestions ?? editContext.getCurrentSuggestedEdits(), {
75
85
  fieldId: appliedEdit.fieldId,
76
86
  itemId,
77
87
  language: itemLanguage,
@@ -84,7 +94,10 @@ async function rebaseSiblingSuggestions({ appliedEdit, newFieldValue, fieldItem,
84
94
  }).filter((candidate) => candidate.id !== appliedEdit.id && !isSuggestedEditRemoved(candidate.id));
85
95
  let failures = 0;
86
96
  for (const sibling of siblings) {
87
- const fresh = findFreshSuggestion(editContext, sibling.id);
97
+ // Prefer a live local version when one exists (especially a terminal
98
+ // socket update), but do not drop an authoritative server sibling merely
99
+ // because a concurrent UI snapshot has not installed it in the ref yet.
100
+ const fresh = findFreshSuggestion(editContext, sibling.id) ?? sibling;
88
101
  if (!fresh ||
89
102
  fresh.status !== "pending" ||
90
103
  isSuggestedEditRemoved(fresh.id)) {
@@ -123,6 +136,54 @@ async function rebaseSiblingSuggestions({ appliedEdit, newFieldValue, fieldItem,
123
136
  });
124
137
  }
125
138
  }
139
+ async function persistAppliedSuggestionStatus({ suggestion, appliedFieldValue, fieldWriteCompleted = false, acceptMatchingSibling = false, editContext, }) {
140
+ let current = suggestion;
141
+ const expectedFieldHash = acceptMatchingSibling
142
+ ? await sha256SuggestedEditFieldValue(appliedFieldValue)
143
+ : undefined;
144
+ for (let attempt = 0; attempt < 2; attempt += 1) {
145
+ const saveOptions = { expectedUpdated: current.updated };
146
+ if (acceptMatchingSibling) {
147
+ saveOptions.expectedFieldHash = expectedFieldHash;
148
+ saveOptions.acceptMatchingSibling = true;
149
+ }
150
+ const result = await createOrUpdateSuggestedEdit({ ...current, status: "applied" }, saveOptions);
151
+ if (result.type === "success" && result.data) {
152
+ upsertFromServer(editContext, result.data, suggestion.newValue);
153
+ return { type: "success", suggestion: result.data };
154
+ }
155
+ if (result.type !== "conflict") {
156
+ editContext.showErrorToast({
157
+ summary: result.summary ||
158
+ "Suggestion was applied but its status could not be saved",
159
+ details: result.details,
160
+ });
161
+ return { type: "error" };
162
+ }
163
+ const serverSuggestion = result.suggestion;
164
+ if (serverSuggestion)
165
+ upsertFromServer(editContext, serverSuggestion);
166
+ const sameSuggestionValue = serverSuggestion?.newValue === suggestion.newValue;
167
+ const fieldAlreadyApplied = result.fieldValue === appliedFieldValue;
168
+ if (serverSuggestion?.status === "applied" &&
169
+ sameSuggestionValue) {
170
+ return { type: "success", suggestion: serverSuggestion };
171
+ }
172
+ // The field write completed before the optimistic status update. If the
173
+ // only concurrent change was a newer version of the same pending
174
+ // suggestion, retry its status transition against that server version.
175
+ if (attempt === 0 &&
176
+ serverSuggestion?.status === "pending" &&
177
+ sameSuggestionValue &&
178
+ (fieldWriteCompleted || fieldAlreadyApplied || acceptMatchingSibling) &&
179
+ serverSuggestion.updated) {
180
+ current = serverSuggestion;
181
+ continue;
182
+ }
183
+ return { type: "conflict", suggestion: serverSuggestion };
184
+ }
185
+ return { type: "conflict" };
186
+ }
126
187
  async function applyOrReplaceSuggestedEdit({ suggestion, editContext, replace, allowRejected, }) {
127
188
  return enqueueSuggestedEditFieldTask(getActionKey(suggestion), async () => {
128
189
  const fresh = findFreshSuggestion(editContext, suggestion.id);
@@ -141,6 +202,16 @@ async function applyOrReplaceSuggestedEdit({ suggestion, editContext, replace, a
141
202
  language: getSuggestedEditItemLanguage(fresh),
142
203
  version: getSuggestedEditItemVersion(fresh),
143
204
  };
205
+ // Applying a suggestion is a consistency boundary. Finish any local
206
+ // debounced edit first, then reconcile the target item with Sitecore. A
207
+ // page load can otherwise cache the pre-save value while the preceding
208
+ // edit request is still completing, making every variant look like a
209
+ // conflict until another socket refresh happens to arrive.
210
+ await editContext.operations.prepareForModeChange?.();
211
+ await editContext.itemsRepository.getItem?.(itemDescriptor);
212
+ await editContext.itemsRepository.refreshItems?.([itemDescriptor], {
213
+ fields: [fresh.fieldId],
214
+ });
144
215
  const field = await editContext.itemsRepository.getField({
145
216
  item: itemDescriptor,
146
217
  fieldId: fresh.fieldId,
@@ -153,7 +224,29 @@ async function applyOrReplaceSuggestedEdit({ suggestion, editContext, replace, a
153
224
  ? fresh.newValue
154
225
  : applySuggestionPatchToValue(currentValue, fresh.oldValue, fresh.newValue);
155
226
  if (patchedCandidate === false || typeof patchedCandidate !== "string") {
156
- return { type: "patch-conflict" };
227
+ // Another client may have accepted a sibling variant after this action
228
+ // began. Ask the server to linearize this acceptance behind that winner.
229
+ // It verifies the live field hash and an exact same-baseline sibling in
230
+ // one authoritative snapshot, so delayed socket/UI state cannot strand
231
+ // the losing accept and an unrelated field edit remains a real conflict.
232
+ const actionResult = await persistAppliedSuggestionStatus({
233
+ suggestion: fresh,
234
+ appliedFieldValue: currentValue,
235
+ acceptMatchingSibling: true,
236
+ editContext,
237
+ });
238
+ if (actionResult.type === "success") {
239
+ await rebaseSiblingSuggestions({
240
+ appliedEdit: fresh,
241
+ newFieldValue: currentValue,
242
+ fieldItem: resolvedItemDescriptor,
243
+ editContext,
244
+ });
245
+ return actionResult;
246
+ }
247
+ return actionResult.type === "conflict"
248
+ ? { type: "patch-conflict" }
249
+ : actionResult;
157
250
  }
158
251
  await editContext.operations.editField({
159
252
  field: { fieldId: fresh.fieldId, item: resolvedItemDescriptor },
@@ -162,25 +255,12 @@ async function applyOrReplaceSuggestedEdit({ suggestion, editContext, replace, a
162
255
  forceMode: "edit",
163
256
  refresh: "immediate",
164
257
  });
165
- const result = await createOrUpdateSuggestedEdit({ ...fresh, status: "applied" }, { expectedUpdated: fresh.updated });
166
- let actionResult;
167
- if (result.type === "success" && result.data) {
168
- upsertFromServer(editContext, result.data, fresh.newValue);
169
- actionResult = { type: "success", suggestion: result.data };
170
- }
171
- else if (result.type === "conflict") {
172
- if (result.suggestion)
173
- upsertFromServer(editContext, result.suggestion);
174
- actionResult = { type: "conflict", suggestion: result.suggestion };
175
- }
176
- else {
177
- editContext.showErrorToast({
178
- summary: result.summary ||
179
- "Suggestion was applied but its status could not be saved",
180
- details: result.details,
181
- });
182
- actionResult = { type: "error" };
183
- }
258
+ const actionResult = await persistAppliedSuggestionStatus({
259
+ suggestion: fresh,
260
+ appliedFieldValue: patchedCandidate,
261
+ fieldWriteCompleted: true,
262
+ editContext,
263
+ });
184
264
  await rebaseSiblingSuggestions({
185
265
  appliedEdit: fresh,
186
266
  newFieldValue: patchedCandidate,
@@ -1 +1 @@
1
- {"version":3,"file":"applySuggestedEditActions.js","sourceRoot":"","sources":["../../../src/editor/reviews/applySuggestedEditActions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"applySuggestedEditActions.js","sourceRoot":"","sources":["../../../src/editor/reviews/applySuggestedEditActions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Comment } from "../../types";
2
+ export declare function markCommentRemoved(id: string): void;
3
+ export declare function isCommentRemoved(id: string): boolean;
4
+ export declare function filterRemovedComments(comments: Comment[]): Comment[];
@@ -0,0 +1,15 @@
1
+ // Comment ids are never reused. Keep successful deletions for the lifetime of
2
+ // the editor session so a delayed save/resolve websocket echo or an older REST
3
+ // snapshot cannot resurrect a comment after the server deleted it.
4
+ const removedCommentIds = new Set();
5
+ export function markCommentRemoved(id) {
6
+ if (id)
7
+ removedCommentIds.add(id);
8
+ }
9
+ export function isCommentRemoved(id) {
10
+ return removedCommentIds.has(id);
11
+ }
12
+ export function filterRemovedComments(comments) {
13
+ return comments.filter((comment) => !isCommentRemoved(comment.id));
14
+ }
15
+ //# sourceMappingURL=commentState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commentState.js","sourceRoot":"","sources":["../../../src/editor/reviews/commentState.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,+EAA+E;AAC/E,mEAAmE;AACnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,MAAM,UAAU,kBAAkB,CAAC,EAAU;IAC3C,IAAI,EAAE;QAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAU;IACzC,OAAO,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAmB;IACvD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;AACrE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { Comment, SuggestedEdit } from "../../types";
2
2
  export type FeedbackItem = Comment | SuggestedEdit;
3
3
  export declare function isSuggestedEdit(item: FeedbackItem): item is SuggestedEdit;
4
+ export declare function isResolvedFeedbackItem(item: FeedbackItem): boolean;
4
5
  export declare function getFeedbackActivityTime(item: FeedbackItem, suggestionCommentsBySuggestionId?: ReadonlyMap<string, Comment[]>): number;
5
6
  export declare function sortFeedbackItemsMostRecentFirst(items: FeedbackItem[], suggestionCommentsBySuggestionId?: ReadonlyMap<string, Comment[]>): FeedbackItem[];
@@ -1,6 +1,12 @@
1
1
  export function isSuggestedEdit(item) {
2
2
  return "oldValue" in item && "newValue" in item;
3
3
  }
4
+ export function isResolvedFeedbackItem(item) {
5
+ // Rejected suggestions stay actionable through "Apply anyway". Applied
6
+ // suggestions are the resolved state and follow the same Show Resolved
7
+ // filter as resolved comment threads.
8
+ return isSuggestedEdit(item) ? item.status === "applied" : !!item.isResolved;
9
+ }
4
10
  function parseCreatedTime(value) {
5
11
  if (!value)
6
12
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"feedbackOrdering.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackOrdering.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,eAAe,CAAC,IAAkB;IAChD,OAAO,UAAU,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,CAAC;AAClD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IAErB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAkB,EAClB,gCAAiE;IAEjE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAE5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAChC,CAAC,EACD,GAAG,CAAC,gCAAgC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACxE,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAClC,CACF,CAAC;IAEF,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,KAAqB,EACrB,gCAAiE;IAEjE,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SACvC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,cAAc,GAClB,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,gCAAgC,CAAC;YACjE,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAEpE,OAAO,cAAc,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"feedbackOrdering.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackOrdering.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,eAAe,CAAC,IAAkB;IAChD,OAAO,UAAU,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAkB;IACvD,uEAAuE;IACvE,uEAAuE;IACvE,sCAAsC;IACtC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;AAC/E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IAErB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAkB,EAClB,gCAAiE;IAEjE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAE5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAChC,CAAC,EACD,GAAG,CAAC,gCAAgC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACxE,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAClC,CACF,CAAC;IAEF,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,KAAqB,EACrB,gCAAiE;IAEjE,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SACvC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,cAAc,GAClB,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,gCAAgC,CAAC;YACjE,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAEpE,OAAO,cAAc,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,2 +1,9 @@
1
1
  export declare function hasSuggestionContentChange(oldValue: string | null | undefined, newValue: string | null | undefined): boolean;
2
2
  export declare function shouldRemoveNoOpSuggestion(oldValue: string | null | undefined, newValue: string | null | undefined, suggestionCommentCount: number | (() => number)): boolean;
3
+ /**
4
+ * Returns true only when the live field contains a third value: neither the
5
+ * suggestion's original baseline nor its current draft. A live value equal to
6
+ * the draft is commonly the editor's optimistic echo and must not prevent a
7
+ * subsequent revert from removing the suggestion.
8
+ */
9
+ export declare function hasLiveFieldDivergedFromSuggestion(originalValue: string | null | undefined, suggestedValue: string | null | undefined, liveValue: string | null | undefined): boolean;
@@ -26,4 +26,14 @@ export function shouldRemoveNoOpSuggestion(oldValue, newValue, suggestionComment
26
26
  : suggestionCommentCount;
27
27
  return count === 0;
28
28
  }
29
+ /**
30
+ * Returns true only when the live field contains a third value: neither the
31
+ * suggestion's original baseline nor its current draft. A live value equal to
32
+ * the draft is commonly the editor's optimistic echo and must not prevent a
33
+ * subsequent revert from removing the suggestion.
34
+ */
35
+ export function hasLiveFieldDivergedFromSuggestion(originalValue, suggestedValue, liveValue) {
36
+ return (hasSuggestionContentChange(originalValue, liveValue) &&
37
+ hasSuggestionContentChange(suggestedValue, liveValue));
38
+ }
29
39
  //# sourceMappingURL=suggestionContentChange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"suggestionContentChange.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionContentChange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,wEAAwE;AACxE,6EAA6E;AAC7E,yEAAyE;AACzE,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,8CAA8C;AAC9C,MAAM,UAAU,0BAA0B,CACxC,QAAmC,EACnC,QAAmC;IAEnC,MAAM,MAAM,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC9B,yEAAyE;IACzE,wEAAwE;IACxE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,QAAmC,EACnC,QAAmC,EACnC,sBAA+C;IAE/C,IAAI,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,KAAK,GACT,OAAO,sBAAsB,KAAK,UAAU;QAC1C,CAAC,CAAC,sBAAsB,EAAE;QAC1B,CAAC,CAAC,sBAAsB,CAAC;IAC7B,OAAO,KAAK,KAAK,CAAC,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"suggestionContentChange.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionContentChange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,wEAAwE;AACxE,6EAA6E;AAC7E,yEAAyE;AACzE,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,8CAA8C;AAC9C,MAAM,UAAU,0BAA0B,CACxC,QAAmC,EACnC,QAAmC;IAEnC,MAAM,MAAM,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC9B,yEAAyE;IACzE,wEAAwE;IACxE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,QAAmC,EACnC,QAAmC,EACnC,sBAA+C;IAE/C,IAAI,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,KAAK,GACT,OAAO,sBAAsB,KAAK,UAAU;QAC1C,CAAC,CAAC,sBAAsB,EAAE;QAC1B,CAAC,CAAC,sBAAsB,CAAC;IAC7B,OAAO,KAAK,KAAK,CAAC,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kCAAkC,CAChD,aAAwC,EACxC,cAAyC,EACzC,SAAoC;IAEpC,OAAO,CACL,0BAA0B,CAAC,aAAa,EAAE,SAAS,CAAC;QACpD,0BAA0B,CAAC,cAAc,EAAE,SAAS,CAAC,CACtD,CAAC;AACJ,CAAC"}
@@ -9,6 +9,12 @@ import { applyPatch, createPatch } from "diff";
9
9
  * both patches.
10
10
  */
11
11
  export function applySuggestionPatchToValue(currentValue, oldValue, newValue) {
12
+ // Applying a patch is idempotent once its target value is already present.
13
+ // diff.applyPatch cannot infer this for a replacement patch because the old
14
+ // hunk is necessarily absent, but suggestion settlement still needs to mark
15
+ // the pending edit applied (and settle any identical sibling suggestions).
16
+ if (currentValue === newValue)
17
+ return currentValue;
12
18
  const patch = createPatch("field", oldValue, newValue, undefined, undefined, {
13
19
  context: 0,
14
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"suggestionPatch.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionPatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CACzC,YAAoB,EACpB,QAAgB,EAChB,QAAgB;IAEhB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE;QAC3E,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"suggestionPatch.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionPatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CACzC,YAAoB,EACpB,QAAgB,EAChB,QAAgB;IAEhB,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,IAAI,YAAY,KAAK,QAAQ;QAAE,OAAO,YAAY,CAAC;IAEnD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE;QAC3E,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC"}
@@ -35,6 +35,11 @@ export function useMultiReview({ addSocketMessageListener, socketConnectionVersi
35
35
  const [reviewDetail, setReviewDetail] = useState(null);
36
36
  const [loading, setLoading] = useState(false);
37
37
  const [error, setError] = useState(null);
38
+ const selectedReviewIdRef = useRef(selectedReviewId);
39
+ selectedReviewIdRef.current = selectedReviewId;
40
+ const backgroundRefreshRunningRef = useRef(false);
41
+ const backgroundRefreshRequestedRef = useRef(false);
42
+ const backgroundDetailRefreshRequestedRef = useRef(false);
38
43
  const loadReviews = useCallback(async (options) => {
39
44
  const silent = options?.silent === true;
40
45
  try {
@@ -90,6 +95,36 @@ export function useMultiReview({ addSocketMessageListener, socketConnectionVersi
90
95
  }
91
96
  }
92
97
  }, []);
98
+ const scheduleBackgroundRefresh = useCallback((includeSelectedDetail) => {
99
+ backgroundRefreshRequestedRef.current = true;
100
+ backgroundDetailRefreshRequestedRef.current ||= includeSelectedDetail;
101
+ if (backgroundRefreshRunningRef.current)
102
+ return;
103
+ backgroundRefreshRunningRef.current = true;
104
+ void (async () => {
105
+ try {
106
+ // Socket messages can arrive in bursts (and the current page can
107
+ // receive both the global and page-scoped review event). Keep one
108
+ // refresh in flight and collapse everything received meanwhile into
109
+ // a single follow-up pass so state still converges to the newest data.
110
+ while (backgroundRefreshRequestedRef.current) {
111
+ backgroundRefreshRequestedRef.current = false;
112
+ const refreshDetail = backgroundDetailRefreshRequestedRef.current;
113
+ backgroundDetailRefreshRequestedRef.current = false;
114
+ const currentReviewId = selectedReviewIdRef.current;
115
+ await Promise.all([
116
+ loadReviews({ silent: true }),
117
+ refreshDetail && currentReviewId
118
+ ? loadReviewDetail(currentReviewId, { silent: true })
119
+ : Promise.resolve(),
120
+ ]);
121
+ }
122
+ }
123
+ finally {
124
+ backgroundRefreshRunningRef.current = false;
125
+ }
126
+ })();
127
+ }, [loadReviews, loadReviewDetail]);
93
128
  const createNewReview = useCallback(async (request) => {
94
129
  try {
95
130
  setLoading(true);
@@ -352,17 +387,13 @@ export function useMultiReview({ addSocketMessageListener, socketConnectionVersi
352
387
  // Broadcasts are background synchronization, not user-initiated
353
388
  // mutations. Keeping them silent prevents unrelated review activity
354
389
  // from disabling this review's decision controls while they refresh.
355
- loadReviews({ silent: true });
356
- if (selectedReviewId) {
357
- loadReviewDetail(selectedReviewId, { silent: true });
358
- }
390
+ const updatedReviewId = message.payload?.reviewId;
391
+ scheduleBackgroundRefresh(!updatedReviewId || updatedReviewId === selectedReviewIdRef.current);
359
392
  }
360
393
  });
361
394
  }, [
362
- selectedReviewId,
363
- loadReviews,
364
- loadReviewDetail,
365
395
  addSocketMessageListener,
396
+ scheduleBackgroundRefresh,
366
397
  ]);
367
398
  // Refetch on every socket (re)connect: "reviews-updated" broadcasts sent
368
399
  // while this client was disconnected or still connecting are gone for good,
@@ -374,24 +405,18 @@ export function useMultiReview({ addSocketMessageListener, socketConnectionVersi
374
405
  if (socketConnectionVersion === lastRefetchedConnectionVersion.current)
375
406
  return;
376
407
  lastRefetchedConnectionVersion.current = socketConnectionVersion;
377
- loadReviews({ silent: true });
378
- if (selectedReviewId) {
379
- loadReviewDetail(selectedReviewId, { silent: true });
380
- }
381
- }, [socketConnectionVersion, selectedReviewId, loadReviews, loadReviewDetail]);
408
+ scheduleBackgroundRefresh(true);
409
+ }, [socketConnectionVersion, scheduleBackgroundRefresh]);
382
410
  // Slow polling safety net: a broadcast can also be lost while the socket
383
411
  // stays connected (server-side broadcast pressure, tab throttling). Reviews
384
412
  // must not stay stale until the next reconnect, so refresh silently in the
385
413
  // background while the reviews UI is mounted.
386
414
  useEffect(() => {
387
415
  const interval = setInterval(() => {
388
- loadReviews({ silent: true });
389
- if (selectedReviewId) {
390
- loadReviewDetail(selectedReviewId, { silent: true });
391
- }
416
+ scheduleBackgroundRefresh(true);
392
417
  }, 20000);
393
418
  return () => clearInterval(interval);
394
- }, [selectedReviewId, loadReviews, loadReviewDetail]);
419
+ }, [scheduleBackgroundRefresh]);
395
420
  return useMemo(() => ({
396
421
  reviews,
397
422
  selectedReviewId,