page-save-origin-semantics
Auto-invoked when modifying origin-based conflict detection, revision validation logic, or isUpdatable() method. Explains the two-stage origin check mechanism for conflict detection and its separation from diff detection.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Auto-invoked when modifying origin-based conflict detection, revision validation logic, or isUpdatable() method. Explains the two-stage origin check mechanism for conflict detection and its separation from diff detection.
How to use
Zainstaluj skill w swoim środowisku Claude'a, wskazując repozytorium growilabs/growi. Skill będzie automatycznie wywoływany, gdy będziesz modyfikować logikę związaną z conflict detection, revision validation lub metodę isUpdatable().
Gdy pracujesz nad zmianami w pliku PageEditor.tsx (linia 158), sprawdź logikę pierwszego etapu: czy origin najnowszej rewizji jest undefined (wymaga wysłania revisionId) czy równy "editor"/"view" (nie wysyłaj revisionId). Skill wyjaśni, dlaczego ta logika jest ważna dla edycji współpracowniczej.
Podczas modyfikacji backend'u (obsolete-page.js, linie 167-172), zrozum drugi etap: jeśli origin żądania to "editor" i najnowsza rewizja to "editor" lub "view", system pomija sprawdzenie rewizji. W przeciwnym razie wymusza ścisłe dopasowanie numerów rewizji.
Pamiętaj o kluczowym rozróżnieniu: conflict detection (czy rewizja się zgadza) to coś innego niż diff detection (czy zawartość się zmieniła). Nie łącz tych logik — każda ma swoje miejsce w kodzie.
Przed zatwierdzeniem zmian w logice origin, skonsultuj się ze skillem, aby upewnić się, że nie złamałeś dwuetapowego mechanizmu sprawdzenia. Skill wskaże, które części kodu są krytyczne dla systemu edycji współpracowniczej z Yjs.