wavefnd / wavefnd/Wave

Run frontend driver regressions in isolated LLVM backend CI jobs

Open Beginner friendly
#487 0 comments 0 reactions 0 assignees View on GitHub
build ci good first issue needs testing
Dominant language
Rust
Stars
53
Forks
16
Avg merge
4h 22m
Merged PRs (30d)
46

Description

## Gap

The frontend driver tests introduced in #486 select an enabled LLVM target, so they can run in isolated backend builds. However, `.github/workflows/rust.yml` currently runs the isolated WebAssembly and LoongArch jobs with only `--test codegen_regressions` and a name filter (`webassembly_` or `loongarch64_`). Those steps never execute `tests/frontend_regressions.rs`. The default workspace and full core64 lanes cover these tests, but cannot catch accidental reliance on another enabled backend in the isolated configurations.

This is an additional CI coverage task after #486, not a request to repair a currently failing frontend test.

## Small contribution

Add a separate frontend driver step to each existing isolated WebAssembly and LoongArch job:

```bash
cargo test --locked --no-default-features --features llvm-target-wasm --test frontend_regressions --jobs 2
cargo test --locked --no-default-features --features llvm-target-loongarch --test frontend_regressions --jobs 2
```

Run each command in its corresponding existing job after toolchain/stdlib setup. Do not pass the codegen test-name filter to these commands: it would select zero frontend tests. No new runner, backend implementation, or target matrix is needed.

On #486's local head `6fb6ed7`, WebAssembly frontend tests passed 4/4 and the LoongArch frontend suite passed 3/3 during validation.

## Acceptance

- [ ] Both isolated jobs execute the frontend test binary and report a nonzero test count.
- [ ] Existing codegen/ABI smoke steps remain intact.
- [ ] The WebAssembly suite exercises wasm32 versus wasm64 pointer-sized integer behavior.
- [ ] Commands retain `--locked` and `--jobs 2`.

Start in `.github/workflows/rust.yml` and `tests/frontend_regressions.rs`. This is suitable for a first contribution because the tests and required toolchains already exist.

Contributor guide

Open the contributing guide

Research direction

Start in .github/workflows/rust.yml and compare the existing isolated WebAssembly and LoongArch jobs, then inspect tests/frontend_regressions.rs to confirm the frontend test binary and target coverage. Add the separate commands after toolchain and stdlib setup while keeping the existing codegen/ABI steps intact. Done means both jobs report a nonzero frontend test count with --locked and --jobs 2.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, rust
Domain
ci-cd
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
90/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.