Skip to content

deps: bump the minor-and-patch group with 8 updates #140

deps: bump the minor-and-patch group with 8 updates

deps: bump the minor-and-patch group with 8 updates #140

Workflow file for this run

name: CI
on:
push:
branches: [main, develop, feat/pranit]
pull_request:
branches: [main, develop, feat/pranit]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
NODE_VERSION: '22'
PNPM_VERSION: '9'
CARGO_TERM_COLOR: always
CENTRAL_LICENSE_KEY: '38A7449F-8FCA-45E9-8FA4-E2C656E0F3AE'
jobs:
# ============================================
# Frontend - TypeScript/React
# ============================================
typecheck:
name: TypeScript
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'pnpm'
- run: pnpm install --frozen-lockfile
- run: pnpm typecheck
lint:
name: ESLint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'pnpm'
- run: pnpm install --frozen-lockfile
- run: pnpm lint
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'pnpm'
- run: pnpm install --frozen-lockfile
- run: pnpm test --if-present
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'pnpm'
- run: pnpm install --frozen-lockfile
- run: pnpm build:frontend
# Only upload artifacts on main branch to save storage
# continue-on-error prevents storage quota issues from failing the build
- name: Upload build
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
continue-on-error: true
uses: actions/upload-artifact@v6
with:
name: dist-${{ github.sha }}
path: dist/
retention-days: 3
# ============================================
# Backend - Rust/Tauri
# ============================================
rust-fmt:
name: Rust Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --all -- --check
rust-clippy:
name: Rust Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --all-targets --all-features -- -D warnings
rust-test:
name: Rust Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo test --all-features
rust-deny:
name: Cargo Deny
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@stable
- name: Install cargo-deny
run: cargo install cargo-deny --locked
- name: Run cargo-deny
run: cargo deny check
rust-machete:
name: Unused Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: bnjbvr/cargo-machete@main
rust-doc:
name: Documentation
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: '-D warnings'
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo doc --no-deps --all-features
rust-msrv:
name: MSRV Check (1.85)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential lld libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig" >> $GITHUB_ENV
- name: Create placeholder binaries for CI
run: |
mkdir -p src-tauri/binaries
touch src-tauri/binaries/agent-bridge-x86_64-unknown-linux-gnu
touch src-tauri/binaries/claude-x86_64-unknown-linux-gnu
chmod +x src-tauri/binaries/*
- uses: dtolnay/rust-toolchain@1.85.0
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: false
- run: cargo check --all-features
# ============================================
# QUALITY GATE - Required status check
# ============================================
ci-passed:
name: CI Passed
runs-on: ubuntu-latest
needs:
[
typecheck,
lint,
test,
build,
rust-fmt,
rust-clippy,
rust-test,
rust-deny,
rust-machete,
rust-doc,
rust-msrv,
]
if: always()
steps:
- name: Check results
run: |
# Frontend checks
frontend="${{ needs.typecheck.result }} ${{ needs.lint.result }} ${{ needs.build.result }}"
# Rust checks (required)
rust="${{ needs.rust-fmt.result }} ${{ needs.rust-clippy.result }} ${{ needs.rust-test.result }}"
rust+=" ${{ needs.rust-deny.result }} ${{ needs.rust-doc.result }} ${{ needs.rust-msrv.result }}"
# Optional checks
test_result="${{ needs.test.result }}"
machete_result="${{ needs.rust-machete.result }}"
for result in $frontend $rust; do
if [[ "$result" != "success" ]]; then
echo "❌ CI failed"
exit 1
fi
done
# Allow skipped tests (if no test script)
if [[ "$test_result" != "success" && "$test_result" != "skipped" ]]; then
echo "❌ Tests failed"
exit 1
fi
# Warn but don't fail on unused deps
if [[ "$machete_result" != "success" ]]; then
echo "⚠️ Unused dependencies detected (non-blocking)"
fi
echo "✅ All checks passed"