Skip to content

Monorepo & matrix

Point the Action at a subdirectory with working-directory; config is resolved relative to it:

- uses: plune-ai/eval-action@v1
with:
working-directory: packages/chatbot
config: plune.yaml # i.e. packages/chatbot/plune.yaml
base-ref: main

To evaluate multiple packages (or multiple configs) in one workflow, fan out with a matrix:

jobs:
plune:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
package: [chatbot, search, summarizer]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: plune-ai/eval-action@v1
with:
working-directory: packages/${{ matrix.package }}
config: plune.yaml
fail-on-regression: true

Each leg runs independently, and fail-on-regression gates each one — so a regression in any package turns that leg (and the check) red.

Pair the matrix with paths filters (or a path-aware trigger) so each suite runs only when its package changes — cheaper CI and less comment churn:

on:
pull_request:
paths: ['packages/chatbot/**']