Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
8dcac5f
[Feat] Feature: New Python-based Model Manager (#820)
samzong Dec 14, 2025
41c75c2
Add hybrid routing tests, Keyword → Embedding → BERT → MCP (#829)
szedan-rh Dec 15, 2025
317dfcf
Add Entropy testing for reasnoning decision acccording to probabiliti…
szedan-rh Dec 15, 2025
c33bafe
Disable the peformance comparision agaist baseline, keep just the per…
szedan-rh Dec 15, 2025
d13749e
update: Improve Model Manager Configuration and CI Integration (#830)
JaredforReal Dec 15, 2025
f5073be
fix(dashboard): proxy Jaeger /dependencies route (#839)
samzong Dec 15, 2025
5b18a79
Adding new tests for reasoning filter (#843)
szedan-rh Dec 15, 2025
6f79e07
[CI] e2e: add Response API basic operations tests (#826)
tao12345666333 Dec 15, 2025
532d668
Sponsor: Add AMD Partnership (#847)
Xunzhuo Dec 16, 2025
a6ec94d
feat: add hallucination bench (#838)
rootfs Dec 16, 2025
715b3db
Test: Add comprehensive tests for PII and TLS utility modules (#840)
JaredforReal Dec 16, 2025
ec4a659
fix: regenerate package-lock.json with official npm registry (#846)
samzong Dec 16, 2025
8167837
add fin benchmark (#851)
Sophie8 Dec 16, 2025
063216d
feat: add configurable port support for Open WebUI iframe (#844)
samzong Dec 17, 2025
787144d
feat: add upstream request span and trace context propagation for dis…
HanFa Dec 17, 2025
ad8ad74
refactor: remove unused MappingPath from FactCheckModelConfig (#854)
Xunzhuo Dec 17, 2025
381e1a8
fix: StatefulSet readiness detection and add Dynamo demo video (#856)
abdallahsamabd Dec 17, 2025
211b46c
Fix Domain Classifier Returns Empty or Wrong Classifications (#827)
yehuditkerido Dec 17, 2025
901f0d8
[Feat] All-in-One Docker image for single-container (#845)
samzong Dec 17, 2025
439a18b
Fix Playground tab to use backend proxy route instead of direct URL (…
liavweiss Dec 18, 2025
90e6975
🔧 chore(ci): disable arm64 build in docker-stack workflow due to buil…
samzong Dec 18, 2025
a984df3
feat: Add dashboard checks and CI workflow (#861)
samzong Dec 18, 2025
5694873
fix: refactor documentation and improve clarity across multiple doc f…
wilsonwu Dec 18, 2025
3e6fd95
feat(hf-playground): add more models to hf playground (#864)
Xunzhuo Dec 18, 2025
12ea0d6
Created comprehensive test coverage in req_filter_tools_test.go with …
szedan-rh Dec 18, 2025
5c097a8
feat(cli): implement VSR CLI tool for semantic router management
srini-abhiram Dec 14, 2025
4719518
fix(cli): resolve CLI test failures and CGO dependency issues
srini-abhiram Dec 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 85 additions & 0 deletions .github/workflows/dashboard-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Dashboard Test

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
branches:
- main
push:
branches:
- main
workflow_dispatch: # Allow manual triggering

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
# Use changes filter to detect dashboard changes
changes:
uses: ./.github/workflows/ci-changes.yml

dashboard-test:
needs: changes
if: >-
${{ !github.event.pull_request.draft
&& needs.changes.outputs.dashboard == 'true' }}
runs-on: ubuntu-latest
name: Dashboard Lint and Type Check

steps:
- name: Check out the repo
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: "23"

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.24"

- name: Cache Node.js dependencies
uses: actions/cache@v4
with:
path: |
~/.npm
dashboard/frontend/node_modules
key: ${{ runner.os }}-node-dashboard-${{ hashFiles('dashboard/frontend/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-dashboard-

- name: Cache Go dependencies
uses: actions/cache@v4
with:
path: |
~/go/pkg/mod
key: ${{ runner.os }}-go-dashboard-${{ hashFiles('dashboard/backend/go.sum') }}
restore-keys: |
${{ runner.os }}-go-dashboard-

- name: Set up golangci-lint
uses: golangci/golangci-lint-action@v7
with:
version: v2.5.0
install-mode: binary
args: --help

- name: Run dashboard checks
run: make dashboard-check

- name: Build dashboard
run: make dashboard-build

- name: Show results on failure
if: failure()
run: |
echo "::error::Dashboard checks failed. Please fix the issues and commit again."
echo ""
echo "To run checks locally:"
echo " make dashboard-check"
echo ""
echo "To auto-fix lint issues:"
echo " make dashboard-lint-fix"
136 changes: 136 additions & 0 deletions .github/workflows/docker-stack.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
name: Build Stack Docker Image

on:
workflow_dispatch:
push:
branches: ["main"]
paths:
- "Dockerfile.stack"
- "deploy/stack/**"
- "!deploy/stack/*.md"
pull_request:
paths:
- "Dockerfile.stack"
- "deploy/stack/**"
- "!deploy/stack/*.md"

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}/stack

jobs:
build:
if: github.repository == 'vllm-project/semantic-router' && !github.event.pull_request.draft
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
strategy:
matrix:
# arch: [amd64, arm64]
arch: [amd64]
fail-fast: true

steps:
- name: Free Disk Space
uses: jlumbroso/free-disk-space@main
with:
tool-cache: true
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true

- name: Setup Docker to use /mnt
run: |
# Stop docker
sudo systemctl stop docker

# Move docker data to /mnt
sudo mv /var/lib/docker /mnt/docker
sudo ln -s /mnt/docker /var/lib/docker

# Restart docker
sudo systemctl start docker

# Verify
df -h /mnt

- name: Check out the repo
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
buildkitd-config-inline: |
[worker.oci]
gc = false
[worker.containerd]
gc = false
driver-opts: |
image=moby/buildkit:latest
env.BUILDKIT_STEP_LOG_MAX_SIZE=-1
network=host

# - name: Set up QEMU
# if: matrix.arch == 'arm64'
# uses: docker/setup-qemu-action@v3
# with:
# platforms: arm64

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile.stack
platforms: linux/${{ matrix.arch }}
push: ${{ github.event_name != 'pull_request' }}
load: ${{ github.event_name == 'pull_request' && matrix.arch == 'amd64' }}
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}-${{ matrix.arch }}
cache-from: type=gha,scope=${{ matrix.arch }}
cache-to: type=gha,mode=max,scope=${{ matrix.arch }}

# Create multi-arch manifest
manifest:
needs: build
if: github.event_name != 'pull_request'
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Create and push manifest
run: |
docker buildx imagetools create \
--tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }} \
--tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest \
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}-amd64
# TODO: Re-enable arm64 when buildx supports it
# ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}-arm64

- name: Build summary
run: |
echo "### Stack Build Summary" >> $GITHUB_STEP_SUMMARY
echo "- **Image**: \`${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest\`" >> $GITHUB_STEP_SUMMARY
echo "- **Architectures**: amd64" >> $GITHUB_STEP_SUMMARY
Loading
Loading