Przejdź do treści

KRET LANGUAGE ACADEMY · DOKUMENTACJA ZE ŹRÓDEŁ

Granice transportu i zgodność

ADVANCED40 minAnaliza / koncepcja
Postęp nauki 0 / 3
Zaloguj się na konto użytkownika, aby zachować postęp.

Czego się nauczysz

  • Prześledź źródła i wyjaśnij opisany kontrakt.
  • Narysuj granice broker ↔ plugin i broker ↔ usługa. Wymień warunki autoryzacji, których sama poprawność .klink nie zapewnia.
Wymagania wstępne
  • Ukończ Podstawy i wcześniejszy poziom tej ścieżki.

Wyjaśnienie krok po kroku

Nazwane potoki, tożsamość procesu, HMAC i terminy należą do implementacji transportu. Czytelnik kontraktu nie powinien zastępować ich własnym kanałem sieciowym. Materiał zaawansowany obejmuje analizę architektury i ograniczeń, bez ćwiczenia produkcyjnego RPC.

Materiały źródłowe do tego tematu

Przeczytaj powiązane rozdziały. Kod i kontrakty zachowano z importu; historia źródeł jest dostępna przy każdym rozdziale.

KretLink — zgodność i wersje / compatibility and versions
  • klink-1.0 + kretlink-rpc/1 1.0; rekordy, multi-host, strumienie od klienta — NOT_SUPPORTED.
  • kretlink-local/1 przyjmuje ramki do 1 MiB, broker czyta 512 KiB — znana niespójność (zgłoszona w SDK).
Otwórz cały rozdział ze źródłem →
KretLink — kody diagnostyczne / diagnostic codes
Kod / codePolski
KCS-LNK-0112wynik/argumenty ponad limit ramki
KCS-LNK-0116niepoprawny kontrakt/postać kanoniczna (powtórzone pole, zły rodzaj wartości, znaki sterujące)
KCS-LNK-0121metoda stream — eksperymentalna (ostrzeżenie)
KCS-ID-0009niepoprawny identyfikator korelacji podany klientowi

Format: kret-diagnostics/1 (kod, plik, wiersz, kolumna, zakres) / (code, file, line, column, range).

Otwórz cały rozdział ze źródłem →
KretLink — bezpieczeństwo / security
  • Sama możliwość połączenia z potokiem niczego nie dowodzi — wymagana tożsamość procesu i HMAC.
  • Kontrakt nie daje prawa do komunikacji; produkcyjne kretlink.* zablokowane (A17).
  • Ograniczenie: kod z pełnymi prawami użytkownika może odczytać sekret sesji z pamięci.
Otwórz cały rozdział ze źródłem →
KretLink — rozwiązywanie problemów / troubleshooting
Problem (PL)Rozwiązanie (PL)
KCS-LNK-0121 w kontrakcie KretBridgeostrzeżenie dla stream; kontrakt i tak się kompiluje
nieznany typ parametruużyj typów z listy; typy złożone w cudzysłowie
Otwórz cały rozdział ze źródłem →
KretLink — samouczek ADVANCED
Status 1.0: `FROZEN_SUPPORTED_SUBSET` — zamrożony dokładnie opisany zakres; reszta poza kontraktem 1.0. Gramatyka/wersja: klink-1.0. Status języka nie nadaje uprawnień KCS ani prawa do działania w Production.

Cel: integracja z Core i innymi językami, KretDB, bezpieczny dostęp do API, pluginy, stan, testy, diagnostyka, uprawnienia.

Narzędzia: kret = <SDK>\Compiler\kret.exe (SDK 1.0.0-rc.3+kret.local.3), kretui-host = <SDK>\UiHost\kretui-host.exe. {DATA}/{OUT} = nowe, puste katalogi.

Brak przykładów na tym poziomie dla tej technologii (zgodnie z zakresem implementacji).

Otwórz cały rozdział ze źródłem →

Ćwiczenie i sprawdzenie wiedzy

Narysuj granice broker ↔ plugin i broker ↔ usługa. Wymień warunki autoryzacji, których sama poprawność .klink nie zapewnia.

Szkic nie jest wysyłany na serwer i znika po opuszczeniu lekcji. Przed wyjściem możesz go skopiować.
Podpowiedzi
  • KretLink to wersjonowane kontrakty usług (`.klink`) i dwa protokoły: łącze broker↔plugin `kretlink-local/1` (stdin/stdout) oraz RPC `kretlink-rpc/1` na potokach nazwanych (tożsamość procesu, wzajemny HMAC, terminy). Kontrakt można walidować, ale **nie daje on prawa do komunikacji**. Eksport usług pluginów, `stream` w Core i produkcyjne uprawnienia `kretlink.*` są zablokowane (A17, FB-06).
  • Odczytaj ograniczenia i oczekiwane błędy z dostarczonego samouczka; check i run są oddzielnymi krokami.
Omówienie rozwiązania

Odpowiedź oprzyj na pokazanym kodzie i rozdziale źródłowym. Nazwane potoki, tożsamość procesu, HMAC i terminy należą do implementacji transportu. Czytelnik kontraktu nie powinien zastępować ich własnym kanałem sieciowym. Materiał zaawansowany obejmuje analizę architektury i ograniczeń, bez ćwiczenia produkcyjnego RPC.

Które podsumowanie jest zgodne z lekcją?

To quiz o opisanym kontrakcie. Nie kompiluje kodu, nie potwierdza wykonania programu i nie przyznaje nagród.

Podsumowanie i następny krok

Nazwane potoki, tożsamość procesu, HMAC i terminy należą do implementacji transportu. Czytelnik kontraktu nie powinien zastępować ich własnym kanałem sieciowym. Materiał zaawansowany obejmuje analizę architektury i ograniczeń, bez ćwiczenia produkcyjnego RPC.

Zaloguj się na konto użytkownika, aby zapisywać postęp i zakładki. Konta obsługi mogą czytać bez zapisu postępu. Logowanie →

Wybierz, co możemy zapamiętać w tej przeglądarce. Możesz zmienić decyzję w każdej chwili.

Polityka prywatności