Skip to content

fix(windows): 收口 startup visible-ready 生命周期并进入评审观察#145

Merged
appergb merged 4 commits into
Open-Less:mainfrom
Cooper-X-Oak:codex/windows-cold-start-ui-pr
May 2, 2026
Merged

fix(windows): 收口 startup visible-ready 生命周期并进入评审观察#145
appergb merged 4 commits into
Open-Less:mainfrom
Cooper-X-Oak:codex/windows-cold-start-ui-pr

Conversation

@Cooper-X-Oak
Copy link
Copy Markdown
Contributor

@Cooper-X-Oak Cooper-X-Oak commented May 1, 2026

治理归属

  • 族群:C 族群 / 启动视觉暴露契约
  • canonical issue:[windows] visible 与 ready 脱钩,主窗口在 hotkey ready 前提前可见 #98
  • 主修范围:visible-before-ready、cold-start visual exposure、first visible frame、first usable state
  • 不默认并入:主窗口外观贴合、capsule geometry、helper-window 生命周期、双事件源 ownership 重构
  • 参考:
    • docs/windows-window-governance-board.zh-CN.md
    • docs/2026-05-02-window-capability-family-audit.md
    • docs/github-tracking/windows-window-family-canonical-map.md

摘要

Closes #98
References #143

这条 PR 已经不再只是 tracking 入口,而是承接本轮 Windows startup lifecycle 主线修复的实际变更。

当前结论:

  • visible / ready 脱钩的主问题已收敛
  • 冷启动入口已从 backend immediate show 调整为 frontend-managed first show
  • 最新人工回归反馈是:启动过程基本流畅,人眼很难再分辨出明显的一闪
  • #143 现在更适合作为已收敛的 first-paint 症状票引用,而不是继续作为主 closure 目标

修复 / 新增 / 改进

  • 收口 Windows 启动阶段的 first-show ownership
  • checking -> ready 之间加入明确 gate,避免正式壳层在 startup transient phase 过早暴露
  • 增加冷启动测试脚本,默认优先拉最新 debug build,并区分:
    • frontend-managed first show
    • backend immediate show(仅调试用)
  • 增加 startup lifecycle contract test,锁住 hidden-on-create 与 readiness gate 语义

兼容

  • 不包含:主窗口圆角 / 外框 / titlebar frame 等纯视觉适配
  • 不包含:更细粒度 startup latency 优化
  • 对现有用户 / 本地环境 / 构建流程的影响:聚焦 startup lifecycle 主线,不扩张到 UI polish 线

测试计划

  • 命令:node openless-all/app/scripts/windows-startup-lifecycle-contract.test.mjs

  • 结果:通过

  • 证据路径:本地命令输出

  • 命令:npm run build

  • 结果:通过

  • 证据路径:本地命令输出

  • 命令:powershell -ExecutionPolicy Bypass -File openless-all/app/scripts/windows-cold-start.ps1 -PreferDebug -ShowMain

  • 结果:能够走 frontend-managed first show

  • 证据路径:本地命令输出

  • 命令:冷启动截图与人工主观回归

  • 结果:首屏体验明显改善,当前主观反馈为“几乎没有问题,人眼很难分辨”

  • 证据路径:artifacts-cold-start-screenshot.pngartifacts-cold-start-screenshot-8s.pngartifacts-cold-start-screenshot-front-managed.png 与当前线程回归记录

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

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

Sorry @Cooper-X-Oak, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@Cooper-X-Oak Cooper-X-Oak changed the title docs(windows): 跟踪冷启动 UI 闪烁问题 docs(windows): 跟踪 cold-start first paint 生命周期 May 1, 2026
@Cooper-X-Oak Cooper-X-Oak changed the title docs(windows): 跟踪 cold-start first paint 生命周期 docs(windows): 跟踪 visible 与 ready 脱钩问题 May 1, 2026
@Cooper-X-Oak Cooper-X-Oak changed the title docs(windows): 跟踪 visible 与 ready 脱钩问题 docs(windows): 跟踪 cold-start first paint 生命周期 May 1, 2026
@Cooper-X-Oak Cooper-X-Oak changed the title docs(windows): 跟踪 cold-start first paint 生命周期 fix(windows): 收口 startup visible-ready 生命周期并进入评审观察 May 1, 2026
@Cooper-X-Oak Cooper-X-Oak marked this pull request as ready for review May 1, 2026 21:27
Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

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

Sorry @Cooper-X-Oak, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

@Cooper-X-Oak
Copy link
Copy Markdown
Contributor Author

Governance note:

This PR should be treated as the canonical implementation anchor for Family C: Startup Visual Exposure, paired with issue #98.

Keep in scope:

  • visible-before-ready symptoms
  • first visible frame / first usable state relationship
  • startup visual gating and observation

Keep out of scope by default:

  • main shell appearance fit
  • capsule geometry / clipping
  • helper-window participation semantics
  • broader input-source or lifecycle refactors unless strictly necessary for startup visibility correctness

Reference docs:

  • docs/2026-05-02-window-capability-family-audit.md
  • docs/github-tracking/windows-window-family-canonical-map.md

@appergb appergb merged commit 1247780 into Open-Less:main May 2, 2026
2 checks passed
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.

[windows] visible 与 ready 脱钩,主窗口在 hotkey ready 前提前可见

2 participants