Frontier
Łączenie warstw
Czy osobisty, zespołowy i aplikacyjny KMS mogą się łączyć? Jak? Co płynie w którą stronę?
[ aktywne badania ]
Otwarte pytanie
Trzy warstwy istnieją w prawdziwym życiu równocześnie. Mam osobisty KMS, pracuję w zespołowym KMS-ie i wbudowuję aplikacyjne KMS-y w produkty. Teraz są to osobne systemy, które ręcznie mostkuję — kopiując notatkę klienta z zespołowego KMS-u do mojego osobistego, wynosząc osobisty wniosek w dokumencie zespołowym.
Pytanie: jak wyglądałoby, gdyby te systemy się łączyły?
Nie „zlewały się" — mają różne granice zaufania, różne tempa aktualizacji, różne schematy. Łączenie oznacza: współdzielone encje są rozpoznawane jako ta sama rzecz między warstwami; aktualizacje w jednej mogą być wyniesione (za zgodą) w drugiej; wnioski kumulują się przez granicę.
Obecne myślenie
Trzy podpytania, do żadnego nie ma jeszcze czystej odpowiedzi:
1. Tożsamość encji między warstwami
Jeśli Sam jest encją w moim osobistym KMS-ie, w zespołowym KMS-ie i w aplikacyjnym KMS-ie skupionym na BD, czy te trzy strony Sama są tą samą encją? Trzema widokami jednej encji? Trzema niezależnymi encjami, które się linkują? Moje obecne nastawienie to trzy widoki jednej encji — z kanonicznym identyfikatorem encji żyjącym w małym współdzielonym rejestrze i każdą warstwą renderującą własny widok.
Otwarte: kto jest właścicielem rejestru? Pierwszeństwo-warstwy-osobistej wydaje się właściwe (kanoniczny Sam żyje w mojej, a inne warstwy się do niego odnoszą), ale to pęka w chwili, gdy Sam pojawia się w zespołowym KMS-ie, nie pojawiwszy się wcześniej w osobistym.
2. Propagacja wniosków
Jeśli dowiem się czegoś w osobistej sesji, co jest istotne dla decyzji zespołowej, wniosek powinien propagować — ale nie po cichu i nie bez zgody. Obecna najlepsza propozycja: akcja „promuj do" przy każdym wniosku w osobistym KMS-ie, z jawnymi celami (zespołowy KMS, BD-appowy KMS, publiczny) i jednozdaniowym stwierdzeniem tego, co jest promowane i dlaczego.
Zasada fali chce, żeby było to automatyczne. Granice zaufania chcą, żeby było jawne. Kompromisem jest automatyczne wykrywanie, ręczna promocja.
3. Sprzeczność między warstwami
Najcenniejszym zachowaniem międzywarstwowym byłoby międzywarstwowe wykrywanie sprzeczności: „osobista notatka mówi, że Sam skłania się ku zostaniu; notatka zespołowa mówi, że Sam skłania się ku odejściu". Dziś wymaga to, żebym pamiętał obie notatki. Połączony system wyniósłby konflikt.
Ale: sprzeczność między warstwami jest również najbardziej inwazyjnym zachowaniem. Implikuje, że warstwa zespołowa może czytać w warstwę osobistą (lub odwrotnie) wystarczająco głęboko, żeby porównywać twierdzenia. Tutaj asymetria kierunkowa z ryzyka międzywarstwowego ściera się z ambicją wykrywania sprzeczności w obu kierunkach.
Znane pozycje
- Odpowiedź osobistego KMS-u: linki międzywarstwowe są pierwszoklasowe, ale propagacja jest jednokierunkowa (osobisty KMS czyta z innych warstw; nigdy nie pisze do nich bez jawnej promocji).
- Odpowiedź zespołowego KMS-u: izolacja tenantów; łączenie między tenantami jest zakazane z założenia. Osobisty KMS użytkownika siedzi poza granicą tenanta.
- Inni praktycy: nie widziałem poważnego opublikowanego opracowania łączenia międzywarstwowego. Tana, Anytype, Roam wszystkie gestykulują w jego stronę; żaden, którego używałem, tego nie rozwiązuje.
Co by to rozstrzygnęło
Działający prototyp, w którym jedna współdzielona encja (Sam) jest renderowana poprawnie w osobistym, zespołowym i BD-appowym KMS-ie, z maleńkim współdzielonym rejestrem, i w którym mogę odpowiedzieć na „co każda warstwa mówi o tej encji?" w jednym zapytaniu bez ręcznego sklejania. To następny eksperyment.
Related frontiers
Rev. 2026-04-18