docs/plans/2026-03-24-full-repo-coverage-roadmap.md
Freeze the remaining high-ROI whole-repo coverage work into one stable roadmap now that the non-React phase is finished.
>= 8 from 2026-03-24-coverage-priority-files-testing-review-full-repo.tsv.done, removed, or deferred. Do not reshuffle the whole roadmap unless:
score >= 9 file.score = 8 file.[done] 10 applyAISuggestions.ts[done] 10 useCursorOverlay.ts[done] 10 submitAIChat.ts[done] 10 useTocSideBar.ts[done] 10 callCompletionApi.ts[done] 10 useBlockSelectable.ts[done] 10 EmojiFloatingLibrary.ts[done] 10 getSelectionRects.ts[done] 10 applyTableCellSuggestion.ts[done] 10 triggerCopilotSuggestion.ts[done] 10 triggerFloatingLinkInsert.ts[done] 10 acceptAISuggestions.ts[done] 10 rejectAISuggestions.ts[done] 10 resetAIChat.ts[done] 10 getCursorOverlayState.ts[done] 10 getCaretPosition.ts[done] 9 useSelectionArea.ts[done] 9 useComboboxInput.ts[done] 9 useEquationInput.ts[done] 9 useEmojiPickerState.ts[done] 9 useContentController.ts[done] 9 useContentObserver.ts[done] 9 useChatChunk.ts[done] 9 EmojiFloatingGridBuilder.ts[done] 9 useTableMergeState.ts[done] 9 useEditorChat.ts[done] 9 useTocObserver.ts[done] 9 history.ts[done] 9 useRequestReRender.ts[done] 9 useAIChatEditor.ts[done] 9 useRefreshOnResize.ts[done] 9 useTocController.ts[done] 9 EmojiFloatingGrid.ts[done] 9 triggerFloatingLinkEdit.ts[done] 9 triggerFloatingLink.ts[done] 9 getListNode.ts[done] 9 isSameNode.ts[done] 9 getLastEntryEnclosedInToggle.ts[done] 9 selectInsertedBlocks.ts[done] 9 isInClosedToggle.ts[done] 8 useEmojiPicker.ts[done] 8 useCursorOverlayPositions.ts[done] 8 useExcalidrawElement.ts[done] 8 useTocElement.ts[done] 8 EmojiObserver.ts[done] 8 useHTMLInputCursorState.ts[done] 8 useEmojiDropdownMenuState.ts[done] 8 usePlaceholderPopover.ts[done] 8 useCalloutEmojiPicker.ts[done] 8 useListToolbarButton.ts[done] 8 useTodoListElement.ts[done] 8 useTodoListToolbarButton.ts[done] 8 useTodoListElement.ts[done] 8 useListToolbarButton.ts[done] 8 nestedContainerUtils.ts[done] 8 useToggleToolbarButton.ts[done] 8 useToggleButton.ts[done] 8 pasteSelectedBlocks.ts[done] 8 nodesWithProps.ts[done] 8 useBlockSelectionNodes.ts[done] 8 findElementIdsHiddenInToggle.ts[done] 8 getLastAssistantMessage.ts[done] 8 getEnclosingToggleIds.ts[deferred] score-7 ring and below
Reason: still real, but the clean stop for this phase is the full score >= 8 queue. Rerun coverage before touching the score-7 leftovers.[deferred] thin plugin entrypoints and wrapper components that still score high only because the hook cluster under them is uncovered
Reason: the hook or util is the seam. Testing the wrapper too early is coverage cosplay.[deferred] giant architecture slabs outside this threshold, like PlateEditor.ts and getSelectedDomFragment.tsx
Reason: real seams, but not the best spend before the current React hook and util queue is finished.[done]. Do not remove it.[removed] with a one-line note.[deferred] with a reason.