Как рассуждать
- Начальная линия v1 создала детерминированный reader, гигиенический normalizer, trampoline evaluator, числовой профиль, модель управления, основу библиотеки, WASM и Playground до первого сводного тега v1.2.
- v1.2 развил вторую проверяемую линию исполнения: canonical Core, Meaning Graph, галереи решений, differential receipts, offline verification, replay и проверенные мутациями границы свидетельств.
- v1.3 превратил эту основу в процессы Lispex Vouch и Bridge; v1.4 обновил поверхности native, npm, WASM, Playground и загрузок.
- v1.5 опубликовал ограниченные линии Lispex-in-Lispex и Lispex-in-Topaz, а затем ввёл первые типизированные границы аутентификации, повторного выполнения и локального gate в Vouch.
- v1.6 собрал переносимые инструменты Vouch с авторизацией точного source; v1.7 привязал любое применение с полномочиями к отдельно переданному потребителем запросу source/input.
- v1.8.0 добавил точные Lispex Images, не наделяя байты изображения полномочиями. v1.8.1 превратил Modern-документацию в систему обучения для новичка, v1.8.2 отделил нормативный профиль от поддержки интерпретаторов, последующие checkpoints завершили знаменатель возможностей LIL, v1.8.14 добавил инспекцию канонического разрешённого Core IR, v1.8.15 — проверенный Native-байткод и явную Rust VM, v1.8.16 — необязательное согласие compiled VM в Vouch с запросом, v1.8.17 — детерминированное форматирование и редактор, v1.8.18 — явное выполнение байткода в точной установленной Topaz 5.11 VM и сравнение Rust/Topaz, v1.8.19 — полно-профильный Native-маршрут Lispex-to-Topaz AOT, а v1.8.20 — единый неполномочный суд четырёх явных маршрутов.
- v1.9.0 публикует всю эту линию v1.8.x как единый продукт переносимого исполнения, не меняя профиль языка или стандартный маршрут Rust tree.
- Версии языка, пакета и контрактов артефактов связаны, но не обязаны меняться одновременно.
- Профиль runtime задаёт поведение вычисления, а именованные контракты CSK и Vouch — схемы своих артефактов. Совпадение номера пакета само по себе не устанавливает совместимость артефактов.
Значимые этапы v1
| Версия | Главное изменение | Граница |
|---|---|---|
| v1.9.0 | публикует как единый продукт систему обучения, сходимость LIL 205/205, канонический Core IR, проверенный байткод и Rust VM, request-bound compiled Vouch, форматирование исходника, явные exact Topaz VM/AOT и суд четырёх маршрутов | сохраняет lispex-profile-1.5, Rust tree как reference/default, различия поддержки и ресурсов маршрутов, нулевой fallback и typed-неповышение Vouch. Не заявляет доказательство всего профиля или независимого свидетеля, не меняет defaults F7 и не выдумывает compiled-маршруты npm/браузера/Песочницы |
| v1.8.20 | добавляет Native compare-routes: одно выведение frontend для исходника/входа, допуск точно соответствующего AOT, явное выполнение tree/Rust VM/Topaz VM/AOT и неперезаписываемую квитанцию lispex.route-comparison/v1 с семантическими и сопоставимыми ресурсными осями. Исправляет charge примитива и структурированные resource-fault AOT, детерминированно финализирует macOS executable с точными identity strip/sign и повторно связывает артефакт Topaz | сохраняет маршруты и default независимо, оставляет отсутствующие счётчики tree и реальные различия ресурсной диагностики видимыми, не повторяет ошибку через другой маршрут и не создаёт семейство, доказательство, evidence Vouch или gate. npm явно отклоняет команду; открытый WASM, браузер и Песочница не имеют замены |
| v1.8.19 | добавляет для Native macOS ARM64 полно-профильный Lispex-to-Topaz AOT: детерминированные читаемые Topaz и source map, допуск точных установленных инструментов сборки Topaz/Rust, строгие build, inspect, validate и run продукта без исходника, канонические полноразрядные ресурсы u64, диагностики, предупреждения и пять видимых нулевых fallback | сохраняет lispex-profile-1.5, восстановительные маршруты Rust tree/VM, отдельную Topaz VM, поведение npm/WASM/браузера/Песочницы и все typed-границы полномочий Vouch. AOT с приоритетом корректности — проверяемый исполняемый материал, а не межлинейная квитанция, доказательство эквивалентности, доверие производителю или вход gate |
| v1.8.18 | добавляет в Native для macOS ARM64 явный маршрут bytecode run --engine topaz --topaz-vm через точный установленный продукт Topaz 5.11 lispex-topaz-vm/v1, квитанции compare-vms над одним проверенным байткодом и сохраняет все операции компиляции Core IR/байткода в оптимизированном Native | Rust остаётся движком по умолчанию. Лиспекс строго связывает продукт, запрос, результат, identity байткода/входа, канонические полноразрядные ресурсы u64 и нулевой fallback; ошибка не запускает другой движок. Транспорт и сравнение Topaz диагностические, не входят в Vouch, не создают полномочий и не доказывают независимую эквивалентность всего языка. В npm, открытом WASM, Песочнице, других целях и AOT маршрута Topaz VM нет |
| v1.8.17 | добавляет детерминированный Native lispex fmt, тихий --check, безопасный --write и Format Document в VS Code/Open VSX с сохранением комментариев, pragma, tokens и исходного написания литералов | форматтер проверяет до вывода или замены и меняет только пробельное окружение; нет выполнения, изменения lispex-profile-1.5, канонизации значений, evidence или fallback в npm/WASM/Песочницу. Публикация в marketplaces и production-выпуск требуют отдельных полномочий |
| v1.8.16 | добавляет канонический lispex.vouch-compiled-artifact/v1, Native-команды vouch compiled build/inspect/validate, явный vouch verify --reexecute --compiled-artifact и compiled gate, требующий точного повторного выведения из исходника и совпадения протоколов текущих tree/Meaning и проверенной Rust VM | потребитель по-прежнему передаёт точные исходник и вход, аутентификация и текущий tree/Meaning остаются обязательными, fallback отсутствует. Обычный байткод, контейнер, хэш, отчёт, вывод VM или происхождение compiler не создают свидетельство или полномочие. VM относится к той же линии Rust, а не к независимому свидетелю; npm, открытый WASM и Песочница не предоставляют compiled Vouch |
| v1.8.15 | добавляет канонический бинарный lispex.bytecode/v1, строгий предисполнительный lispex.bytecode-verifier/v1, полный lispex-rust-vm/v1, команды Native bytecode build/inspect/validate/run, явный --engine vm для исходника и точные неперезаписываемые отчёты tree/VM | tree остаётся эталоном и стандартным движком, а выбранная VM не имеет fallback. Tree и VM разделяют Rust-значения и листья примитивов, поэтому сравнение — свидетельство одной линии, а не независимый бэкенд или доказательство. npm, открытый WASM и Песочница не предоставляют bytecode/VM; байткод, результат verifier, VM или сравнение не входят в цепочку полномочий Vouch |
| v1.8.14 | добавляет канонический lispex.core-ir/v1 для всего профиля со стабильными ID 205 примитивов, разрешёнными лексическими и глобальными ячейками, точными захватами замыканий и хвостовыми позициями, координатами исходника, аудиторской проекцией Canonical Core и командами Native core-ir build, validate, inspect | Core IR — невыполняемый материал integrity-only той же линии Rust: он не заменяет Meaning Graph, не аутентифицирует происхождение, не связывает запрос, не доказывает независимое согласие и не даёт полномочий Vouch; npm, открытый WASM и Песочница не предоставляют reader или команды Core IR |
| v1.8.13 | реализует в LIL %, list-first и list-rest с точными совместимыми предупреждениями W330/W331, повышая текущее покрытие возможностей с 202/205 до 205/205 | предупреждение возникает только при запуске настоящего deprecated-примитива, сохраняет порядок, выдаётся один раз на место исходника, остаётся при последующей ошибке и отделено от stdout, значений и диагностики; полное покрытие возможностей не утверждает эквивалентность всего языка, не меняет Rust или LIT, историческую квитанцию, полномочия Vouch и не разрешает production-выпуск |
| v1.8.12 | реализует в LIL display, write, newline и println через ограниченный private effect sink, повышая текущее покрытие с 198/205 до 202/205 | явный вывод и автопечать корневых результатов сохраняют точный порядок stdout, а завершённые значения получают отдельную typed-проекцию; rendering, возврат нуля значений, частичный вывод и arity совпадают с профилем без stdout host или fallback Rust. Deprecated-псевдонимы с предупреждениями, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы |
| v1.8.11 | реализует в LIL все 12 оставшихся процедур высшего порядка для коллекций через явные кадры продолжения гостевой машины, повышая текущее покрытие с 186/205 до 198/205, а guest-calling — с 6/18 до 18/18 | порядок callback, строгое boolean-короткое замыкание, контексты одного/отбрасываемых значений, символьный результат строки, снимок вектора, ошибки и одноразовые выходы остаются внутри LIL без callback host или fallback Rust; output-строки, deprecated-псевдонимы, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы |
| v1.8.10 | реализует в LIL девять операций деления с точными промежуточными значениями и свёртки gcd/lcm, а exact-integer expt и двухзначный exact-integer-sqrt допускает через записанное числовое ядро, повышая покрытие с 173/205 до 186/205 | знаки floor/truncate, contagion exactness, domain-ошибки и несколько значений совпадают с профилем; deprecated %, guest-calling и output-строки, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы |
| v1.8.9 | допускает сохраняющие exactness floor, ceiling, round, truncate, преобразование exact/inexact и проверку чётности через записанное числовое ядро host, а также реализует в LIL свёртки mixed-tower min/max, повышая покрытие с 161/205 до 173/205 | round остаётся half-even, а exact восстанавливает конечное двоичное значение; происхождение числового ядра явно, без % и семейства целочисленного деления, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.8 | допускает 18 предикатов, преобразований и сравнений без учёта регистра для символов и строк через явно записанное Unicode-ядро host LIL, повышая покрытие с 143/205 до 161/205 | происхождение ядра host остаётся явным; нет перехода к полной Unicode CaseFolding, locale collation, нормализации, скрытого fallback, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.7 | реализует внутри LIL копирование и навигацию по спискам, общий хвост, детерминированные конструкторы списков и строк, а также преобразование строк и векторов по индексам символов, повышая покрытие с 135/205 до 143/205 | нет устаревших alias с предупреждениями, нового делегирования или fallback в host, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.6 | реализует внутри LIL чувствительные к регистру цепочки порядка символов и строк по Unicode scalar и лексикографическому порядку, повышая покрытие с 127/205 до 135/205 | нет locale collation, нормализации, case folding, нового делегирования или fallback в host, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.5 | реализует внутри LIL три предиката башни конечных вещественных, структурный !=, memv, assoc, assq и assv, повышая текущее покрытие с 119/205 до 127/205 | нет нового делегирования или fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.4 | составляет внутри LIL abs, square, три предиката знака/нуля, boolean=? и symbol=?, повышая текущее покрытие с 112/205 до 119/205 | нет нового делегирования или fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.3 | реализует внутри написанного на Lispex ядра LIL все 27 недостающих составных селекторов пар от caar до cddddr, повышая текущее покрытие LIL с 85/205 до 112/205 | нет fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска |
| v1.8.2 | помечает все 205 текущих возможностей как нормативные profile-required, отдельно классифицирует решения host-only и future-profile и даёт каждому из 179 исторических расхождений пар одну проверяемую машиной основную причину | семантика языка, числа поддержки Rust/LIL/LIT, байты исторической квитанции, полномочия Vouch, изображения и граница production-выпуска не меняются; классификация не означает принятие или исправление |
| v1.8.1 | перестраивает Modern-документацию в курс для новичка из четырёх шагов, обзор синтаксиса, десять групп со сквозной нумерацией и 53 полноценные поверхности на английском, корейском и русском; в Загрузках появляются точная проверка версии, восстановление команд и официальные ссылки VS Code/Open VSX | меняются только документация и представление продукта; Classic сохранён побайтно, а lispex-profile-1.5, возможности Rust/LIL/LIT, формат изображений, схемы Vouch и типизированные полномочия не меняются |
| v1.8.0 | публикует точные Lispex Images как единый продукт на том же Rust для Native, npm, Node/browser WASM и локального Playground, а полностью доказанное изображение передаёт точные байты source в существующий Request-Bound Vouch | изображение сохраняет точные открытые байты source и commitments целостности, но не даёт секретности, подписи, provenance, независимого свидетеля, trust, свежести, выбора запроса, корректности решения или полномочия исполнения |
| v1.7.3 | полностью доказанное Lispex Image передаёт точные байты source в Native Vouch identity, policy, issue, inspect, authentication, re-execution и gate, а также в npm identity, policy и authenticated verify; поддерживаемый refund-window использует image-ingress по всей цепочке | изображение выбирает только представление source; обязательны consumer-owned binding source/input и прежняя typed-цепочка полномочий, а PNG/ZIP, inspection JSON, bundle и report не создают полномочия |
| v1.7.2 | расширяет единое Rust-ядро изображений на npm CLI, Node/browser WASM и полностью локальный Playground: создание/открытие, навигация по доказанным страницам, точное восстановление, скачивание и отдельный явный run; single/multipage bytes всех поверхностей совпадают с фиксированными C1 golden | same-core byte parity означает parity поставки, а не независимого свидетеля; локальные preview, inspection JSON, восстановленный source и download не являются Vouch evidence или полномочием |
| v1.7.1 | добавляет канонические изображения Lispex в Native: точное кодирование source в PNG/ZIP, inspection открытых commitments, побайтное декодирование и явное выполнение только после полного доказательства каноничности | каноничность изображения — это целостность, а не секретность, подпись, provenance, trust, request binding, Vouch evidence или полномочие исполнения; npm, public WASM и Playground пока не предоставляют image-операции |
| v1.7.0 | публикует Request-Bound Vouch как единый потребительский процесс: вывести exact identity, создать и проверить policy, выпустить bundle, аутентифицировать его в Native или npm с необязательным внешним запросом source/input, затем повторно выполнить и применить gate только к этому live-запросу в Native | unpinned-проверка bundle остаётся только аутентификацией; равенство запроса не означает свежесть, защиту от replay, identity, provenance, корректность policy или полномочие внешнего действия |
| v1.6.4 | делает verification-only npm Vouch WASM воспроизводимым до тех же отслеживаемых байтов из чистого, изменённого или перемещённого checkout и позволяет автономному аудиту export-поверхности работать из чистого checkout | фиксированные неаттестующие build placeholder и виртуальный путь исходников не являются Git provenance или заявлением о воспроизводимой сборке Native, browser WASM либо других платформ |
| v1.6.3 | Native re-execution и gate bundle требуют совпадающие внешние source/input и проводят к grant только live request-bound evidence; обновление локализованной документации добавляет пространство /v1.6 публичной minor-версии, Загрузки, нумерацию current/Classic, выровненные поверхности, краткие заголовки браузера, сбалансированный responsive hero, корейский wordmark 리스펙스 и единую читаемую locale-aware систему подписей для landing, форм/данных, результатов, pager и категорий меню | unpinned verify bundle остаётся только аутентификацией; равенство запроса не является свежестью, намерением или внешним полномочием |
| v1.6.2 | Pinned bundle verify в Native/npm сначала аутентифицирует, затем сравнивает отдельные точные байты source/input | точное равенство запроса не является свежестью, replay prevention, намерением человека или внешними полномочиями |
| v1.6.1 | Native/npm vouch key-id, engine-id и input-id вместе с source-id завершают публичный вывод identity общим Rust | identity не является происхождением, trust, проверкой input, аутентификацией, evidence или полномочием исполнения |
| v1.6.0 | объединяет portable bundle v0, key-local exact-source policy v1, общие Rust source-id/policy и raw/bundle-аутентификацию в один потребительский процесс Vouch | семантический профиль и схемы artifacts заморожены; только Native выдаёт, повторно выполняет или применяет gate |
| v1.5.8 | Native/npm vouch policy create/check составляет и проверяет каноническую потребительскую trust policy v1 общим Rust | корректная конфигурация не является выбором доверия, аутентификацией, evidence, re-execution, grant решения или внешними полномочиями |
| v1.5.7 | Native/npm vouch source-id --source выводит identity точных ограниченных байтов общим ядром Rust | вывод не является одобрением исходника, созданием policy, доверием к artifact, аутентификацией или evidence |
| v1.5.6 | trust policy v1 отклоняет полностью корректное подписанное правило, если точная identity исходника не разрешена выбранным ключом | v0 остаётся без ограничения исходника; нет одобрения input/request, свежести, защиты от replay или переносимых полномочий |
| v1.5.5 | ограниченный канонический bundle envelope/source/input; выдача/приём Native и приём npm только для аутентификации | trust/profile/decision снаружи; WASM и Playground не предоставляют аутентификацию Vouch |
| v1.5.4 | npm vouch verify аутентифицирует подписанные конверты Native и точные source/input/profile проверочной сборкой общего ядра Rust, совпадая с байтами отчёта v0 Native и результатами C-VN-06 | паритет упаковки одного ядра, а не независимый свидетель; npm не может выдавать, повторно выполнять, применять gate, раскрывать живое evidence или повышать сериализованный отчёт; public WASM и Playground не экспортируют аутентификацию |
| v1.5.3 | Native vouch gate --require-decision требует аутентификацию, текущее согласие полного transcript и точное совпадение решения до возврата локального grant | локальный результат процесса только для Native; сериализованные отчёты, Bridge и evidence только аутентификации не дают grant; нет утверждений о свежести, предотвращении replay, identity, корректности политики, развёртывании или разрешении внешнего действия |
| v1.5.2 | namespaced-процесс Vouch, поддерживаемый сценарий окна возврата, граница capabilities LIL 85/205 и нативный vouch verify --reexecute с раздельными результатами аутентификации и согласия текущего выполнения | повторное выполнение доступно только в native и остаётся наблюдением одной линии Rust; нет утверждений об историческом выполнении, свежести, независимом свидетеле, авторизации, корректности политики или эквивалентности всего языка |
| v1.5.1 | нативная выдача Vouch: допустимые проверенные решения формируются и подписываются как конверты DSSE, затем аутентифицируются по политике доверия потребителя | только нативные release-бинарники; действительная подпись разрешает ключ для точных проверенных байтов, но не доказывает личность, время, честность развёртывания, корректность политики или более широкую семантическую эквивалентность |
| v1.5.0 | ограниченные линии LIL и LIT, реестры capabilities 84 из 205, общая квитанция трёх семейств и согласованная поставка native/npm/WASM/Playground | все три семейства совпадают в 59 из 144 случаев; 179 попарных расхождений раскрыты; нет утверждений о всём языке или независимости исходника LIT |
| v1.4.0 | обновление runtime и поставки: apply и multiple values в проверяемом evaluator, ограниченный receipt fuel, согласование native/npm/WASM/Playground и закреплённые native downloads | предыдущий публичный выпуск; native и WASM остаются одной линией Rust |
| v1.3.11 | канонический read-side Bridge, closed-world nested checks, проверка связанных артефактов и optional context | усиление native canonical reader осталось отложенным |
| v1.3.10 | adversarial-проверки классов артефактов и явные non-goals подлинности | без подписей, issuer binding, timestamping и non-repudiation |
| v1.3.9 | корпус welfare-style replay из 12 случаев | пример evaluation artifact, не юридическая или policy-модель |
| v1.3.8 | форма отчёта Vouch Bridge, offline checker и пример внешнего движка | checker не запускает и не доказывает внешний движок |
| v1.3.1-v1.3.7 | замкнут практический цикл Vouch: native receipt generation, identity release-build движка, offline verify, versioned replay corpus и явная граница подлинности | Vouch записывает объявленное исполнение и связи байтов; не добавляет подпись или доверие издателю |
| v1.3.0 | decision receipts проверяемого профиля, offline verify, replay и release gates | ограниченный профиль, не утверждение корректности всего языка |
| v1.2.15-v1.2.19 | реестр внешних Scheme-oracle, авторские semantic vectors, строгие readers артефактов, tamper fixtures и mutation drills | усиление и измеренные свидетельства, не доказательство полной совместимости Scheme |
| v1.2.14 | расширен проверяемый профиль решений и галерея: search, rounding, обход any/all, строгие faults и более ясный replay | исполнение профиля, не вся поверхность языка Lispex |
| v1.2.9-v1.2.13 | граница проверяемого профиля, intrinsic binding, галерея control/arithmetic, closures и обходы, host-input binding, npm offline verify и replay UX | вошло единым baseline; промежуточные номера были этапами контрактов, а не отдельными тегами |
| v1.2.2-v1.2.8 | версионированные canonical Core, execution receipt, conformance manifest, Meaning Graph и lowering, отдельный evaluator Meaning Environment и differential receipt contract | проверяемое подмножество и линия артефактов рядом с reference interpreter, а не его замена |
| v1.2.0 | первый сводный тег v1; добавлены восстанавливаемые raise, guard и with-exception-handler, а также native, Node/WASM, Playground и downloads | handlers используют закреплённую модель управления Lispex, а не исключения host |
| Начальная линия v1 (2026-06-28/29) | детерминированный reader, гигиенический normalizer, trampoline evaluator, exact integer/rational и finite-real профиль, закреплённый rendering, one-shot upward call/cc, dynamic-wind, multiple values, proper-tail apply, широкие R7RS-shaped процедуры, WASM и Playground | не выпуск v1.0 или v1.1; это датированные коммиты, позже объединённые в v1.2 |
Частая ошибка
В репозитории нет release-тегов v1.0 или v1.1. Поэтому «начальная линия v1» — датированный этап реализации, а не выдуманный выпуск.
Текущие границы
- Утверждения о backend ограничены именованными строками capabilities, маршрутами hosts, корпусами и квитанциями.
- Хронология опускает правки только текста, CI-churn, обновления хэшей, механику ревью и репетиции выпуска, если они не меняли пользовательскую возможность или существенную границу проверки.
- Исторические изменения receipt и Bridge не означают новую семантику языка, если это не сказано явно.
Куда дальше
Практический вход находится во введении, а точная история каждого выпуска — в разделе «История».