Skip to content

Fix composer targeting and exclude Pet overlay surfaces - #372

Closed
hjnnjh wants to merge 5 commits into
Fei-Away:mainfrom
hjnnjh:codex/fix-composer-pet-scope
Closed

Fix composer targeting and exclude Pet overlay surfaces#372
hjnnjh wants to merge 5 commits into
Fei-Away:mainfrom
hjnnjh:codex/fix-composer-pet-scope

Conversation

@hjnnjh

@hjnnjh hjnnjh commented Aug 18, 2026

Copy link
Copy Markdown

Summary / 摘要

  • Recognize both the legacy composer shell and the current _ComposerLayoutRoot_ / _ComposerLayoutFooter_ CSS-module structure, while preferring the real root before broad fallback ownership.
  • Exclude /avatar-overlay and Pet composition surfaces before renderer installation, and remove plus verify any stale Dream Skin state already present on those transparent targets.
  • Cover shared renderer behavior and both platform injector discovery paths, then regenerate the synchronized macOS/Windows runtime assets.

Type / 类型

  • Bug fix / 缺陷修复
  • Feature / 新功能
  • Docs / 文档
  • Theme / CSS / visual / 主题或视觉
  • Scripts / install / restore / 脚本或安装恢复
  • Chore / 杂项

Platform / 平台

  • macOS
  • Windows
  • Both / 双平台
  • Docs / repo only / 仅文档或仓库元数据

Self-check / 自测

Docs-only / 仅文档

  • Links and wording reviewed / 已检查链接与表述

macOS (when code under macos/ changes)

  • macos/tests/run-tests.sh passed / 已通过
  • Doctor (optional): macos/scripts/doctor-macos.sh
  • Live verify (if inject/CSS/start path): verify-dream-skin-macos.sh or Desktop Verify
  • Restore / re-apply smoke (if install/restore/start changed) / 若改了安装恢复启动则做过恢复再应用

Windows (when code under windows/ changes)

  • Relevant install / start / verify / restore scripts exercised / 已按改动跑过对应脚本
  • Environment noted below (OS build, Codex source) / 下方注明环境

User-facing / 用户可见变更

  • Updated macos/CHANGELOG.md (and macos/VERSION if release-worthy) / 已更新 changelog(发版时再 bump VERSION)
  • N/A — no user-facing change / 无用户可见变更

Security / 安全

  • Does not modify official Codex install / asar / signatures / 未修改官方安装与签名
  • Does not silently write API Base URL or keys / 未静默写入 API Base URL 或 Key
  • CDP remains loopback-oriented (127.0.0.1) where applicable / CDP 仍仅本机回环(如适用)

Notes / 补充

  • Portable Node coverage: 103/103 tests covered. The default sandbox passed 102 and blocked the Swift bounded-HTTP compile through its module cache; that exact test passed outside the sandbox.
  • CODEX_DREAM_SKIN_SKIP_DOCTOR=1 CODEX_DREAM_SKIN_SKIP_SIGNED_RUNTIME_TESTS=1 bash macos/tests/run-tests.sh passed outside the sandbox. Full-Xcode SwiftPM/XCTest, installed signed-runtime integrations, and Doctor were skipped by their documented gates.
  • Focused macOS/Windows renderer and injector-bootstrap tests, selector doctor, dual payload checks, Node/Bash syntax, tools/sync-runtime-assets.mjs --check, and git diff --check pass.
  • Live macOS field reproduction showed _ComposerLayoutFooter_ receiving the composer part and theme wallpaper on five Pet/avatar-overlay targets. The equivalent local hotfix was verified with the main renderer still themed and all five Pet-related bodies transparent/unmarked. The PR regressions cover fresh exclusion, cleanup after prior injection, one-shot cleanup, watcher cleanup, and ComposerLayoutRoot selection.
  • Native Windows PowerShell 5.1/7 and Setup validation remain CI gates. No version bump is included.

hjnnjh added 3 commits August 18, 2026 20:47
Prevent Dream Skin from injecting wallpaper and theme state into avatar
overlay and Pet composition renderers. Clean and verify already polluted
auxiliary targets in both one-shot and watcher discovery paths.

Recognize the current ComposerLayoutRoot and toolbar CSS-module prefixes,
while retaining legacy selectors and a guarded semantic fallback. Add shared
renderer and dual-platform injector regressions and regenerate runtime assets.
Document the cross-platform composer targeting and Pet overlay cleanup fixes
under the unreleased sections without changing client versions.
Capture the verified commits, fork branch, prepared PR evidence, and the
temporary locked-session blocker for the final GitHub submission.
Copilot AI lite review requested due to automatic review settings August 18, 2026 13:13
Record Ready PR Fei-Away#372 and the remaining exact-head CI gates without claiming
merge or release status.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates Dream Skin’s renderer targeting to correctly bind the composer surface on newer Codex builds (preferring _ComposerLayoutRoot_ over _ComposerLayoutFooter_) and prevents theme injection from affecting Pet-related transparent overlay surfaces (/avatar-overlay and the avatar overlay composition surface). It also adds/extends regressions to cover both platform injectors and the shared renderer behavior, then propagates the synchronized runtime assets.

Changes:

  • Extend selector contract + generic fallback to recognize _ComposerLayoutRoot_ and avoid mis-targeting _ComposerLayoutFooter_.
  • Detect and exclude Pet overlay surfaces in both the shared renderer payload and platform injector probe logic, including removal+verification of any stale injected state.
  • Add/extend cross-platform tests covering exclusion + cleanup behavior and the modern composer layout selection.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
windows/tests/injector-bootstrap.test.mjs Adds probe coverage for excluded Pet surfaces and verified cleanup calls.
windows/scripts/injector.mjs Adds excludedPetSurface probing and cleanup+verification on excluded targets (one-shot + watch).
windows/CHANGELOG.md Documents the composer targeting fix + Pet surface exclusion behavior.
windows/assets/selectors.json Updates selector contract to include _ComposerLayoutRoot_ / _ComposerLayoutFooter_ patterns.
windows/assets/renderer-inject.js Regenerated synced renderer payload with Pet exclusion + updated selectors.
windows/assets/dream-skin.css Updates composer selectors to include _ComposerLayoutRoot_ for styling.
tools/selectors.json Updates canonical selector contract used for syncing/validation.
tools/renderer-runtime.test.mjs Adds shared-renderer regressions for Pet exclusion/cleanup and modern composer layout selection.
TASK_PROGRESS.md Adds a progress record for the work (needs a small redaction).
runtime/renderer-inject.js Implements shared renderer Pet exclusion and modern composer layout root preference.
macos/tests/injector-bootstrap.test.mjs Mirrors Windows bootstrap regressions for excluded Pet surfaces + cleanup verification.
macos/scripts/injector.mjs Adds excludedPetSurface probing and cleanup+verification on excluded targets (one-shot + watch), plus rejection logging adjustments.
macos/CHANGELOG.md Documents the composer targeting fix + Pet surface exclusion behavior.
macos/assets/selectors.json Updates selector contract to include _ComposerLayoutRoot_ / _ComposerLayoutFooter_ patterns.
macos/assets/renderer-inject.js Regenerated synced renderer payload with Pet exclusion + updated selectors.
macos/assets/dream-skin.css Updates composer selectors to include _ComposerLayoutRoot_ for styling.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread TASK_PROGRESS.md Outdated
Address PR review by removing the contributor machine's absolute clone path
from the durable progress record.
@Fei-Away

Copy link
Copy Markdown
Owner

感谢你提交这组 Codex 26.814 兼容修复。经过审计,ComposerLayoutRoot 选择、Pet/avatar-overlay 排除、旧注入清理与双端回归已纳入 PR #382,并随 v1.5.15 发布;提交中保留了你的贡献归因。该 PR 现在已被正式发布 supersede,关闭原 PR。

@Fei-Away

Copy link
Copy Markdown
Owner

已由 #382 / v1.5.15 发布。感谢贡献。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants