Problem
The current workflow mixes frontend validation, Rust checks, cross-platform builds, end-to-end tests, and plugin packaging in broadly scoped jobs. Pull requests validate the main checks only on Ubuntu, so Windows and macOS regressions may be discovered after merging. Some setup and build work is also duplicated, and job responsibilities are not always clear.
Expected outcome
A faster and easier-to-maintain CI pipeline that gives reliable feedback and validates Ubuntu, Windows, and macOS before merge without weakening existing checks.
Product area
Packaging or compatibility
Proposed scope
- Separate frontend, Rust quality, platform tests, and packaging responsibilities.
- Run the appropriate Rust build and test coverage on all three platforms for pull requests.
- Reuse the compiled frontend artifact and improve dependency caching.
- Keep frontend tests, lint, build, local end-to-end tests, and plugin validation.
- Preserve minimal permissions, pull-request cancellation, and offline-only execution.
- Keep required check names stable or update branch protection safely.
Alternatives considered
Keep the current workflow unchanged. This would preserve simplicity but would continue detecting Windows and macOS failures only after merge.
Compatibility, safety, and performance impact
No product API, storage, runtime, or provider behavior changes are expected. Required status checks may need a coordinated update if job names change. Before-and-after workflow timings should be recorded.
Acceptance evidence
A pull request run completes successfully with the required Rust, frontend, end-to-end, and plugin checks, including platform coverage on Ubuntu, Windows, and macOS. Intentional failures are reported by the relevant job.
Additional context
Current workflow: https://github.com/IASolutionOrg/Needle/blob/main/.github/workflows/ci.yml
Submission checks
Problem
The current workflow mixes frontend validation, Rust checks, cross-platform builds, end-to-end tests, and plugin packaging in broadly scoped jobs. Pull requests validate the main checks only on Ubuntu, so Windows and macOS regressions may be discovered after merging. Some setup and build work is also duplicated, and job responsibilities are not always clear.
Expected outcome
A faster and easier-to-maintain CI pipeline that gives reliable feedback and validates Ubuntu, Windows, and macOS before merge without weakening existing checks.
Product area
Packaging or compatibility
Proposed scope
Alternatives considered
Keep the current workflow unchanged. This would preserve simplicity but would continue detecting Windows and macOS failures only after merge.
Compatibility, safety, and performance impact
No product API, storage, runtime, or provider behavior changes are expected. Required status checks may need a coordinated update if job names change. Before-and-after workflow timings should be recorded.
Acceptance evidence
A pull request run completes successfully with the required Rust, frontend, end-to-end, and plugin checks, including platform coverage on Ubuntu, Windows, and macOS. Intentional failures are reported by the relevant job.
Additional context
Current workflow: https://github.com/IASolutionOrg/Needle/blob/main/.github/workflows/ci.yml
Submission checks