Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

test(windows): 会话词法回退期望未平台化 + drive_turn span 测试并行干扰——#142 修复后的下一层红

Open
#143 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
Half a day
Newbie friendliness
72/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
rust
Domain
testing

Research direction

Two Windows lib test failures after #142. For knowledge::session_query::tests::normalize_falls_back_to_lexical_for_missing_paths in src/knowledge/session_query.rs (~line 767), stop hardcoding POSIX expected paths; build the missing-path fixture with std::path / cfg(windows) so the lexical fallback includes a drive prefix. For runtime::tests::drive_turn_creates_instrumented_correlated_span in src/runtime/tests.rs (~2799), isolate the agent.turn span assertion with tracing::subscriber::with_default or serialize via test_util::env_lock. Done when cargo test --workspace is green on windows-latest through integration (issue51).

Written by the indexing model from the issue text.

Description

场景 gap 单(okguitar 提报)· 优先级 P3 · 依赖:无

基线 HEAD = ddc38999(#142 的修复已并入 main)。

Summary

#142 的目标测试 prepare_run_interrupt_before_conflict_without_resume 已转绿后,windows-latest 的 lib 仍两例同点红(run 37536218539 / job 112517702751:2947 passed / 2 failed):

  1. knowledge::session_query::tests::normalize_falls_back_to_lexical_for_missing_paths(src/knowledge/session_query.rs:767):
    assertion left == right failed; left: "D:\\definitely\\does\\not\\exist\\anywhere"; right: "/definitely/does/not/exist/anywhere" —— 缺失路径「词法回退」的期望未平台化(windows 盘符前缀)。
  2. runtime::tests::drive_turn_creates_instrumented_correlated_span(src/runtime/tests.rs:2799):
    drive_turn must create an agent.turn span —— 疑似并行测试下全局 tracing subscriber 被相邻测试覆盖(#117 引入的 span 断言对并行环境污染敏感)。

影响

windows-latest 的 cargo test --workspace 持续红(该红可追至 2970bca3,多提交连红、非单一提交引入)→ lib 失败 fail-fast,integration 目标(含 issue51)不再执行,#141 的 CI 复验被连带阻塞。

建议

  1. (1)的期望值按平台生成(std::path/cfg(windows) 构造 D:\ 前缀输入),不要硬编码 POSIX 路径;
  2. (2)在测试内用 tracing::subscriber::with_default 局部挂载,或与 env 敏感测试同锁串行化(test_util::env_lock 同类金丝雀),把 span 断言与全局 subscriber 隔离。

验收

  • windows-latest lib 全绿且 cargo 继续执行到 integration 目标(issue51 复验一并闭环);
  • 两例修复附「失败时给出明确错误」的断言强化(若适用)。
Dominant language
Rust
Stars
4
Forks
0
Avg merge
5h 32m
Merged PRs (30d)
7

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from jeffkit/recursive

All issues in jeffkit/recursive

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.