Repository navigation
ci(qa-ondemand): correct startup budget and Windows timezone - #22070
kangfenmao wants to merge 2 commits into
Conversation
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
|
Reviewed at head dfd3818 (QA toolchain change, not a product change). What the change does: the on-demand controller now defaults The three edits are internally consistent: the README describes all three behaviours, the readiness message carries the new number, and the timezone default runs before the report object is created, so the recorded Two things I would like before merge:
Nothing else blocking. I did not run the controller locally for this review; the checks above come from the diff and the files at this commit. |
There was a problem hiding this comment.
Technical review supports approval at dfd38183cf0cf696ca37ccb8c3baaf73b1e070f3. No confirmed actionable regression was found in the timezone default, shared 120-second readiness budget, or documented first-match visibility behavior.
Head CI: basic-checks, general-test, package-test, render-test, and changes succeeded; main/renderer/platform matrix jobs were skipped. The synthetic merge has no check runs; legacy pending statuses contain zero contexts.
Lead validation was static; no local test suite was run. One independent reviewer reports successful base/head CLI probes. Hosted Windows timezone behavior, release installation, startup beyond 60 seconds, and browser visibility edge cases were not independently exercised successfully. These remain coverage limitations.
Cherry Review · Passed
no findings
|
Tested at head dfd3818 (tooling change, not a product change). The timezone fix works: with What I ran locally at this head:
Two things I would still like before merge:
Nothing else blocking. |
What this PR does
Before this PR:
Hosted macOS development startup could exceed the 60-second readiness budget. Git Bash stripped
TZ=Asia/Shanghaibefore launching the Windows controller, andexpectVisiblefailed in strict mode when a selector matched several elements.After this PR:
Both branch and tag modes have a 120-second readiness budget. The controller restores an absent
TZtoAsia/Shanghaibefore reporting and native application launch, preserving explicitly supplied timezones.expectVisiblechecks the first match, consistent withexpectText. The controller README documents these contracts.Fixes #22069
Why we need it and why it was done in this way
The following tradeoffs were made:
waitForkeep their unique-match requirements.The following alternatives were considered:
A branch-only timeout increase and clearer strict-selector errors were considered; the requester selected a uniform 120-second budget and first-match visibility assertions. Changing the runner's operating-system timezone would unnecessarily broaden the repair.
Links to places where the discussion took place: #22069
Agent Note / Spec
Agent Note: N/A — the requester explicitly excludes
.agents/notes/implemented/from this PR. The behavior and usage contracts are documented inscripts/e2e/ondemand/README.md.Spec PR: N/A — focused follow-up bug fix with requester-confirmed behavior.
Acceptance criteria: Both startup modes use 120 seconds; missing TZ is restored before reporting/application launch while explicit TZ is preserved; visibility assertions check the first match. Local verification passes; hosted Windows/macOS acceptance remains pending.
Verification
pnpm test:scripts scripts/e2e/ondemand/__tests__/cli.test.ts scripts/e2e/ondemand/__tests__/steps.test.ts scripts/e2e/ondemand/__tests__/environment.test.ts scripts/e2e/ondemand/__tests__/workflow.test.ts scripts/e2e/ondemand/__tests__/report.test.ts: 5 files / 22 tests passed. The new missing-TZ subprocess test reproduced the failure before repair; explicit UTC is preserved.requiredTimezone=Asia/Shanghai: exit 0, three steps, readiness 16.165 seconds; inherited/controller/main/renderer timezone fields all report Asia/Shanghai. Chinese UI verification passed. Agent-owned Electron/runner stopped and port 9222 released.pnpm typecheck:e2e, scopedpnpm exec oxlint --deny-warnings,pnpm exec eslint,pnpm exec oxfmt --check,pnpm docs:check, andgit diff --check: passed.pnpm change:scope --base origin/main,pnpm docs:affected --base origin/main, andpnpm check --plan: inspected. No documentation source prefixes matched; the owning controller README was updated. No full local gate was run..context/qa22069/report.mdand.context/cherry-electron-dev/issue-22069/run/report/. These are local artifacts, not committed files.Breaking changes
No application-facing changes. On-demand QA's startup limit increases from 60 to 120 seconds for both modes.
expectVisiblenow checks the first matching element. No dispatch input or result schema change.Special notes for your reviewer
Hosted Windows/macOS acceptance is pending. Local macOS verification does not establish Windows Chromium timezone behavior, release-installer behavior, or startup taking longer than the former 60-second budget. Validate the controller branch via
qa-ondemand.ymlbefore or after merge; the workflow already exists on main.Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.
main/gh-pr-review,gh pr diff, or GitHub UI) before requesting review from othersRelease note