Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

PTY snapshot suite: rare non-repeating case failures under parallel load (pass in isolation)

未关闭
#2,565 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
45/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
rust
领域
testing

调研方向

从 just snapshot-test migration 和 PTY snapshot runner 开始,使用 rust-toolchain.toml 以及列出的 migration fixtures 作为复现环境。比较冷缓存并行运行与隔离运行和热缓存运行,并添加建议的计时、详细程度或重试检测。完成的标准是解释清楚对负载敏感的失败,并且 migration suite 不再产生无法解释的间歇性失败。

由索引模型根据 Issue 内容生成。

描述

Summary

Running the full migration* PTY snapshot suite in parallel occasionally fails a small, non-repeating set of cases (~0.4% of case-executions). Every affected case passes deterministically when run in isolation, and the failing names differ between runs — so this looks like load-sensitivity in the PTY runner environment rather than any individual fixture or product bug. Filing per m0g3r's suggestion in #2483 after it showed up there first.

Observations (macOS arm64, M-series, just snapshot-test migration)

Five full-suite runs across two commits, all with a fresh packages/cli/dist (freshness guard green):

run commit result failed cases
A 31163c5 (PR #2483 branch) 151/154 migration_dynamic_oxc_configs, migration_framework_shim_vue, migration_standalone_yarn4_idempotent
B cc20535d (main) 159/161 migration_not_supported_vitest3, migration_from_tsup_monorepo_success
C cc20535d (main) 161/161 —
D cc20535d (main) 161/161 —
E 31163c5, earlier same-day 148/154 different set again (incl. migration_husky_or_prepare, migration_standalone_bun_install)
  • No case name repeats across runs. Union of failures over five runs: 10+ distinct fixtures, each failing exactly once.
  • Every one of them passes in isolation (just snapshot-test <name>), immediately after the failing run, unchanged tree.
  • The failure-heavy runs were the first suite run after a fresh build / cold caches; warm re-runs (C, D) were fully green. Cold-state work on first touch (managed runtime provisioning, registry-bridge first hits) overlapping with ~14 parallel PTY cases is my best guess at the mechanism, but I have not isolated it.
  • m0g3r additionally verified in #2483 that the flaked fixtures are structurally unremarkable (step counts mid-pack; one of 21 double-vp migrate fixtures).

Why it may matter

Locally it's a shrug; in CI a 0.4% per-case flake across ~650 cases makes a meaningful fraction of runs red for reasons unrelated to the diff under test, and the changing names make it hard for contributors to tell signal from noise (it cost a round of triage on #2483).

Environment

  • macOS arm64 (Darwin 25.2), 14 threads reported by the runner
  • just snapshot-test migration (both flavors), toolchain per rust-toolchain.toml

Happy to re-run with any added instrumentation (timings, per-case retries, runner verbosity) if that helps narrow it — I can reproduce roughly one flaky run per two or three cold full-suite runs.

主要语言
Rust
星标
6k
派生
274
平均合并
1 天 11 小时
30 天内合并 PR
203

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

voidzero-dev/vite-plus 的其他 Issue

查看 voidzero-dev/vite-plus 的全部 Issue

相似的 Issue

更多 Rust Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。