Эта страница описывает v1.14. Проверьте, является ли она текущим руководством: /version.json
Выполните правило возврата и сохраните предмет проверки.
Проверенное правило и строгий JSON-ввод дают одно ограниченное локальное решение. Каталог хранит подготовленное правило, канонический ввод, результат и допустимое переносимое ядро.
- 01Проверенное правило
- 02Строгий JSON-ввод
- 03Решение: allow
- 04Проверяемое ядро
1. Правило
(let ((days (cdr (car input)))
(opened (cdr (car (cdr input)))))
(if (< days 15)
(if opened "deny" "allow")
"deny"))2. Ввод
{
"days": 14,
"opened": false
}3. Локальный запуск
lispex rule run \
--source refund-window.lspx \
--input day-14-unopened.json \
--prepare-limits prepare-limits.json \
--eval-limits evaluation-limits.json \
--out decision
lispex rule inspect --dir decision
lispex rule verify --dir decision
lispex rule replay --dir decisionЗаказ на 14-й день с закрытым товаром возвращает allow.
Его можно изучить без выполнения, проверить точные байты или один раз повторить в свежем экземпляре вычислителя.
Что связывает ядро
Смысловое правило, канонический ввод, точные лимиты, артефакт вычислителя и детерминированный результат.
Чего ядро не разрешает
Личность издателя, свежесть, корректность политики, защиту от replay и внешнее действие.
Сначала прочтите решение
Правило задаёт только два вопроса: сколько дней прошло и был ли товар открыт. Оно не читает файлы, не обращается к сети или часам и не вызывает скрытые функции host-приложения.
| Ввод | Решение | Причина |
|---|---|---|
| 14-й день, товар закрыт | allow | заказ ещё в пределах срока |
| 15-й день, товар закрыт | deny | срок уже истёк |
| 14-й день, товар открыт | deny | открытый товар не допускается |
Значение allow или deny для рабочего процесса определяет приложение.
Lispex возвращает данные, но не оформляет возврат сам.
Зачем нужны четыре команды
| Команда | Действие |
|---|---|
rule run | подготавливает правило, вычисляет строгий JSON с точными лимитами и атомарно записывает каталог решения из пяти файлов |
rule inspect | читает и кратко описывает каталог без выполнения |
rule verify | без выполнения проверяет точный набор файлов, идентификаторы, хэши и связи |
rule replay | один раз выполняет записанный запрос в свежем экземпляре вычислителя и требует тот же результат |
Каталог содержит подготовленный артефакт, канонический ввод, детерминированный результат с точной привязкой запроса, допустимое переносимое ядро и производную неавторитетную сводку. Исходного текста правила в нём нет. Существующий результат не перезаписывается, а неверный ввод, изменённые или лишние файлы и символические ссылки отклоняются.
Квитанция и Vouch — разные процессы
Переносимое ядро связывает смысловое правило, канонический ввод, лимиты, точный артефакт вычислителя и детерминированный результат. Этого достаточно, чтобы проверить предмет вычисления.
Оно не устанавливает автора правила, свежесть запроса, справедливость политики, защиту от replay или разрешение на внешнее действие. Vouch — отдельный аутентифицированный процесс с привязкой к запросу. Даже его evidence не превращается во внешнее полномочие само по себе.
Где доступна команда
Процесс rule предоставляет Native-продукт. npm, публичный WASM, браузер и
Playground обучают или выполняют другие поддерживаемые поверхности, но не
предоставляют эти Native-команды.
Куда дальше
Соберите правило по шагам в разделе Первое решающее правило или изучите зафиксированный Контракт ограниченного вычислителя.