Summary
Add an Azure Pipelines configuration to run CPU-only cross-platform verification on ubuntu-latest, macos-latest, and windows-latest alongside the existing GitHub Actions workflow (.github/workflows/ci.yml).
Motivation
The repository currently validates builds and tests exclusively through GitHub Actions on ubuntu-latest only (basic fmt/clippy/build/test with pinned actions and caching). Running the same CPU checks on Azure Pipelines provides:
- Cross-platform coverage for macOS and Windows (critical for a pure-Rust, zero-dependency crate that should behave identically everywhere).
- A redundant CI signal in case GitHub Actions has outages or runner issues.
- Early detection of platform-specific build/test regressions (e.g., path separators, case sensitivity, linking, line endings).
This follows the exact pattern established in the sibling rmems/corinth-canal repo (open issue #109) for org consistency across Limen-Neural Rust libraries.
Scope
Run the following CPU-only checks on every pull request and push to main:
cargo fmt --check
cargo clippy --all-targets --all-features -- -D warnings (adapt dead_code allowance if any in engram surface)
cargo test --all-features (or --lib --locked for speed)
cargo check --examples --all-features --locked (or build)
- Optional:
cargo llvm-cov --lib --all-features --locked --lcov --output-path lcov.info (follow-up if coverage desired)
Platforms:
ubuntu-latest
macos-latest
windows-latest
Toolchain: latest stable Rust via rustup default stable.
The azure-pipelines.yml should live at the repository root (matching corinth-canal convention).
Non-goals
- GPU/CUDA or self-hosted runners (n/a for this pure CPU zero-dep crate; those remain on GitHub Actions if ever added).
- Docker build/publish remains (or will be) on GitHub Actions (see sibling Docker issue).
- Sentry release workflow (not used here).
- Making the Azure check required immediately (start as informational, per corinth #109 open questions).
Acceptance Criteria
Open Questions
- Should Azure Pipelines upload LCOV coverage to Codecov to mirror GitHub Actions (if coverage step is added)?
- Should the Azure Pipelines check be required for merge, or start as informational?
- Which Azure Pipelines caching strategy should be used for Cargo registry and
target/ (matching the existing GH ci.yml cache key)?
- Any org-level Azure DevOps project/secret setup required beyond the yml?
Related
Modeled after corinth-canal #109 and engram's existing CI patterns for org consistency.
Summary
Add an Azure Pipelines configuration to run CPU-only cross-platform verification on
ubuntu-latest,macos-latest, andwindows-latestalongside the existing GitHub Actions workflow (.github/workflows/ci.yml).Motivation
The repository currently validates builds and tests exclusively through GitHub Actions on
ubuntu-latestonly (basic fmt/clippy/build/test with pinned actions and caching). Running the same CPU checks on Azure Pipelines provides:This follows the exact pattern established in the sibling
rmems/corinth-canalrepo (open issue #109) for org consistency across Limen-Neural Rust libraries.Scope
Run the following CPU-only checks on every pull request and push to
main:cargo fmt --checkcargo clippy --all-targets --all-features -- -D warnings(adapt dead_code allowance if any in engram surface)cargo test --all-features(or--lib --lockedfor speed)cargo check --examples --all-features --locked(or build)cargo llvm-cov --lib --all-features --locked --lcov --output-path lcov.info(follow-up if coverage desired)Platforms:
ubuntu-latestmacos-latestwindows-latestToolchain: latest stable Rust via
rustup default stable.The
azure-pipelines.ymlshould live at the repository root (matching corinth-canal convention).Non-goals
Acceptance Criteria
azure-pipelines.ymlexists at the repository root.main.README.md) mentions the new pipeline in a## Developmentor CI section (with commands + links to both GH + Azure).Open Questions
target/(matching the existing GH ci.yml cache key)?Related
.github/workflows/ci.yml(current GH Actions)Modeled after corinth-canal #109 and engram's existing CI patterns for org consistency.