Как рассуждать
- Native-команда
lispex mcp serveпредоставляет точный справочник установленного языка, ограниченный по размеру и времени авторский запуск доверенного исходника в Rust tree и поиск диагностики по локальному stdio. Это не sandbox для враждебного исходника, и детерминированных счётчиков всей работы и логических выделений нет. Команда не принимает путь, сетевой адрес или маршрут и не допускает поиск, запасной путь, хранение исходника или полномочия Ваучера. Тайм-аут или завершение worker не дают решения и переносимой квитанции. lispex [FILE|-]вычисляет исходник.receiptзаписывает конверт нативного выполнения, аlowerиeval-graphработают с проверяемым подмножеством.- Native-команда
lispex fmt [FILE|-]детерминированно пишет форматированный исходник в stdout. Тихий--checkвозвращает 0, если изменений не нужно, и 1, если байты изменятся.--writeбезопасно заменяет один именованный обычный файл. Проверка выполняется первой, а комментарии, pragma, tokens и написание литералов сохраняются точно. - В Native
core-ir buildпревращает точный исходник в разрешённыйlispex.core-ir/v1в его единственной закреплённой форме,core-ir validateстрого читает и перекодирует его, аcore-ir inspectдобавляет читаемую нормализованную проекцию. Все три команды ничего не исполняют и имеют границуintegrity-only, то есть говорят лишь о целости байтов. Прежнийlowerостаётся отдельной командой Meaning Graph. - В Native
bytecode buildпринимает строгий Core IR и записываетlispex.bytecode/v1в его единственной закреплённой форме.inspectиvalidateстрого читают его без выполнения, аbytecode runпроверяет и выполняет его вlispex-rust-vm/v1. Командаrun --backend rust --engine vmзадаёт маршрут из исходника в памяти, а стандартным остаётся tree. Ошибка VM не повторяется через tree. - Native
vouch compiled build|inspect|validateсоздаёт, проверяет структуру или точно заново выводит.lpxvcaиз отдельно названного исходника либо доказанного изображения. Команды печатают JSON в stdout, не исполняют правило и указываютauthority: integrity-only. Исполняют артефакт только явныеverify --reexecute --compiled-artifactиgate --compiled-artifact. compare-engines --receipt REPORT SOURCEзапускает оба Rust-движка, пишет неперезаписываемыйlispex.rust-engine-comparison/v1и завершает работу с кодом 1 при семантическом расхождении. Это регрессионное свидетельство одной линии, а не независимая квитанция или полномочие.bytecode run --engine topaz --topaz-vm ROOTвыбирает только точный установленный продукт Топаза 5.11 для macOS ARM64.compare-vms --topaz-vm ROOT --receipt REPORT SOURCEодин раз выводит байткод и записывает обе VM. Проверяются продукт, запрос, результат, полный ресурсu64и счётчики запасных путей, и ошибка Топаза не повторяется другим движком.- Native
aot buildопускает точный исходник через Core IR и байткод в читаемый Топаз, требует абсолютные точные пути Топаза и Rust и новый каталог.aot inspect|validateне выполняют продукт, аaot runне компилирует. Source-free продукт macOS ARM64 и результаты не имеют запасного пути и помеченыexecution-material-only. routes install --route topaz-vm|aot-compiler --target TARGET --catalog C --catalog-sha256 H --archive A --out Oпроверяет один точный локальный каталог, закреплённый до байта, вместе со stored-ZIP, затем создаёт новую установку без пути. Сеть, регистрация, выбор маршрута и запасной путь отсутствуют.routes fetch --route topaz-vm|aot-compiler --target TARGET --out Oвыбирает только точную target из каталога, встроенного в Native, выполняет одно ограниченное HTTPS-получение, проверяет точный архив и staged-продукт Топаза, затем создаёт ту же установку без пути. Нет подмены URL, перенаправления, повтора, регистрации, выбора маршрута или запасного пути. Сейчас официальный каталог содержит точные companion VM Топаза и AOT-компилятора только дляaarch64-apple-darwin.routes inventory [--topaz-vm TVM] [--aot-product AOT],routes lock --route ROUTE --out LOCKиroutes doctor --selection LOCKдиагностируют и закрепляют Native-маршрут без discovery и запасного пути. Файл закрепления записывает выбранный вами способ запуска, поэтому позже нельзя тихо подставить другой.routes measure --topaz-vm TVM --aot-product AOT --receipt R --measurement M --samples 1..9 SOURCEотделяет сравнение в закреплённой форме от времени, привязанного к host.routes run --selection LOCK [--topaz-vm TVM|--aot-product AOT] SOURCEповторно проверяет identity, запускает только закреплённый маршрут и возвращает одинlispex.route-run-result/v1.compare-routes --topaz-vm TVM --aot-product AOT --receipt REPORT SOURCEодин раз выводит Core IR и байткод, проверяет точное соответствие AOT, валидирует оба установленных продукта Топаза и явно запускает tree, Rust VM, VM Топаза и AOT. Неперезаписываемая диагностика разделяет семантические и сопоставимые ресурсные оси и не входит в Ваучер.- Native предоставляет полную namespaced-цепочку, а именно
vouch issue,vouch verifyбез флагов,vouch verify --reexecute,vouch gate --require-decisionиvouch inspect. npm предоставляет аутентифицированныйvouch verifyбез флагов, структурныйvouch inspectи корпусныйvouch replay, отклоняя issue,--reexecuteи проверку допуска до I/O артефактов. - Для аутентифицированного verify без флагов код 0 означает аутентификацию и допуск к диагностическому повышению, код 10 означает аутентификацию без такого допуска, код 1 означает отказ, код 2 означает ошибку использования до I/O артефакта, а код 3 означает ошибку ввода, вывода или публикации отчёта. Коды 0 и 10 оба означают аутентификацию и не дают полномочий.
- Плоская команда npm
lispex verify RECEIPTостаётся неподписанной структурной командой совместимости и не является псевдонимом namespaced-аутентификацииlispex vouch verify. - Успешный отчёт
--reexecuteсодержитauthentication.status=authenticated,reexecution.status=execution-agreed, фиксированныйobservation_scope=csk.vouch-complete-transcript/v0иcomparison.current_vs_signed=agree. vouch gateтребует все пути исходного контекста,--require-decision approve|deny|review|invalid-inputи--report-out. Отчётcsk.native-gate-report/v0разделяет аутентификацию, повторное выполнение и статус проверки допуска и записывает фиксированный basiscsk.current-native-agreement/v0.- Идентичность файла и stdin записывается явно там, где этого требует контракт артефакта.
- Используйте
lispex vouch policy createс одним именованным SPKI-файлом, повторяемыми явными флагами engine и source и новым выходом, затемpolicy checkдля точных байтов. Успех не пишет stdout. Код 2 означает ошибку использования, код 3 означает ошибку ввода, вывода, предела ресурсов или публикации, а код 1 означает некорректную конфигурацию. - Для полномочий Native с пакетом команды
vouch verify --reexecuteиvouch gateтребуют одновременно--source RULEи--input INPUT. Отсутствующая или неполная пара даёт usage-код 2 до открытия любого именованного артефакта.vouch verify --bundleбез флагов остаётся поддерживаемой проверкой только аутентификации в Native и npm. - Команды изображений Native и npm используют именованные пути, а именно
image encode --source SOURCE --out IMAGE,image inspect --image IMAGE,image decode --image IMAGE --out SOURCEиrun --image IMAGE. Encode требует.lspx.pngдля одной страницы или.lspx-images.zipдля набора. Ошибка использования даёт код 2, ошибка проверки или расширения даёт код 1, а ошибка ввода-вывода, предела ресурсов или неперезаписываемой публикации даёт код 3. - В командах Ваучера с контекстом source выберите ровно одно из двух,
--source RULEили--source-image IMAGE. Изображение читается в пределах установленного для изображений размера и полностью доказывается до передачи восстановленных байтов в вывод идентификаторов, политику, выдачу, аутентификацию, привязку запроса, повторное выполнение или проверку допуска. - Для закреплённой проверки пакета, повторного выполнения Native и проверки допуска флаг
--source-image IMAGEвсё равно требует отдельный--input INPUT. Незакреплённый пакет остаётся только аутентификацией и не достигает выполнения или разрешения.
Границы команд
| Команда | Читает | Пишет / не устанавливает |
|---|---|---|
| lispex mcp serve | локальные MCP-кадры в stdin | точные кадры reference/eval/diagnostic и фиксированного закрытого сравнения маршрутов в stdout, и при этом ни файлов, ни сети, ни поиска маршрутов, ни частичного сравнения, ни хранения исходника, ни выбора ответа, ни полномочий |
| lispex [FILE|-] | байты исходника Лиспекса | результат и stdout в закреплённой форме и диагностика, без квитанции |
| lispex fmt [--check|--write] [FILE|-] | корректный исходник Лиспекса в UTF-8 | форматированный исходник, тихий статус или безопасная замена файла, без выполнения |
| lispex receipt FILE | байты исходника | квитанция нативного выполнения, которая не является дифференциальной квитанцией Ваучера |
| lispex core-ir build --source S --out O | точные байты исходника | разрешённый Core IR в закреплённой форме и отчёт для именованного файла, без выполнения и полномочий |
| lispex core-ir validate --ir IR | байты Core IR в закреплённой форме | итог строгой проверки, без выполнения |
| lispex core-ir inspect --ir IR | байты Core IR в закреплённой форме | читаемая разрешённая проекция и идентификаторы, а отчёт не является исполняемым артефактом |
| lispex bytecode build --ir IR --out O | строгий Core IR в закреплённой форме | проверенные байты .lpxbc в закреплённой форме и итог для именованного файла, без выполнения и полномочий |
| lispex bytecode inspect --bytecode BC | байткод в закреплённой форме | identity, размеры, требования, opcode, roots и покрытие source map, без выполнения |
| lispex bytecode validate --bytecode BC | байткод в закреплённой форме | результат strict decode, verify и re-encode, без выполнения |
| lispex bytecode run --bytecode BC [--input I] | проверенный байткод и необязательный datum | stdout, предупреждения или диагностика VM, без полномочий Ваучера |
| lispex bytecode run --engine topaz --topaz-vm ROOT --bytecode BC [--input I] | точный продукт Топаза, байткод и необязательный datum | наблюдение Топаза в заданных пределах, без discovery, запасного пути и Ваучера |
| lispex run --backend rust --engine tree|vm FILE | исходник Лиспекса | выбранный Rust-движок, где tree по умолчанию и нет запасного пути VM |
| lispex compare-engines --receipt R FILE | исходник Лиспекса | точный отчёт сравнения tree/VM одной линии, без перезаписи и полномочий |
| lispex compare-vms --topaz-vm ROOT --receipt R FILE | исходник и точный продукт Топаза | неперезаписываемое сравнение Rust/Топаза, только differential evidence |
| lispex aot build --source S --topaz-compiler T --rust-tool-bin R --out O | точный исходник и точные абсолютные build tools | закрытый source-free Native-продукт, без перезаписи, запасного пути и полномочий Ваучера |
| lispex aot inspect|validate --product P | абсолютный установленный AOT-продукт | строгий невыполняющий результат inventory и identity |
| lispex aot run --product P [--input I] [--json] | установленный продукт, необязательный datum, лимиты u64 в закреплённой форме | прямое наблюдение executable, без компиляции, discovery, запасного пути и полномочий |
| lispex routes install --route R --target T --catalog C --catalog-sha256 H --archive A --out O | точный локальный каталог и stored-ZIP companion | новые installation.json и закрытый product/, без сети, регистрации, discovery, запасного пути и полномочий Ваучера |
| lispex routes fetch --route topaz-vm|aot-compiler --target T --out O | одна точная запись официального каталога, встроенного в Native | ограниченное HTTPS-получение и та же закрытая установка, без произвольного URL, перенаправления, повтора, регистрации, выбора, запасного пути и полномочий Ваучера |
| lispex compare-routes --topaz-vm TVM --aot-product AOT --receipt R [--input I] SOURCE | один точный запрос исходника и входа и два точных установленных продукта Топаза | неперезаписываемая квитанция четырёх маршрутов с семантическими и ресурсными осями, видимыми линиями и запасными путями, без повторов и Ваучера |
| lispex vouch compiled build (--source S|--source-image IMG) --out A | точные байты исходника | неперезаписываемый .lpxvca в закреплённой форме и JSON-итог, без аутентификации, выполнения и полномочий |
| lispex vouch compiled inspect --artifact A | контейнер в закреплённой форме и встроенный проверенный байткод | итог целостности, где выведение из исходника и выполнение не проверяются |
| lispex vouch compiled validate --artifact A (--source S|--source-image IMG) | контейнер и отдельно переданный точный исходник | точный результат source→Core IR→bytecode, без аутентификации, выполнения и полномочий |
| lispex vouch verify ... --reexecute --compiled-artifact A | аутентифицированный внешний закреплённый запрос и точно выведенный артефакт | csk.native-compiled-reexecution-report/v1 с согласием tree/Meaning и проверенной VM, но без разрешения |
| lispex vouch gate ... --compiled-artifact A | то же живое compiled-свидетельство и требуемое решение | csk.native-compiled-gate-report/v1 с локальным разрешением или отказом, а отчёт не является capability |
| lispex diff-receipt --input I RULE | правило профиля и datum | csk.differential-receipt/v0, что не является подлинностью |
| lispex verify RECEIPT | JSON квитанции и необязательный исходник | вердикт согласованности, и политика заново не запускается |
| lispex issue-native ... | правило профиля, закреплённый ввод, профиль и handle локального PKCS#8-ключа | атомарные payload, конверт DSSE и отчёт выдачи, только на нативном release-бинарнике |
| lispex verify-native ... | конверт DSSE, политика доверия потребителя, исходник, ввод, профиль и ожидаемый контекст движка | отчёт аутентификации точного проверенного контекста, без доказательства identity, времени, развёртывания или корректности политики |
| lispex verify-bridge REPORT | отчёт Bridge и связанные артефакты | вердикт Bridge, и внешний движок не запускается |
Частая ошибка
fmt не приводит значения литералов к одной закреплённой записи и не
выполняет программу. Написание 2/4, 1.00 и комментариев сохраняется точно. Некорректный исходник диагностируется до вывода в stdout
или замены файла. Форматирование доступно только в Native, и расширение не
переходит на npm, WebAssembly или Песочницу.
Для команд Core IR код 0 означает успешную сборку или строгое чтение, а не выполнение правила. Ошибка использования даёт код 2, ошибка исходника или проверки даёт код 1, а превышение предела либо ошибка ввода-вывода и публикации даёт код 3.
Для байткода код 0 означает успешные build, строгую проверку, inspection или выполнение. Некорректный Core IR, malformed bytecode, неверный ввод и обычная runtime-диагностика дают 1. Ошибки использования, engine и resource дают 2. Ошибка I/O артефакта или ввода, превышение входного предела и ошибка публикации именованного выхода или отчёта дают 3. Ошибка terminal при записи результата исполнения даёт 2. Artifact stdout содержит только байты, именованные выходы не перезаписываются, а байткод и ввод не могут одновременно читать stdin.
Для Топаза нужен абсолютный корень допущенного продукта macOS ARM64. Ошибки
identity, timeout, malformed result, resource и mismatch видимы без запуска
Rust/tree/LIL/LIT или другого Топаза. npm явно отклоняет core-ir,
bytecode, aot, compare-engines, compare-vms и compare-routes как
Native-only, а не принимает их за имена исходников.
Для vouch gate код 0 означает совпадение живого разрешения с требуемым решением, код 10 означает успешную аутентификацию без разрешения, код 1 означает отказ аутентификации, код 2 означает ошибку использования, а код 3 означает ошибку ввода-вывода, выполнения или публикации отчёта. Отчёт является диагностическим выводом и не принимается как вход следующей проверки допуска.
Для vouch compiled код 0 означает успешные build, inspect закреплённой формы
или проверку точного повторного выведения. Ошибка исходника, профиля,
контейнера или байткода и несовпадение повторного выведения дают 1. Дубликат,
отсутствие, конфликт или неизвестный флаг дают 2 до работы с артефактом. Ограниченный ввод-вывод и
отказ неперезаписываемой публикации дают 3. Build не заменяет существующий
файл. Inspect не проверяет выведение из исходника, поэтому для восстановления
используйте validate с точным исходником. --compiled-artifact без
--reexecute даёт usage 2.
Куда дальше
Выбор способа запуска сопоставляет поверхность продукта задаче развёртывания, а артефакты, которые эти команды читают и пишут, определяют справочники байткода и Core IR.
Байткод и Rust VM · Контракт Core IR · Выбор способа запуска