verstak/frontend
mirivlad 4df83cd361 security: стабилизационный аудит Lua plugin system
Исправления:
- Install: идемпотентность (no duplicates in InstalledPlugins)
- ReloadPlugins: StopSchedulers + CallShutdownHooks перед CloseRuntimes
- StopSchedulers: обнуление scheduler=nil после остановки
- Scheduler.Stop: обнуление tasks после wg.Wait
- Lua sandbox: блокировка package.loadlib/seeall/preload/loaders/loaded/path/cpath/config/searchpath
- Lua sandbox: блокировка load (глобальная функция)
- CallPluginFunction: валидация funcName (regex [a-zA-Z_][a-zA-Z0-9_]*, max 3 segments)
- CallPluginFunction: убрана строковая сборка Lua-кодa, вызов через PCall напрямую
- PluginPage.svelte: проверка e.source === iframeEl.contentWindow
- PluginPage.svelte: type checking для msg.source, msg.action

Тесты:
- security_test.go: 18 новых тестов (sandbox, lifecycle, validation)
- Все существующие тесты проходят

Документация:
- docs/plugins-security.md: модель безопасности, sandbox, протокол, lifecycle
2026-06-07 19:19:44 +08:00
..
bindings/github.com/wailsapp/wails/v3/internal gui: add Wails v3 desktop app skeleton 2026-05-31 15:45:52 +08:00
public chore: move app icons into frontend assets 2026-06-05 12:25:47 +08:00
src security: стабилизационный аудит Lua plugin system 2026-06-07 19:19:44 +08:00
Inter Font License.txt gui: add Wails v3 desktop app skeleton 2026-05-31 15:45:52 +08:00
index.html chore: move app icons into frontend assets 2026-06-05 12:25:47 +08:00
package-lock.json fix: third stabilization pass — template children as nodes, atomicity, fs_path validation, sync_apply compat, smoke test 2026-06-03 02:05:53 +08:00
package.json test: add rendered gui smoke harness 2026-06-04 18:59:07 +08:00
tsconfig.json gui: add Wails v3 desktop app skeleton 2026-05-31 15:45:52 +08:00
vite.config.js gui: complete Wails v2 vertical MVP — fixes, search, polished UI 2026-05-31 23:48:38 +08:00