KRET LANGUAGE ACADEMY · DOKUMENTACJA ZE ŹRÓDEŁ
Ten sam manifest w SDK i w Kret Engine (Core)
Pełniejszy manifest z sekcjami `environment`, `recovery`, `dependencies`, `runtimeData` i wszystkimi dziewięcioma operacjami cyklu życia. Ten sam projekt jest sprawdzany parserem SDK (`kret check`) i walidatorem referencyjnym Core (`KretCore.Test.exe check`), który dodaje reguły układu hosta (`Disk/`, mapa KretM, jedna generacja manifestu).
Witryna nie wykonuje kodu ani nie prowadzi walidacji SDK. Wyniki poniżej pochodzą z eksportu określonej wersji i przestają opisywać kod po jego zmianie.
Kanoniczne pliki projektu
module Main
// Każda operacja cyklu życia to funkcja KretS bez parametrów.
fn Install() {
}
fn Start() {
log.info("start")
}
fn Suspend() {
}
fn Resume() {
}
fn Update() {
}
fn Repair() {
}
fn Healthcheck() -> Bool {
return true
}
fn Shutdown() {
}
fn Uninstall() {
}
Czytanie kodu linia po linii
Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.
module MainDeklaracja modułu KretS; porównaj nazwę z nazwą pliku.Pusta linia oddziela fragmenty źródła.// Każda operacja cyklu życia to funkcja KretS bez parametrów.Komentarz autora; nie jest wykonywany.fn Install() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Start() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.log.info("start")Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Suspend() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Resume() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Update() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Repair() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Healthcheck() -> Bool {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.return trueZwrócenie wartości z funkcji; nie jest zapisem do dziennika.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Shutdown() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.fn Uninstall() {Sygnatura funkcji: nazwa, argumenty i ewentualny typ wyniku.}Zamknięcie struktury otwartej we wcześniejszych liniach.Pusta linia oddziela fragmenty źródła.
Wynik i typowy błąd
Oba narzędzia akceptują projekt (kod wyjścia 0). Core dodatkowo raportuje generację manifestu i wynik SDK.
Kod KretS w `Disk/` — SDK może go przyjąć, ale Core odrzuci projekt (`disk_reserved`): `Disk/` jest zastrzeżony dla danych KretDB.
Wymagania wersji i procedura lokalna
- sdk
- 1.0.0-rc.3+kret.local.3
- sdkInfoReports
- 1.0.0-rc.3
- core
- 1.0.0-test.6.11-draft.1
- os
- Windows 11 x64
- dotnet
- .NET 10 runtime
Polecenia poniżej są instrukcją do samodzielnego wykonania z właściwym lokalnym SDK. DATA/OUT muszą wskazywać nowe katalogi testowe. Nie ma przycisku uruchamiania na serwerze.
- sdk-check
kret check . --jsonKatalog: project · Oczekiwany kod wyjścia: 0 - core-check
core check {PROJECT}Katalog: core · Oczekiwany kod wyjścia: 0
Wyniki zapisane w pakiecie źródłowym
To dowód z eksportu, nie wynik bieżącego wykonania w przeglądarce.
# EXPECTED_OUTPUT — KRETL-A01-CoreCompatibility
# Rzeczywisty wynik uruchomienia (SDK 1.0.0-rc.3+kret.local.3, 2026-11-01T12:46:30Z). Ścieżki zastąpione znacznikami <project>, <data>, <out>, <sdk>.
# Actual output of the run. Paths replaced by placeholders.
### 1. sdk-check (exit 0, PASS)
> kret check . --json
{
"format": "kret-diagnostics/1",
"project": "<project>",
"succeeded": true,
"plugin": {
"id": "LOCAL-KPL-KLA2CMPT",
"name": "CoreCompatibility",
"version": "1.2.0",
"profile": "standard",
"database": false
},
"permissions": {
"required": [
"logs.own.write"
],
"optional": [
"system.ram.read"
]
},
"handlers": {
"lifecycle": [
"install",
"start",
"suspend",
"resume",
"update",
"repair",
"healthcheck",
"shutdown",
"uninstall"
],
"events": [],
"commands": []
},
"diagnostics": []
}
### 2. core-check (exit 0, PASS)
> core check {PROJECT}
{
"authority": "KRET_SDK_1.0.0-rc.3",
"checksPassed": true,
"runtimeSupported": false,
"sdk": {
"sdk": "1.0.0-rc.3",
"succeeded": true,
"diagnostics": {
"format": "kret-diagnostics/1",
"project": "<project>",
"succeeded": true,
"plugin": {
"id": "LOCAL-KPL-KLA2CMPT",
"name": "CoreCompatibility",
"version": "1.2.0",
"profile": "standard",
"database": false
},
"permissions": {
"required": [
"logs.own.write"
],
"optional": [
"system.ram.read"
]
},
"handlers": {
"lifecycle": [
"install",
"start",
"suspend",
"resume",
"update",
"repair",
"healthcheck",
"shutdown",
"uninstall"
],
"events": [],
"commands": []
},
"diagnostics": []
},
"exitCode": 0
},
"coreLayoutErrors": [],
"referenceSubset": {
"generation": "KRETL_V1_REFERENCE",
"profile": "KretL-v1-reference-subset.1",
"checksPassed": false,
"runtimeSupported": false,
"pluginId": "LOCAL-KPL-KLA2CMPT",
"lifecycle": [
"install",
"start",
"suspend",
"resume",
"update",
"repair",
"healthcheck",
"shutdown",
"uninstall"
],
"diagnostics": [
{
"code": "unsupported_field",
"severity": "error",
"file": "<project>\\plugin.kretl",
"line": 6,
"column": 5,
"message": "Field is outside the implemented reference subset: namespace"
},
{
"code": "unsupported_field",
"severity": "error",
"file": "<project>\\plugin.kretl",
"line": 40,
"column": 5,
"message": "Field is outside the implemented reference subset: recovery"
},
{
"code": "unsupported_field",
"severity": "error",
"file": "<project>\\plugin.kretl",
"line": 44,
"column": 5,
"message": "Field is outside the implemented reference subset: dependencies"
},
{
"code": "permissions_unresolved",
"severity": "warning",
"file": "<project>\\plugin.kretl",
"line": 12,
"column": 5,
"message": "Permission declarations remain ungranted until approved KCS mapping and consent."
},
{
"code": "unknown_field",
"severity": "error",
"file": "<project>\\plugin.kretl",
"line": 50,
"column": 9,
"message": "Unknown field in runtimeData: logs"
},
{
"code": "disk_path",
"severity": "error",
"file": "<project>\\plugin.kretl",
"line": 51,
"column": 13,
"message": "Database storage must remain under Disk/ in the reference subset."
},
{
"code": "reference_only",
"severity": "warning",
"file": "<project>\\plugin.kretl",
"line": 1,
"column": 1,
"message": "Experimental reference subset only; project execution and KretM/KretLink compatibility are not asserted."
}
]
}
}
Czytanie kodu linia po linii
Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.
# EXPECTED_OUTPUT — KRETL-A01-CoreCompatibilityOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.# Rzeczywisty wynik uruchomienia (SDK 1.0.0-rc.3+kret.local.3, 2026-11-01T12:46:30Z). Ścieżki zastąpione znacznikami <project>, <data>, <out>, <sdk>.Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.# Actual output of the run. Paths replaced by placeholders.Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.Pusta linia oddziela fragmenty źródła.### 1. sdk-check (exit 0, PASS)Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.> kret check . --jsonOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."format": "kret-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."project": "<project>",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."succeeded": true,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."plugin": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."id": "LOCAL-KPL-KLA2CMPT",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."name": "CoreCompatibility",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."version": "1.2.0",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."profile": "standard",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."database": falsePole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."permissions": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."required": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."logs.own.write"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.],Zamknięcie struktury otwartej we wcześniejszych liniach."optional": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."system.ram.read"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.]Zamknięcie struktury otwartej we wcześniejszych liniach.},Zamknięcie struktury otwartej we wcześniejszych liniach."handlers": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."install",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."suspend",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."resume",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."update",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."repair",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."healthcheck",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."shutdown",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."uninstall"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.],Zamknięcie struktury otwartej we wcześniejszych liniach."events": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."commands": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."diagnostics": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.}Zamknięcie struktury otwartej we wcześniejszych liniach.Pusta linia oddziela fragmenty źródła.### 2. core-check (exit 0, PASS)Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.> core check {PROJECT}Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."authority": "KRET_SDK_1.0.0-rc.3",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."checksPassed": true,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."runtimeSupported": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."sdk": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."sdk": "1.0.0-rc.3",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."succeeded": true,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."diagnostics": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."format": "kret-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."project": "<project>",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."succeeded": true,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."plugin": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."id": "LOCAL-KPL-KLA2CMPT",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."name": "CoreCompatibility",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."version": "1.2.0",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."profile": "standard",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."database": falsePole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."permissions": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."required": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."logs.own.write"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.],Zamknięcie struktury otwartej we wcześniejszych liniach."optional": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."system.ram.read"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.]Zamknięcie struktury otwartej we wcześniejszych liniach.},Zamknięcie struktury otwartej we wcześniejszych liniach."handlers": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."install",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."suspend",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."resume",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."update",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."repair",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."healthcheck",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."shutdown",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."uninstall"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.],Zamknięcie struktury otwartej we wcześniejszych liniach."events": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."commands": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."diagnostics": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."exitCode": 0Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach."coreLayoutErrors": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."referenceSubset": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."generation": "KRETL_V1_REFERENCE",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."profile": "KretL-v1-reference-subset.1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."checksPassed": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."runtimeSupported": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."pluginId": "LOCAL-KPL-KLA2CMPT",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."install",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."suspend",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."resume",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."update",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."repair",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."healthcheck",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."shutdown",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."uninstall"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.],Zamknięcie struktury otwartej we wcześniejszych liniach."diagnostics": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "unsupported_field",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 6,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Field is outside the implemented reference subset: namespace"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "unsupported_field",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 40,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Field is outside the implemented reference subset: recovery"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "unsupported_field",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 44,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Field is outside the implemented reference subset: dependencies"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "permissions_unresolved",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "warning",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 12,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Permission declarations remain ungranted until approved KCS mapping and consent."Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "unknown_field",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 50,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 9,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Unknown field in runtimeData: logs"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "disk_path",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 51,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 13,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Database storage must remain under Disk/ in the reference subset."Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.},Zamknięcie struktury otwartej we wcześniejszych liniach.{Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej."code": "reference_only",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."severity": "warning",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."file": "<project>\\plugin.kretl",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."line": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."column": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku."message": "Experimental reference subset only; project execution and KretM/KretLink compatibility are not asserted."Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.}Zamknięcie struktury otwartej we wcześniejszych liniach.]Zamknięcie struktury otwartej we wcześniejszych liniach.}Zamknięcie struktury otwartej we wcześniejszych liniach.}Zamknięcie struktury otwartej we wcześniejszych liniach.Pusta linia oddziela fragmenty źródła.Pusta linia oddziela fragmenty źródła.
Diagnostyka i raporty testów
null
Czytanie kodu linia po linii
Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.
nullOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
Pochodzenie i integralność
KRET_LANGUAGE_KRETL.zip:KretL/Examples/ADVANCED_CoreCompatibility/example.json
02_PLAYGROUND/EXAMPLES/KRETL-A01-CoreCompatibility.json
SHA-256 B3F999B8324CC4B9682393671EF9BF4F1AEADACBBA18205CBEF58A2A0800E20EMateriał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.
KRETL-A01-CoreCompatibility — Ten sam manifest w SDK i w Kret Engine (Core)
KRETL-A01-CoreCompatibility — Ten sam manifest w SDK i w Kret Engine (Core)
🇬🇧 English version below.
| Pole | Wartość |
|---|---|
| Technologia | KretL |
| Poziom | ADVANCED |
| Klasyfikacja | VALIDATION_ONLY — Tylko walidacja (bez wykonania) |
| Playground | LOCAL_VALIDATE — lokalnie: walidacja (kret check, lokalny walidator Playground) |
| SDK | 1.0.0-rc.3+kret.local.3 (kandydat lokalny, niepodpisany) |
| Wynik testu | TEST_RESULTS.json, rzeczywisty wynik: EXPECTED_OUTPUT.txt |
Co pokazuje
Pełniejszy manifest z sekcjami environment, recovery, dependencies, runtimeData i wszystkimi dziewięcioma operacjami cyklu życia. Ten sam projekt jest sprawdzany parserem SDK (kret check) i walidatorem referencyjnym Core (KretCore.Test.exe check), który dodaje reguły układu hosta (Disk/, mapa KretM, jedna generacja manifestu).
Pliki
| Plik |
|---|
Script/Main.krs |
plugin.kretl |
Jak uruchomić
Katalog roboczy: katalog tego przykładu. kret oznacza <SDK>\Compiler\kret.exe, kretui-host — <SDK>\UiHost\kretui-host.exe, core — KretCore.Test.exe z buildu Core (katalog roboczy: folder Core, {PROJECT} = pełna ścieżka tego przykładu). {DATA} / {OUT} to nowe, puste katalogi poza projektem. Wymagania: REQUIREMENTS.md.
kret check . --json— parser SDK (gramatykakretl-1.0)core check {PROJECT}— walidator referencyjny Core + reguły układu hosta
Oczekiwany wynik
Oba narzędzia akceptują projekt (kod wyjścia 0). Core dodatkowo raportuje generację manifestu i wynik SDK.
Najczęstszy błąd
Kod KretS w Disk/ — SDK może go przyjąć, ale Core odrzuci projekt (disk_reserved): Disk/ jest zastrzeżony dla danych KretDB.
Zaloguj się na konto użytkownika, aby zapisywać postęp i zakładki. Konta obsługi mogą czytać bez zapisu postępu. Logowanie →