-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: Tools
-
None
-
Storage Engines - Foundations
-
20
-
None
-
None
Issue Summary
Multiple issues have been identified with CI scripts:
- In dist/s_all, failures are difficult to locate in CI logs due to error output being interleaved with extensive shell tracing. The final summary only lists the failing script (e.g., Fatal errors reported by: s_define) without error details, requiring manual log searching.
- In dist/s_export, on macOS, the symbol check incorrectly flags symbols (e.g., wiredtiger_crc32c_with_seed_func) as unexpected external symbols. The script examines the DWARF debug bundle (.dSYM) generated alongside the .dylib, which contains files with the same extension, leading to false failures.
- In test/evergreen/evg_cfg.py, the s_evergreen script floods output with fake missing tasks for paths like .claude_some_path_name. These are not real tasks but are Claude Code's isolated git worktrees (e.g., .claude/worktrees/) being picked up by the find command, resulting in batches of false failures for every active or past worktree.
Context
- The current logging approach in s_all makes error investigation inefficient.
- The symbol check logic in s_export does not distinguish between actual libraries and debug bundles on macOS.
- The find command in s_evergreen does not filter out non-task directories, causing noise in the output.
Proposed Solution
- Update s_all to improve error reporting by summarizing or highlighting actual errors in the final output, making failures easier to locate.
- Refine s_export to ignore .dSYM bundles or to distinguish between real .dylib files and those inside debug bundles on macOS.
- Adjust s_evergreen to filter out paths under .claude/worktrees/ or similar non-task directories to prevent reporting fake missing tasks.
Original Slack thread: Slack Thread
This ticket was generated by AI from a Slack thread.