Skip to content

[BUG] CI never runs engine-bridge or dashboard test/lint/build #158

Description

@N-thnI

Description

.github/workflows/ci.yml only builds and tests the Rust workspace (engine-core). It never runs engine-bridge or dashboard — meaning a broken npm test, npm run build, or npm run lint in either sub-project can merge to main with a fully green CI check.

Affected Component

.github/workflows/ci.yml

Current Behavior

The single build-and-test job runs:

- run: cargo build --target wasm32-unknown-unknown --release
- run: cargo test

No step installs Node, runs npm install, or invokes npm run build / npm test / npm run lint in engine-bridge/ or dashboard/.

Expected Behavior

CI should fail if engine-bridge or dashboard fail to build, fail their test suite, or fail lint — the same bar already applied to engine-core.

Steps to Reproduce

  1. Open .github/workflows/ci.yml.
  2. Note the jobs.build-and-test.steps list only references cargo.
  3. Break engine-bridge/package.json's test script (e.g. point it at a nonexistent file) and push — CI stays green.

Root Cause

The CI workflow was scaffolded for the Rust crate only and never extended when engine-bridge and dashboard were added to the repo.

Requirements

  1. MUST add a job (or steps) that runs npm ci && npm run build && npm test && npm run lint in engine-bridge/.
  2. MUST add the same for dashboard/.
  3. SHOULD run the two Node jobs in parallel with the Rust job to avoid slowing down CI.

Suggested Fix

Create branch fix/ci-add-bridge-dashboard-jobs and add two additional jobs to .github/workflows/ci.yml (engine-bridge and dashboard), each using actions/setup-node@v4 followed by npm ci, npm run build, npm test, and npm run lint, scoped via working-directory.

Acceptance Criteria

  • AC-1: A PR that breaks engine-bridge's or dashboard's build/tests/lint fails CI.
  • AC-2: All three jobs (engine-core, engine-bridge, dashboard) are required status checks on main.
  • AC-3: Existing green state is preserved — no job fails on the current main.

Definition of Done

  • Fix merged to main.
  • Branch protection rules updated to require the new checks.
  • CI green on the merge commit.

Metadata

Metadata

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26bugSomething isn't workingengine-coreRust/Soroban engine-core crate

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions