fix: чистка BOM, приложение не читало конфиги с BOM
This commit is contained in:
@@ -73,6 +73,33 @@ function Clear-DeploymentPin {
|
||||
}
|
||||
}
|
||||
|
||||
# Приложение падает на BOM: в логе видно
|
||||
# [managedConfig] Failed to read config library meta: Unexpected token 'п»ї'
|
||||
# и тогда ВСЯ библиотека конфигов не читается. BOM берётся из старых версий
|
||||
# скрипта и из Блокнота, который по умолчанию сохраняет UTF-8 именно так.
|
||||
# Поэтому чистим BOM у всех json приложения, а не только у своих.
|
||||
function Repair-JsonBom {
|
||||
$files = @()
|
||||
if (Test-Path $LIB) { $files += Get-ChildItem $LIB -Filter *.json -ErrorAction SilentlyContinue }
|
||||
foreach ($d in @($C1P, $C3P)) {
|
||||
foreach ($n in @("developer_settings.json", "claude_desktop_config.json")) {
|
||||
$f = Join-Path $d $n
|
||||
if (Test-Path $f) { $files += Get-Item $f }
|
||||
}
|
||||
}
|
||||
$fixed = 0
|
||||
foreach ($f in $files) {
|
||||
try {
|
||||
$b = [IO.File]::ReadAllBytes($f.FullName)
|
||||
if ($b.Length -ge 3 -and $b[0] -eq 239 -and $b[1] -eq 187 -and $b[2] -eq 191) {
|
||||
[IO.File]::WriteAllBytes($f.FullName, $b[3..($b.Length - 1)])
|
||||
$fixed++
|
||||
}
|
||||
} catch { }
|
||||
}
|
||||
if ($fixed -gt 0) { Ok "Убран BOM у $fixed файлов конфигурации (приложение их не читало)." }
|
||||
}
|
||||
|
||||
function Merge-Meta($applied, $routes) {
|
||||
$p = Join-Path $LIB "_meta.json"
|
||||
$old = Read-Json $p
|
||||
@@ -159,6 +186,7 @@ if ($Mode -eq "restore") {
|
||||
Say "Откат на родного Claude..."
|
||||
if (-not (Test-Path (Join-Path $LIB "_meta.json"))) { Ok "Конфигов нет, откатывать нечего."; return }
|
||||
Merge-Meta "default" "none"
|
||||
Repair-JsonBom
|
||||
Ok "Применён пустой профиль Default."
|
||||
Write-Host " Если приложение всё равно открывается на чужом мозге: меню аккаунта внизу слева -> Sign out,"
|
||||
Write-Host " затем на экране входа выбери обычный вход по почте или Google."
|
||||
@@ -306,6 +334,7 @@ if ($brain -eq "zai" -or $brain -eq "both") {
|
||||
}
|
||||
|
||||
if ($haveOllama) { Merge-Meta "ollama" $brain } else { Merge-Meta "zai" $brain }
|
||||
Repair-JsonBom
|
||||
|
||||
# ---------- Самопроверка ----------
|
||||
Say "Проверяю, что получилось..."
|
||||
|
||||
Reference in New Issue
Block a user