fix(core): хотфиксы issues #23, #32, #39, #41

- service_check: lan_interface() запрашивала несуществующий конфиг
  forkop/podkop, из-за чего все проверки сервисов смотрели в br-lan вместо
  настроенных LAN-интерфейсов - секции AWG/WireGuard всегда получали вердикт
  "не отвечает" при рабочем kernel-конфиге (#41, #32, #39)
- rag: у push() были перепутаны аргументы - коллекция эмбеддингов оставалась
  пустой для всех провайдеров OpenAI-формата; кэш эмбеддингов теперь
  инвалидируется по отпечатку индекса (mtime+size), null model_override
  обрабатывается корректно
- warp_generator: curl к Clash API без таймаута и матрица ретраев без общего
  дедлайна могли блокировать выполнение минутами и ловить XHR timeout LuCI
  (#39); добавлены -m 5 на локальные вызовы и бюджеты 40с/90с на весь цикл
- build.sh: релизные пакеты теперь содержат тот же состав файлов, что и
  сборка через OpenWrt Makefile (hotplug WAN-монитор, агентский CGI в
  /usr/lib/cgi-bin, defaults/config, профили servicecheck); конфиги с
  секретами ставятся с правами 0600; тест паритета инвентаря
- updates UI: после самообновления tachyon страница перезагружается только
  когда перезапущенный бэкенд снова отвечает на get_ui_state, вместо
  фиксированной задержки 8 секунд (#23)
This commit is contained in:
Dushnilin
2026-08-21 19:19:17 +03:00
parent 432fa31337
commit 8996790f25
6 changed files with 134 additions and 13 deletions
+18 -1
View File
@@ -247,14 +247,27 @@ build_backend_root() {
rm -rf "$output_root"
make_dir "$output_root/etc/init.d"
make_dir "$output_root/etc/config"
make_dir "$output_root/etc/hotplug.d/iface"
make_dir "$output_root/usr/bin"
make_dir "$output_root/usr/lib/tachyon"
make_dir "$output_root/usr/lib/cgi-bin"
make_dir "$output_root/usr/share/tachyon"
install -m 0755 "$ROOT_DIR/tachyon/files/etc/init.d/tachyon" "$output_root/etc/init.d/tachyon"
install -m 0644 "$ROOT_DIR/tachyon/files/etc/config/tachyon" "$output_root/etc/config/tachyon"
install -m 0755 "$ROOT_DIR/tachyon/files/usr/bin/tachyon" "$output_root/usr/bin/tachyon"
cp -a "$ROOT_DIR/tachyon/files/usr/lib/." "$output_root/usr/lib/tachyon/"
# Mirror Package/tachyon/install from tachyon/Makefile exactly: the release
# artifacts are built here, so any file the Makefile ships must ship here too.
install -m 0600 "$ROOT_DIR/tachyon/files/etc/config/tachyon" "$output_root/usr/lib/tachyon/defaults/config"
install -m 0755 "$ROOT_DIR/tachyon/files/etc/hotplug.d/iface/99-tachyon-wan-monitor" \
"$output_root/etc/hotplug.d/iface/99-tachyon-wan-monitor"
install -m 0755 "$ROOT_DIR/tachyon/files/usr/lib/cgi-bin/tachyon-agent" \
"$output_root/usr/lib/cgi-bin/tachyon-agent"
install -m 0644 "$ROOT_DIR/tachyon/files/usr/share/tachyon/servicecheck_profiles.json" \
"$output_root/usr/share/tachyon/servicecheck_profiles.json"
local commit_sha="${GIT_COMMIT_SHA:-}"
if [[ -z "$commit_sha" || "$commit_sha" == "unknown" ]]; then
commit_sha="$(git -C "$ROOT_DIR" rev-parse --short HEAD 2>/dev/null || echo "unknown")"
@@ -265,7 +278,11 @@ build_backend_root() {
"$output_root/usr/lib/tachyon/core/constants.uc"
normalize_package_root_modes "$output_root"
chmod 0755 "$output_root/etc/init.d/tachyon" "$output_root/usr/bin/tachyon"
chmod 0755 "$output_root/etc/init.d/tachyon" "$output_root/usr/bin/tachyon" \
"$output_root/etc/hotplug.d/iface/99-tachyon-wan-monitor" \
"$output_root/usr/lib/cgi-bin/tachyon-agent"
# Contains the Telegram bot token placeholder and receives user secrets.
chmod 0600 "$output_root/etc/config/tachyon" "$output_root/usr/lib/tachyon/defaults/config"
}
build_app_root() {