KRET LANGUAGE ACADEMY · DOKUMENTACJA ZE ŹRÓDEŁ
Granice transportu i zgodność
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
KretLink — zgodność i wersje / compatibility and versions
Polski
klink-1.0+kretlink-rpc/11.0; rekordy, multi-host, strumienie od klienta — NOT_SUPPORTED.kretlink-local/1przyjmuje ramki do 1 MiB, broker czyta 512 KiB — znana niespójność (zgłoszona w SDK).
KretLink — kody diagnostyczne / diagnostic codes
KretLink — kody diagnostyczne / diagnostic codes
| Kod / code | Polski |
|---|---|
KCS-LNK-0112 | wynik/argumenty ponad limit ramki |
KCS-LNK-0116 | niepoprawny kontrakt/postać kanoniczna (powtórzone pole, zły rodzaj wartości, znaki sterujące) |
KCS-LNK-0121 | metoda stream — eksperymentalna (ostrzeżenie) |
KCS-ID-0009 | niepoprawny identyfikator korelacji podany klientowi |
Format: kret-diagnostics/1 (kod, plik, wiersz, kolumna, zakres) / (code, file, line, column, range).
KretLink — bezpieczeństwo / security
KretLink — bezpieczeństwo / security
Polski
- 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.
KretLink — rozwiązywanie problemów / troubleshooting
KretLink — rozwiązywanie problemów / troubleshooting
| Problem (PL) | Rozwiązanie (PL) |
|---|---|
KCS-LNK-0121 w kontrakcie KretBridge | ostrzeżenie dla stream; kontrakt i tak się kompiluje |
| nieznany typ parametru | użyj typów z listy; typy złożone w cudzysłowie |
KretLink — samouczek ADVANCED
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).
Ć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.
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 →