• keppo-bot[bot]'s avatar
    Deflake CI E2E failures (#3311) · 971aca34
    keppo-bot[bot] 提交于
    ## Summary
    - Deflake CI E2E failures from
    https://github.com/dyad-sh/dyad/actions/runs/25126503338.
    - Await streamed token-usage persistence before token-count invalidation
    so the context-limit banner sees the real max token usage.
    - Harden E2E helpers around GitHub sync completion, already-applied
    proposals, queued Lexical submissions, visual-save button re-renders,
    and Windows line endings.
    - Update the component-tagger upgrade snapshot from 0.8.0 to 0.9.0.
    
    ## Root Cause
    The failing run had several independent races and one stale snapshot:
    - The context-limit banner could refetch token counts before the
    assistant message's max token usage had been saved, leaving
    actualMaxTokens null after a high-token stream.
    - GitHub assertions snapshotted the connected-repo panel while the sync
    button was still in its transient Syncing state.
    - Some E2E helpers used one-shot Lexical fills/clicks where Playwright
    can act during React or DOM replacement windows.
    - The code-editor assertion compared raw file contents, which fails on
    Windows CRLF output.
    - The select-component upgrade snapshot still expected the older
    component tagger version.
    
    ## Why This Fix Is Correct
    - Awaiting the existing max-token update makes the later chat/token
    invalidations observe the persisted usage instead of racing it.
    - GitHub sync waits now use the stable connected-repo panel state:
    Syncing hidden, Sync to GitHub enabled, and the panel-local success text
    visible.
    - Queued-message and visual-save actions now retry the exact UI contract
    the tests require: the queued row appears or the save button is visible,
    enabled, and clickable.
    - The editor test normalizes only line endings, preserving the
    file-content assertion while making it platform-independent.
    
    ## Test Plan
    - npm run fmt && npm run lint:fix && npm run ts
    - PYTHON=/usr/bin/python3 npm run build
    - PLAYWRIGHT_HTML_OPEN=never npm run e2e --
    e2e-tests/select_component.spec.ts --update-snapshots
    - PLAYWRIGHT_HTML_OPEN=never npm run e2e --
    e2e-tests/context_limit_banner.spec.ts e2e-tests/debugging_logs.spec.ts
    e2e-tests/edit_code.spec.ts e2e-tests/github.spec.ts
    e2e-tests/queued_message.spec.ts e2e-tests/visual_editing.spec.ts
    - First run: 21 passed, 6 GitHub helper strict-mode failures due
    duplicate success toast text.
    - PLAYWRIGHT_HTML_OPEN=never npm run e2e -- e2e-tests/github.spec.ts
    - npm test
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    
    <!-- devin-review-badge-begin -->
    
    ---
    
    <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/3311"
    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 in Devin Review">
      </picture>
    </a>
    <!-- devin-review-badge-end -->
    
    ---------
    Co-authored-by: 's avatarWill Chen <7344640+wwwillchen@users.noreply.github.com>
    971aca34
名称
最后提交
最后更新
..
fixtures 正在载入提交数据...
helpers 正在载入提交数据...
snapshots 正在载入提交数据...
1.spec.ts 正在载入提交数据...
add_prompt_deep_link.spec.ts 正在载入提交数据...
annotator.spec.ts 正在载入提交数据...
app_commands.spec.ts 正在载入提交数据...
app_screenshot.spec.ts 正在载入提交数据...
app_search.spec.ts 正在载入提交数据...
app_storage_path.spec.ts 正在载入提交数据...
approve.spec.ts 正在载入提交数据...
astro.spec.ts 正在载入提交数据...
attach_image.spec.ts 正在载入提交数据...
auto_approve.spec.ts 正在载入提交数据...
auto_update.spec.ts 正在载入提交数据...
azure_provider_settings.spec.ts 正在载入提交数据...
azure_send_message.spec.ts 正在载入提交数据...
backup.spec.ts 正在载入提交数据...
cancelled_message.spec.ts 正在载入提交数据...
capacitor.spec.ts 正在载入提交数据...
chat_history.spec.ts 正在载入提交数据...
chat_image_generation.spec.ts 正在载入提交数据...
chat_input.spec.ts 正在载入提交数据...
chat_mode.spec.ts 正在载入提交数据...
chat_panel_toggle.spec.ts 正在载入提交数据...
chat_search.spec.ts 正在载入提交数据...
chat_tabs.spec.ts 正在载入提交数据...
cloud_sandbox.spec.ts 正在载入提交数据...
concurrent_chat.spec.ts 正在载入提交数据...
context_compaction.spec.ts 正在载入提交数据...
context_limit_banner.spec.ts 正在载入提交数据...
context_manage.spec.ts 正在载入提交数据...
context_window.spec.ts 正在载入提交数据...
copy_app.spec.ts 正在载入提交数据...
copy_chat.spec.ts 正在载入提交数据...
custom_apps_folder.spec.ts 正在载入提交数据...
debugging_logs.spec.ts 正在载入提交数据...
default_chat_mode.spec.ts 正在载入提交数据...
delete_app.spec.ts 正在载入提交数据...
delete_provider.spec.ts 正在载入提交数据...
dump_messages.spec.ts 正在载入提交数据...
dyad_tags_parsing.spec.ts 正在载入提交数据...
dynamic_models.spec.ts 正在载入提交数据...
dynamic_models_real_api.spec.ts 正在载入提交数据...
edit_code.spec.ts 正在载入提交数据...
edit_custom_models.spec.ts 正在载入提交数据...
edit_provider.spec.ts 正在载入提交数据...
engine.spec.ts 正在载入提交数据...
env_var.spec.ts 正在载入提交数据...
favorite_app.spec.ts 正在载入提交数据...
file_tree_search.spec.ts 正在载入提交数据...
fix_error.spec.ts 正在载入提交数据...
free_agent_quota.spec.ts 正在载入提交数据...
git_collaboration.spec.ts 正在载入提交数据...
github-import.spec.ts 正在载入提交数据...
github.spec.ts 正在载入提交数据...
hmr_path.spec.ts 正在载入提交数据...
home_chat_existing_app.spec.ts 正在载入提交数据...
import.spec.ts 正在载入提交数据...
import_in_place.spec.ts 正在载入提交数据...
lm_studio.spec.ts 正在载入提交数据...
local_agent_advanced.spec.ts 正在载入提交数据...
local_agent_ask.spec.ts 正在载入提交数据...
local_agent_auto.spec.ts 正在载入提交数据...
local_agent_basic.spec.ts 正在载入提交数据...
local_agent_code_search.spec.ts 正在载入提交数据...
local_agent_connection_retry.spec.ts 正在载入提交数据...
local_agent_consent.spec.ts 正在载入提交数据...
local_agent_file_upload.spec.ts 正在载入提交数据...
local_agent_generate_image.spec.ts 正在载入提交数据...
local_agent_grep.spec.ts 正在载入提交数据...
local_agent_list_files.spec.ts 正在载入提交数据...
local_agent_persistent_todos.spec.ts 正在载入提交数据...
local_agent_read_logs.spec.ts 正在载入提交数据...
local_agent_run_type_checks.spec.ts 正在载入提交数据...
local_agent_search_replace.spec.ts 正在载入提交数据...
local_agent_step_limit.spec.ts 正在载入提交数据...
local_agent_summarize.spec.ts 正在载入提交数据...
local_agent_supabase_deploy_progress.spec.ts 正在载入提交数据...
local_agent_todo_followup.spec.ts 正在载入提交数据...
local_agent_web_fetch.spec.ts 正在载入提交数据...
logs_server.spec.ts 正在载入提交数据...
main.spec.ts 正在载入提交数据...
max_tool_call_steps.spec.ts 正在载入提交数据...
mcp.spec.ts 正在载入提交数据...
media_library.spec.ts 正在载入提交数据...
mention_app.spec.ts 正在载入提交数据...
mention_files.spec.ts 正在载入提交数据...
neon_branch.spec.ts 正在载入提交数据...
neon_migration.spec.ts 正在载入提交数据...
new_chat.spec.ts 正在载入提交数据...
nodejs_path_configuration.spec.ts 正在载入提交数据...
notification_banner.spec.ts 正在载入提交数据...
ollama.spec.ts 正在载入提交数据...
partial_response.spec.ts 正在载入提交数据...
pause_queue.spec.ts 正在载入提交数据...
per_chat_input.spec.ts 正在载入提交数据...
performance_monitor.spec.ts 正在载入提交数据...
plan_mode.spec.ts 正在载入提交数据...
preview_iframe.spec.ts 正在载入提交数据...
problems.spec.ts 正在载入提交数据...
prompt_library.spec.ts 正在载入提交数据...
queued_message.spec.ts 正在载入提交数据...
rebuild.spec.ts 正在载入提交数据...
refresh.spec.ts 正在载入提交数据...
reject.spec.ts 正在载入提交数据...
release_channel.spec.ts 正在载入提交数据...
rename_app.spec.ts 正在载入提交数据...
rename_edit.spec.ts 正在载入提交数据...
restart.spec.ts 正在载入提交数据...
retry.spec.ts 正在载入提交数据...
security_review.spec.ts 正在载入提交数据...
select_component.spec.ts 正在载入提交数据...
setup.spec.ts 正在载入提交数据...
setup_flow.spec.ts 正在载入提交数据...
smart_context_balanced.spec.ts 正在载入提交数据...
smart_context_deep.spec.ts 正在载入提交数据...
smart_context_options.spec.ts 正在载入提交数据...
socket_firewall.spec.ts 正在载入提交数据...
supabase_branch.spec.ts 正在载入提交数据...
supabase_client.spec.ts 正在载入提交数据...
supabase_migrations.spec.ts 正在载入提交数据...
supabase_stale_ui.spec.ts 正在载入提交数据...
switch_apps.spec.ts 正在载入提交数据...
switch_versions.spec.ts 正在载入提交数据...
telemetry.spec.ts 正在载入提交数据...
template-community.spec.ts 正在载入提交数据...
template-create-nextjs.spec.ts 正在载入提交数据...
theme_selection.spec.ts 正在载入提交数据...
themes_management.spec.ts 正在载入提交数据...
thinking_budget.spec.ts 正在载入提交数据...
toggle_screen_sizes.spec.ts 正在载入提交数据...
turbo_edits_options.spec.ts 正在载入提交数据...
turbo_edits_v2.spec.ts 正在载入提交数据...
uncommitted_files_banner.spec.ts 正在载入提交数据...
undo.spec.ts 正在载入提交数据...
version_integrity.spec.ts 正在载入提交数据...
version_search.spec.ts 正在载入提交数据...
visual_editing.spec.ts 正在载入提交数据...
voice_to_text.spec.ts 正在载入提交数据...