Skip to content

ci: run native and portable checks across six concurrent runners - #107

Merged
loadingalias merged 38 commits into
mainfrom
simple-ci
Sep 11, 2026
Merged

loadingalias merged 38 commits into
mainfrom
simple-ci

Conversation

@loadingalias

Copy link
Copy Markdown
Owner

No description provided.

Route CI through the shared pinned installers, install NASM for Windows
assembly, and omit tools that the CI checks do not use. Retain complete
native and portable test coverage, with script regressions on Linux x86-64.

Preserve backend fixture bytes with explicit byte extraction and strict
slice bounds, and document the existing unsafe test-helper requirements.
Let AEGIS-only RISC-V builds use the shared AES round operations without compiling unused key schedules and hardware backends. Preserve the existing round implementations and full AES feature behavior.
Preserve the failing Clippy exit status and stop before later workspaces. Add a regression covering early termination and status propagation.
Keep native CI tooling to Just and Nextest, and run dependency checks once on Linux x86-64 against the complete supported target graph. Preserve per-host compilation, documentation, and native and portable tests.

Drop explicit OpenSSL and pkgconf packages from Linux CI and omit optional APT recommendations. Cover provisioning profiles and dependency-check routing with regressions.
Gate hash, AEAD, and Argon2 SIMD dispatch on the module target feature so scalar WebAssembly can load with SIMD disabled. Preserve diagnostic entry points and unavailable-backend behavior.

Expose the existing runtime vectors to bare WASM and add the RFC 9106 Argon2id vector for scalar and SIMD execution.
Add a 32-vCPU compatibility runner with bounded feature, MSRV, bare-metal, and scalar/SIMD WASM/WASI checks. Keep it in the native fail-fast matrix without prerequisite dependencies.

Run complete musl native and portable suites with doctests on the matching Linux hosts. Provision only role-specific pinned tools and test process cancellation, command routing, and installer profiles.
Run optimized native and portable suites with doctests, verify packaged consumers, and add bounded fuzz/Miri and selectable native CT lanes through the shared tooling installers.

Reuse measurement runner selection and existing CT artifacts for a scoped SecretBytes cleanup sentinel. Retain explicit limits on full timing and whole-library zeroization qualification.
Keep portable P-256 and Windows ECDSA selection masks opaque to the tested compilers, and use fixed-bound ECDSA table traversal to avoid rejected RISC-V code generation. Retain target-specific binary and timing evidence requirements.
Resolve MSVC linker provenance and reconstruct final function ranges from its linker map. Count code symbols only and validate cleanup against the checked final disassembly, with negative controls for incomplete or inconsistent evidence.
Cross-build complete native and portable release suites and CT evidence on x86-64, then execute source-bound artifacts on physical RISC-V. Preserve doctest semantics, CT sampling and thresholds, and exact binary provenance while bounding native runner time.

Separate build and execution tooling and restore RSA doctest merging for ordinary runs. Local transfer, script, and CT harness regressions pass; the real cross-build and physical RISC-V qualification remain pending CI.
Exclude the host line when comparing producer and consumer version reports, while retaining the pinned release and full source revision checks. Preserve both full reports in the transfer evidence and cover differing hosts with the real archive regression.
@loadingalias
loadingalias merged commit d716b65 into main Sep 11, 2026
14 of 22 checks passed
@loadingalias
loadingalias deleted the simple-ci branch September 11, 2026 01:13
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