From a8101b8f608de97378f8c2edf7b997714e3544b0 Mon Sep 17 00:00:00 2001 From: Denis Parfionovich Date: Mon, 18 May 2026 12:38:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20install=20audit=202026-05-18=20=E2=80=94?= =?UTF-8?q?=20cortex=20profile=20+=20TTY=20in=20web-install?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit audit-2026-05-18 (соседняя сессия на gx10, 3 бага из 5 подтверждены): #1 [HIGH] cortex profile сломан — kei-cortex depends on kei-router path-dep'ом, а kei-router → kei-model. kei-model не было в profile list, cargo build падал с «failed to read kei-model/ Cargo.toml». Добавил kei-model в cortex profile. #3 [HIGH] cortex-ui отсутствует в репо — был в profile list, но исходника нет ни в _primitives/_rust/, ни в _ts_packages/. Удалил из profile. #4 [MEDIUM] web-install.sh теряет /dev/tty — exec | tee + curl|bash делают stdin pipe, wizard'у read нечего читать, onboarding падает на первом prompt. Переподключаю stdin к /dev/tty перед exec bootstrap.sh, если /dev/tty доступен. #2 (linux-arm64 prebuild) — tag v0.38.0 не запушен на github, CI release.yml не сработал. Требует RULE 0.1 triple-confirm. #5 (non-TTY default = minimal) — уже корректно, install.sh:141 `PROFILE="${PROFILE:-minimal}"` + lib-menu.sh skip on non-TTY. --- _primitives/MANIFEST.toml | 6 +++++- web-install.sh | 9 +++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/_primitives/MANIFEST.toml b/_primitives/MANIFEST.toml index 01656e9..92db711 100644 --- a/_primitives/MANIFEST.toml +++ b/_primitives/MANIFEST.toml @@ -22,7 +22,11 @@ frontend = ["mock-render", "visual-diff", "tokens-sync", "design-scrape", "live- ops = ["kei-ledger", "ssh-check", "firewall-diff", "provision-hetzner", "provision-vultr", "harden-base", "metrics-scrape", "log-ship", "kei-provision"] dev = ["kei-migrate", "kei-changelog", "kei-ci-lint", "kei-docs-scaffold", "kei-memory", "kei-conflict-scan", "kei-refactor-engine", "kei-graph-check", "kei-store", "kei-artifact", "kei-agent-runtime", "kei-capability", "kei-entity-store", "kei-pipe", "kei-cache", "kei-spawn", "kei-replay"] mcp = ["kei-router", "kei-sage", "kei-task", "kei-chat-store", "kei-crossdomain", "kei-search-core", "kei-content-store", "kei-social-store", "kei-curator", "kei-auth"] -cortex = ["kei-cortex", "cortex-ui", "kei-pet", "kei-shared", "kei-ledger", "kei-memory", "frustration-matrix", "kei-skill-importer", "kei-router", "kei-dna-index", "kei-atom-discovery"] +# cortex profile: kei-cortex daemon + транзитивные path-deps. +# cortex-ui удалён — исходник отсутствует в репо (audit 2026-05-18 #3). +# kei-model добавлен — kei-router имеет path-dep, без него workspace +# сломан с «failed to read kei-model/Cargo.toml» (audit 2026-05-18 #1). +cortex = ["kei-cortex", "kei-pet", "kei-shared", "kei-ledger", "kei-memory", "frustration-matrix", "kei-skill-importer", "kei-router", "kei-model", "kei-dna-index", "kei-atom-discovery"] buddy = ["kei-buddy", "kei-telegram-webhook", "kei-shared", "kei-chat-store", "kei-social-store", "kei-memory-sqlite", "kei-router", "kei-llm-bridge-mlx"] # --- dev-hub bundle profiles (Wave 45) ------------------------------------ # Adds local-first git server (Forgejo), CI runner, project dashboard, diff --git a/web-install.sh b/web-install.sh index 12dbe69..0fdbc9d 100755 --- a/web-install.sh +++ b/web-install.sh @@ -89,4 +89,13 @@ git -C "$KEISEI_ROOT" submodule update --init --recursive 2>/dev/null || true [ -x "$KEISEI_ROOT/bootstrap.sh" ] || die "kit's bootstrap.sh not found in $KEISEI_ROOT" say "delegating to $KEISEI_ROOT/bootstrap.sh ${PASS_THROUGH[*]:-}" cd "$KEISEI_ROOT" + +# curl|bash сценарий: stdin = pipe от curl, поэтому wizard'у read нечего читать. +# Если есть /dev/tty (т.е. сессия реально интерактивная), переподключаем stdin +# к терминалу — иначе onboarding/whiptail падают на первом prompt. +# audit 2026-05-18 bug #4. +if [ -r /dev/tty ] && [ ! -t 0 ]; then + exec < /dev/tty +fi + exec ./bootstrap.sh "${PASS_THROUGH[@]}"