Skip to content

ci: add weekly ASan/UBSan sanitizer workflow#242

Open
drappi-ai wants to merge 2 commits intoseismicfrom
cdai__ci-sanitizers
Open

ci: add weekly ASan/UBSan sanitizer workflow#242
drappi-ai wants to merge 2 commits intoseismicfrom
cdai__ci-sanitizers

Conversation

@drappi-ai
Copy link
Copy Markdown
Contributor

Summary

  • Add .github/workflows/sanitizers.yml with two parallel jobs: ASan (GCC) and UBSan (Clang)
  • Runs weekly on Sunday at midnight UTC via cron, plus manual workflow_dispatch trigger
  • ASan job builds with -DSANITIZE=address using GCC at -j 2 (reduced parallelism to avoid OOM), sets ASAN_OPTIONS and LSAN_OPTIONS with the existing .circleci/cln-asan.supp suppression file
  • UBSan job builds with -DSANITIZE=undefined using Clang at full parallelism
  • Both jobs use Release builds, ccache, and run soltest.sh --no-smt (which already passes --no-semantic-tests)

Test plan

  • Trigger workflow manually via workflow_dispatch to verify both jobs complete
  • Confirm ASan job detects known sanitizer issues (if any)
  • Confirm UBSan job detects known sanitizer issues (if any)
  • Verify ccache is populated and restored on subsequent runs

Add a GitHub Actions workflow that runs AddressSanitizer (GCC) and
UndefinedBehaviorSanitizer (Clang) builds weekly on Sunday at midnight
UTC, with manual trigger support. Both jobs build in Release mode with
ccache and run soltest with --no-smt and --no-semantic-tests. ASan uses
reduced parallelism (-j 2) to avoid OOM and sets ASAN_OPTIONS/LSAN_OPTIONS
with the existing .circleci/cln-asan.supp suppression file.
@drappi-ai drappi-ai requested a review from cdrappi as a code owner March 12, 2026 12:58
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.

2 participants