- modules/lk: конверт запроса/ответа (PageRequest/PageResponse), ServeEnvelope — тот же
обработчик страниц внутри ядра; клиент к API внутри процесса (Config.Local/LocalKey);
режим ретранслятора (Config.Relay, BJ_RENDER=core, выбор в установщике и lk.json)
- ядро: встроенный кабинет (lkcabinet.go), POST /api/lk/render для прямого режима,
цикл режима ожидания выполняет конверты страниц; API через ретранслятор недостижимо
- PHP-ретранслятор для обычного хостинга (modules/lk/relay-php: index.php, .htaccess,
README): установщик в браузере, прямой режим через curl, режим ожидания через очередь
в SQLite (BEGIN IMMEDIATE, busy_timeout), конфиг в bj-lk-data рядом с сайтом или в
data под .htaccess; архив со страницы настроек (/admin/setup/lk/relay-php.zip)
- настройки: карточка НПР/УДС перенесена из раздела «Лицензия» в «Экспорт QUIK»;
кнопка «Обновить с сервера лицензий» видна при любом ключе
- инструкция /admin/help/lk: два варианта размещения, шаги для PHP-хостинга
- тесты: TestLKRelayRendersInCore (оба режима), TestLKPHPRelayAgentMode (настоящий PHP
против цикла ядра, PHP_BIN), проверка безопасности через PHP-ретранслятор 34/34
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q4YVo4UMopqT5DzicqpPjL
- установщик в самом кабинете: до настройки любая страница ведёт в /install; три шага —
проверка сервера (каталог данных, https), связь с ядром (режим, адрес, ключ; связь
проверяется до сохранения, в режиме ожидания страница ждёт подключения ядра),
администратор кабинета (заводится в ядре через /api/lk/admin/bootstrap, только пока
администраторов нет); настройки в data/lk.json 0600, окружение перекрывает файл;
после установки установщик закрыт
- настройки кабинета можно менять на ходу: Server за мьютексом, один mux на всё время
- ключ модуля больше не кладётся в архив: его вводят в установщике; на странице настроек
ключ показан целиком 10 минут после создания, потом маска
- ядро: карточка «Пользователи кабинета» в настройках — список, заведение, смена пароля
(гасит сессии), блокировка, права сотрудника, разрешение поручений, удаление; письма
не отправляются
- инструкция /admin/help/lk дополнена шагами установщика и разделом о подходящем хостинге
- тесты: TestInstaller, TestNotConfigured, TestSetupPageLKUsersAndLink; установщик
проверен вживую вторым экземпляром против боевого ядра
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>