Skip to content

chore(ci): Graduate sanitizer jobs from Phase 0 to Phase 1#396

Merged
kcenon merged 2 commits into
mainfrom
chore/graduate-sanitizers-phase1
Mar 6, 2026
Merged

chore(ci): Graduate sanitizer jobs from Phase 0 to Phase 1#396
kcenon merged 2 commits into
mainfrom
chore/graduate-sanitizers-phase1

Conversation

@kcenon

@kcenon kcenon commented Mar 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • graduate sanitizer CI from observation mode to blocking mode by removing || true from the sanitizer ctest invocation
  • add TSAN_OPTIONS with a repository suppression file so the known config_watcher Linux race does not prevent the broader Phase 1 rollout
  • rename the workflow comments from Phase 0 to Phase 1 to match the new enforcement level

Changes

  • .github/workflows/ci.yml: sanitizer test failures now fail the GitHub Actions job instead of being ignored
  • .github/workflows/ci.yml: ThreadSanitizer runs with halt_on_error=1 and sanitizers/tsan_suppressions.txt
  • sanitizers/tsan_suppressions.txt: add temporary suppressions for the known config_watcher inotify fd race tracked in fix(config): Data race in config_watcher inotify fd access #397

Why this shape

Verification

  • reviewed the workflow diff to confirm sanitizer test failures now propagate a non-zero exit code
  • reviewed the suppression entries and matched them to the config_watcher race tracked in fix(config): Data race in config_watcher inotify fd access #397
  • expected follow-up: remove the temporary suppression once the underlying race is fixed

Refs #394

Remove || true from sanitizer ctest commands so sanitizer failures
now block merges instead of being silently ignored.

Refs: #394
Add suppression file for known data race in config_watcher
inotify fd access between cleanup and watch threads.

Follow-up fix tracked in #397
@kcenon kcenon merged commit 2f128c8 into main Mar 6, 2026
27 checks passed
@kcenon kcenon deleted the chore/graduate-sanitizers-phase1 branch March 6, 2026 08:06
kcenon added a commit that referenced this pull request Apr 13, 2026
* chore(ci): graduate sanitizer jobs from Phase 0 to Phase 1

Remove || true from sanitizer ctest commands so sanitizer failures
now block merges instead of being silently ignored.

Refs: #394

* chore(ci): add TSan suppression for config_watcher data race

Add suppression file for known data race in config_watcher
inotify fd access between cleanup and watch threads.

Follow-up fix tracked in #397
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant