diff --git a/macos/CHANGELOG.md b/macos/CHANGELOG.md index 7b29c653..edba1e22 100644 --- a/macos/CHANGELOG.md +++ b/macos/CHANGELOG.md @@ -10,6 +10,7 @@ ### 内部 +- 同步 v1.5.9 版本号以发布 Windows 一键换肤补丁;macOS 运行时代码相对 v1.5.8 无行为变化。 - 同步 v1.5.8 版本号以发布 Windows 安装器补丁;macOS 运行时代码相对 v1.5.7 无行为变化。 ## 1.5.6 — 2026-07-26 diff --git a/macos/VERSION b/macos/VERSION index 1cc9c180..2b26b8d2 100644 --- a/macos/VERSION +++ b/macos/VERSION @@ -1 +1 @@ -1.5.8 +1.5.9 diff --git a/macos/package.json b/macos/package.json index 6ddf7e02..6a0647ba 100644 --- a/macos/package.json +++ b/macos/package.json @@ -1,6 +1,6 @@ { "name": "codex-dream-skin-studio", - "version": "1.5.8", + "version": "1.5.9", "private": true, "type": "module", "scripts": { diff --git a/macos/scripts/common-macos.sh b/macos/scripts/common-macos.sh index 7a50b6b5..913baf82 100755 --- a/macos/scripts/common-macos.sh +++ b/macos/scripts/common-macos.sh @@ -29,7 +29,7 @@ CODEX_APP_JOB_LABEL="com.openai.codex-dream-skin-studio.app" INJECTOR_JOB_LABEL="com.openai.codex-dream-skin-studio.injector" EXPECTED_CODEX_TEAM_ID="2DC432GLL2" EXPECTED_CODEX_REQUIREMENT="anchor apple generic and certificate leaf[subject.OU] = \"$EXPECTED_CODEX_TEAM_ID\"" -SKIN_VERSION="1.5.8" +SKIN_VERSION="1.5.9" DREAM_SKIN_VALIDATED_RUNTIME_PID="" DREAM_SKIN_VALIDATED_RUNTIME_BUNDLE="" DREAM_SKIN_VALIDATED_RUNTIME_EXE="" diff --git a/macos/scripts/injector.mjs b/macos/scripts/injector.mjs index 552019df..059fc571 100644 --- a/macos/scripts/injector.mjs +++ b/macos/scripts/injector.mjs @@ -43,7 +43,7 @@ const stableTestidLiteral = (testid) => { } return JSON.stringify(`[data-testid="${testid}"]`); }; -const SKIN_VERSION = "1.5.8"; +const SKIN_VERSION = "1.5.9"; const LOOPBACK_HOSTS = new Set(["127.0.0.1", "localhost", "[::1]"]); const CDP_ID_PATTERN = /^[A-Za-z0-9._-]{1,200}$/; const MAX_ART_BYTES = 10 * 1024 * 1024; diff --git a/macos/tests/run-tests.sh b/macos/tests/run-tests.sh index f51461a9..353a5929 100755 --- a/macos/tests/run-tests.sh +++ b/macos/tests/run-tests.sh @@ -86,7 +86,7 @@ UPDATE_JSON="$({ })" "$NODE" -e ' const value = JSON.parse(process.argv[1]); - if (value.currentVersion !== "v1.5.8" || value.latestVersion !== "v9.8.7") process.exit(1); + if (value.currentVersion !== "v1.5.9" || value.latestVersion !== "v9.8.7") process.exit(1); if (!value.updateAvailable) process.exit(1); if (value.releaseUrl !== "https://github.com/Fei-Away/Codex-Dream-Skin/releases/latest") process.exit(1); ' "$UPDATE_JSON" @@ -1071,7 +1071,7 @@ CRLF_BACKUP="$TMP/config-crlf-backup.json" "$NODE" "$ROOT/scripts/theme-config.mjs" restore "$CRLF_CONFIG" "$CRLF_BACKUP" >/dev/null /usr/bin/cmp -s "$CRLF_CONFIG" "$TMP/original-crlf.toml" -/usr/bin/env -u HOME /bin/bash -c '. "$1/scripts/common-macos.sh"; [ -n "$HOME" ] && [ "$SKIN_VERSION" = "1.5.8" ]' _ "$ROOT" +/usr/bin/env -u HOME /bin/bash -c '. "$1/scripts/common-macos.sh"; [ -n "$HOME" ] && [ "$SKIN_VERSION" = "1.5.9" ]' _ "$ROOT" if [ "${CODEX_DREAM_SKIN_SKIP_DOCTOR:-0}" = "1" ]; then printf 'SKIP: Doctor requires an installed, signed Codex app.\n' DOCTOR_RESULT="skipped" diff --git a/windows/CHANGELOG.md b/windows/CHANGELOG.md index b6a07e48..1a9bd6a8 100644 --- a/windows/CHANGELOG.md +++ b/windows/CHANGELOG.md @@ -4,6 +4,7 @@ ### 修复 +- 修复 Windows 上从 Chrome/Edge 点击 DreamSkin.cc「一键换肤」无法稳定唤起或完成的问题(#307)。安装器持久注册项不再把 64 位浏览器不可访问的 `{sysnative}` 写入 HKCU `dreamskin://` handler;handler 同时接受网页规范链接和 Windows/浏览器归一化后的 `dreamskin://apply/?version=...` 形式;应用阶段与 macOS 对齐为 `colors` 合同、可见首页验证和首次失败后的激活 + `--once` 重试,并加固 watcher 进程关闭与成功提示。 - 修复安装器遇到 Codex `config.toml` 中合法多行数组时直接拒绝写入的问题(#313)。配置编辑器现在按 TOML 结构扫描 table header,安全跨过普通多行数组并保持原字节风格;未闭合数组、括号不匹配,以及 Dream Skin 需要改写的目标 key 自身为多行值时仍会在写入前 fail-closed。 - 修复 v1.5.6 安装器在部分 Windows 10/11 环境中校验自带 Node.js 签名时,PowerShell 自动加载 `Microsoft.PowerShell.Security` / `Get-AuthenticodeSignature` 失败而中止安装的问题(#313、#314)。签名校验现在会在执行 `node.exe` 前显式加载安全模块,并在模块名加载失败时回退到 `$PSHOME` 下的系统模块清单路径;签名状态和发行者校验仍保持 fail-closed。 - 修复社区主题一键换肤和 ZIP 导入拒绝 `backdrop-filter: blur(var(--ds-theme-surface-blur))` 的问题(#307、#312)。Safe CSS 仍只允许 `none`、0-20px blur 或注册的主题 blur 变量,不放宽到任意 filter 函数。 diff --git a/windows/VERSION b/windows/VERSION index 1cc9c180..2b26b8d2 100644 --- a/windows/VERSION +++ b/windows/VERSION @@ -1 +1 @@ -1.5.8 +1.5.9 diff --git a/windows/scripts/injector.mjs b/windows/scripts/injector.mjs index d5269598..0def13a9 100644 --- a/windows/scripts/injector.mjs +++ b/windows/scripts/injector.mjs @@ -39,7 +39,7 @@ const stableTestidLiteral = (testid) => { } return JSON.stringify(`[data-testid="${testid}"]`); }; -const SKIN_VERSION = "1.5.8"; +const SKIN_VERSION = "1.5.9"; const MAX_ART_BYTES = 10 * 1024 * 1024; const MAX_SAFE_CSS_BYTES = 256 * 1024; const STRONG_THEME_AUDIT_MS = 30000; diff --git a/windows/tests/injector-window-readiness.test.mjs b/windows/tests/injector-window-readiness.test.mjs index c19e2961..4538375a 100644 --- a/windows/tests/injector-window-readiness.test.mjs +++ b/windows/tests/injector-window-readiness.test.mjs @@ -121,7 +121,7 @@ function makeDomFixture({ }; const window = { __CODEX_DREAM_SKIN_STATE__: { - version: "1.5.8", + version: "1.5.9", themeId: "fixture-theme", revision: "fixture-revision", styleMode: "style", diff --git a/windows/tests/start-verified-skin-preserved.tests.ps1 b/windows/tests/start-verified-skin-preserved.tests.ps1 index 412bab6d..5620de34 100644 --- a/windows/tests/start-verified-skin-preserved.tests.ps1 +++ b/windows/tests/start-verified-skin-preserved.tests.ps1 @@ -173,7 +173,7 @@ function Invoke-DreamSkinStartupFixture { # The exact renderer output from #267: theme installed and painted, every # readiness signal true except the native-window probe. $renderedPayload = @' -{"installed":true,"version":"1.5.8","stylePresent":true,"homePresent":true, +{"installed":true,"version":"1.5.9","stylePresent":true,"homePresent":true, "nativeWindow":{"pass":false,"bound":false,"reason":"target-window-unavailable"}, "documentVisibility":"visible","documentHidden":false, "viewport":{"width":1289,"height":829},