• wwwillchen-bot's avatar
    fix: deflake E2E tests (refresh.spec.ts, themes_management.spec.ts) (#2752) · f86b78bb
    wwwillchen-bot 提交于
    ## Summary
    
    - **refresh.spec.ts**: Fix race condition where the "refresh app" test
    would fail because the iframe body was empty after refresh. Added
    explicit waits for the iframe body to have content both before removing
    it and after clicking refresh, preventing the `toMatchAriaSnapshot` from
    matching against an empty `<body></body>`.
    - **themes_management.spec.ts**: Fix strict mode violations where
    `getByLabel('Description (optional)')` resolved to 2 elements (one on
    the Manual tab, one on the AI tab). Replaced ambiguous label selectors
    with specific element ID selectors (`#manual-description`,
    `#manual-prompt`, `#ai-description`). Also scoped edit dialog selectors
    to the dialog role to avoid similar ambiguity.
    
    ## Verification
    
    Both spec files were verified with `--repeat-each=10` (0 retries) after
    fixes:
    - `refresh.spec.ts`: 40/40 passed (was 34/40 before fix)
    - `themes_management.spec.ts`: 50/50 passed (was 49/50 before fix)
    
    ## Flaky test scan results
    
    Scanned 2 CI runs on main + 11 PRs by wwwillchen/wwwillchen-bot. Most
    previously flaky tests (setup_flow, setup, select_component,
    debugging_logs, switch_versions, etc.) appear to have been fixed in
    prior commits. Only refresh.spec.ts and themes_management.spec.ts were
    still reproducing locally.
    
    ## Test plan
    
    - [x] `refresh.spec.ts` passes 10x repeat-each with 0 retries
    - [x] `themes_management.spec.ts` passes 10x repeat-each with 0 retries
    - [x] Formatting, linting, and type checks pass
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    <!-- devin-review-badge-begin -->
    
    ---
    
    <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2752"
    target="_blank">
      <picture>
    <source media="(prefers-color-scheme: dark)"
    srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
    <img
    src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
    alt="Open with Devin">
      </picture>
    </a>
    <!-- devin-review-badge-end -->
    
    ---------
    Co-authored-by: 's avatarclaude[bot] <41898282+claude[bot]@users.noreply.github.com>
    Co-authored-by: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
    f86b78bb
名称
最后提交
最后更新
.agents 正在载入提交数据...
.claude 正在载入提交数据...
.cursor/rules 正在载入提交数据...
.devcontainer 正在载入提交数据...
.github 正在载入提交数据...
.husky 正在载入提交数据...
.storybook 正在载入提交数据...
assets 正在载入提交数据...
docs 正在载入提交数据...
drizzle 正在载入提交数据...
e2e-tests 正在载入提交数据...
makers 正在载入提交数据...
packages/@dyad-sh 正在载入提交数据...
plans 正在载入提交数据...
rules 正在载入提交数据...
scaffold 正在载入提交数据...
scripts 正在载入提交数据...
shared 正在载入提交数据...
src 正在载入提交数据...
testing 正在载入提交数据...
tools 正在载入提交数据...
worker 正在载入提交数据...
workers/tsc 正在载入提交数据...
.cursorignore 正在载入提交数据...
.env.example 正在载入提交数据...
.eslintrc.json 正在载入提交数据...
.gitattributes 正在载入提交数据...
.gitignore 正在载入提交数据...
.npmrc 正在载入提交数据...
.oxfmtrc.json 正在载入提交数据...
.oxlintrc.json 正在载入提交数据...
.prettierignore 正在载入提交数据...
.prettierrc 正在载入提交数据...
AGENTS.md 正在载入提交数据...
CLA.md 正在载入提交数据...
CLAUDE.md 正在载入提交数据...
CONTRIBUTING.md 正在载入提交数据...
LICENSE 正在载入提交数据...
README.md 正在载入提交数据...
SECURITY.md 正在载入提交数据...
biome.json 正在载入提交数据...
components.json 正在载入提交数据...
drizzle.config.ts 正在载入提交数据...
forge.config.ts 正在载入提交数据...
forge.env.d.ts 正在载入提交数据...
index.html 正在载入提交数据...
lint-staged.config.js 正在载入提交数据...
merge.config.ts 正在载入提交数据...
package-lock.json 正在载入提交数据...
package.json 正在载入提交数据...
playwright.config.ts 正在载入提交数据...
tsconfig.app.json 正在载入提交数据...
tsconfig.json 正在载入提交数据...
tsconfig.node.json 正在载入提交数据...
vite.main.config.mts 正在载入提交数据...
vite.preload.config.mts 正在载入提交数据...
vite.renderer.config.mts 正在载入提交数据...
vite.worker.config.mts 正在载入提交数据...
vitest.config.ts 正在载入提交数据...
windowsSign.ts 正在载入提交数据...