Skip to content

Improvement: Add sanitizer CI (ASAN/TSAN/UBSAN) #43

@lavrovvalera

Description

@lavrovvalera

What

Add dynamic analysis via compiler sanitizers. The S-CORE process requires
ASAN/LSAN (memory + leaks), TSAN (data races), and UBSAN (undefined
behaviour). score_cpp_policies provides ready-made sanitizer Bazel configs.

Steps:

  1. Add sanitizer Bazel configs to .bazelrc using configs from
    score_cpp_policies:
build:asan --config=time-x86_64-linux # + asan flags from score_cpp_policies
build:tsan --config=time-x86_64-linux # + tsan flags
build:ubsan --config=time-x86_64-linux # + ubsan flags
  1. Create .github/workflows/sanitizers.yml running tests under each config
    (reuses cicd-workflows/tests.yml@main) — run on PR and/or daily

References

Estimates for realization

S - Day

Category

  • Affects Detailed Design

Requirements / Architecture

  • Requirements / Architecture are not affected by this change?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No fields configured for Task.

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions