From cae953e3e904c62909d9c4836ba7a0ec9d72116a Mon Sep 17 00:00:00 2001 From: Kiryl Pekarski Date: Mon, 5 Oct 2026 14:46:47 +0300 Subject: [PATCH 1/3] feat(visual-editing): let visual editing stega only the reads that ask for it --- .../payload-plugin-visual-editing/CLAUDE.md | 2 +- .../payload-plugin-visual-editing/README.md | 32 +++++++++++++-- .../src/index.ts | 21 +++++++++- .../src/internal/afterOperationHook.ts | 5 ++- .../src/internal/afterReadHook.ts | 8 +++- .../src/internal/gate.ts | 10 ++++- .../src/internal/globalAfterReadHook.ts | 5 ++- .../tests/gate.int.spec.ts | 39 +++++++++++++++++++ 8 files changed, 111 insertions(+), 11 deletions(-) diff --git a/packages/payload-plugin-visual-editing/CLAUDE.md b/packages/payload-plugin-visual-editing/CLAUDE.md index 7c1244cf..207814d0 100644 --- a/packages/payload-plugin-visual-editing/CLAUDE.md +++ b/packages/payload-plugin-visual-editing/CLAUDE.md @@ -19,7 +19,7 @@ Three layers. Each runs in a different context. - **Group key must include collection + docId + path + anchor.** See `src/client/overlay/markerExtractor.ts`. Keying by `path` alone conflates sibling-rendered docs (three FeatureSet cards with `path="title"` collapse to one LCA-wide target). Anchor alone does not differentiate either — plain text nodes have `anchor=null`. - **Scan skips `