Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
23 changes: 18 additions & 5 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
jobs:
pre-commit:
runs-on: ubuntu-latest
name: Run pre-commit hooks on Go, Rust, and Python files
name: Run pre-commit hooks on Go, Rust, JavaScripts and Python files

steps:
- name: Check out the repo
Expand All @@ -28,6 +28,11 @@ jobs:
with:
go-version: '1.24'

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

- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
with:
Expand Down Expand Up @@ -60,6 +65,13 @@ jobs:
~/go/pkg/mod
key: ${{ runner.os }}-go-precommit-${{ hashFiles('**/go.sum') }}

- name: Cache Node dependencies
uses: actions/cache@v4
with:
path: |
~/website/node_modules
key: ${{ runner.os }}-node-precommit-${{ hashFiles('website/package.json') }}

- name: Cache pre-commit environments
uses: actions/cache@v4
with:
Expand All @@ -69,13 +81,14 @@ jobs:
- name: Install pre-commit
run: pip install pre-commit

- name: Run pre-commit on Go, Rust, and Python files
- name: Run pre-commit on Go, Rust, JavaScript and Python files
run: |
# Find all Go, Rust, and Python files (excluding vendored/generated code)
FILES=$(find . -type f \( -name "*.go" -o -name "*.rs" -o -name "*.py" \) \
# Find all Go, Rust, JavaScripts and Python files (excluding vendored/generated code)
FILES=$(find . -type f \( -name "*.go" -o -name "*.rs" -o -name "*.py" -o -name "*.js" \) \
! -path "./target/*" \
! -path "./candle-binding/target/*" \
! -path "./.git/*" \
! -path "./node_modules/*" \
! -path "./vendor/*" \
! -path "./__pycache__/*" \
! -path "./site/*" \
Expand All @@ -86,7 +99,7 @@ jobs:
echo "Running pre-commit on files: $FILES"
pre-commit run --files $FILES
else
echo "No Go, Rust, or Python files found to check"
echo "No Go, Rust, JavaScript or Python files found to check"
fi

- name: Show pre-commit results
Expand Down
15 changes: 12 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ repos:
rev: v6.0.0
hooks:
- id: trailing-whitespace
files: \.(go|rs|py)$
files: \.(go|rs|py|js)$
- id: end-of-file-fixer
files: \.(go|rs|py)$
files: \.(go|rs|py|js)$
- id: check-added-large-files
args: ['--maxkb=500']
files: \.(go|rs|py)$
files: \.(go|rs|py|js)$

# Go specific hooks
- repo: local
Expand All @@ -22,6 +22,15 @@ repos:
language: system
files: \.go$

# JavaScript specific hooks
- repo: local
hooks:
- id: js-lint
name: js lint
entry: bash -c 'cd website && npm install eslint && npm run lint'
language: system
files: \.js$

# Rust specific hooks
- repo: local
hooks:
Expand Down
8 changes: 8 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -215,3 +215,11 @@ docs-serve: docs-build
docs-clean:
@echo "Cleaning documentation build artifacts..."
cd website && npm run clear

docs-lint:
@echo "Linting documentation..."
cd website && npm run lint

docs-lint-fix:
@echo "Fixing documentation lint issues..."
cd website && npm run lint:fix
6 changes: 3 additions & 3 deletions src/semantic-router/cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ import (
"os"

"github.com/prometheus/client_golang/prometheus/promhttp"
"github.com/vllm-project/semantic-router/semantic-router/pkg/api"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/semantic-router/pkg/observability"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/api"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/observability"
)

func main() {
Expand Down
6 changes: 3 additions & 3 deletions src/semantic-router/go.mod
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
module github.com/vllm-project/semantic-router/semantic-router
module github.com/vllm-project/semantic-router/src/semantic-router

go 1.24.1

replace (
github.com/vllm-project/semantic-router/candle-binding => ../../candle-binding
github.com/vllm-project/semantic-router/semantic-router/pkg/config => ./pkg/config
github.com/vllm-project/semantic-router/semantic-router/pkg/extproc => ./pkg/extproc
github.com/vllm-project/semantic-router/src/semantic-router/pkg/config => ./pkg/config
github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc => ./pkg/extproc
)

require (
Expand Down
6 changes: 3 additions & 3 deletions src/semantic-router/pkg/api/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ import (
"sync"
"time"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/semantic-router/pkg/services"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/services"
)

// ClassificationAPIServer holds the server state and dependencies
Expand Down
4 changes: 2 additions & 2 deletions src/semantic-router/pkg/api/server_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import (
"net/http/httptest"
"testing"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/services"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/services"
)

func TestHandleBatchClassification(t *testing.T) {
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/cache/cache_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import (
. "github.com/onsi/gomega"

candle "github.com/vllm-project/semantic-router/candle-binding"
"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
)

func TestCache(t *testing.T) {
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/config/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (

"gopkg.in/yaml.v3"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"

. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/config/parse_configfile_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (
. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

var _ = Describe("ParseConfigFile and ReplaceGlobalConfig", func() {
Expand Down
6 changes: 3 additions & 3 deletions src/semantic-router/pkg/extproc/caching_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ import (

ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
)

var _ = Describe("Caching Functionality", func() {
Expand Down
6 changes: 3 additions & 3 deletions src/semantic-router/pkg/extproc/edge_cases_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import (

ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
)

var _ = Describe("Edge Cases and Error Conditions", func() {
Expand Down
4 changes: 2 additions & 2 deletions src/semantic-router/pkg/extproc/endpoint_selection_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ import (

core "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
)

var _ = Describe("Endpoint Selection", func() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import (
"strings"
"testing"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

// TestReasoningModeConfiguration demonstrates how the reasoning mode works with the new config-based approach
Expand Down
4 changes: 2 additions & 2 deletions src/semantic-router/pkg/extproc/reason_mode_selector.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (
"log"
"strings"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/metrics"
)

// shouldUseReasoningMode determines if reasoning mode should be enabled based on the query category
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"encoding/json"
"testing"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

// TestModelReasoningFamily tests the new family-based configuration approach
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"encoding/json"
"testing"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

// TestReasoningModeIntegration tests the complete reasoning mode integration
Expand Down
10 changes: 5 additions & 5 deletions src/semantic-router/pkg/extproc/request_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ import (
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"

"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/semantic-router/pkg/observability"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/http"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/pii"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/observability"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/http"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/pii"
)

// parseOpenAIRequest parses the raw JSON using the OpenAI SDK types
Expand Down
8 changes: 4 additions & 4 deletions src/semantic-router/pkg/extproc/request_processing_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ import (
core "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/semantic-router/pkg/tools"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/tools"
)

var _ = Describe("Request Processing", func() {
Expand Down
4 changes: 2 additions & 2 deletions src/semantic-router/pkg/extproc/response_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ import (
ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

"github.com/openai/openai-go"
"github.com/vllm-project/semantic-router/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/semantic-router/pkg/observability"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/metrics"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/observability"
)

// handleResponseHeaders processes the response headers
Expand Down
12 changes: 6 additions & 6 deletions src/semantic-router/pkg/extproc/router.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ import (
ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

candle_binding "github.com/vllm-project/semantic-router/candle-binding"
"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/services"
"github.com/vllm-project/semantic-router/semantic-router/pkg/tools"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/classification"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/pii"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/services"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/tools"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/classification"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/pii"
)

var (
Expand Down
10 changes: 5 additions & 5 deletions src/semantic-router/pkg/extproc/security_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@ import (

ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"

"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/classification"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/classification"

"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/pii"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/pii"
)

const (
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/extproc/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import (

ext_proc "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"
"github.com/fsnotify/fsnotify"
"github.com/vllm-project/semantic-router/semantic-router/pkg/observability"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/observability"
"google.golang.org/grpc"
)

Expand Down
4 changes: 2 additions & 2 deletions src/semantic-router/pkg/extproc/stream_handling_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ import (
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
)

var _ = Describe("Process Stream Handling", func() {
Expand Down
12 changes: 6 additions & 6 deletions src/semantic-router/pkg/extproc/test_utils_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import (
"google.golang.org/grpc/metadata"

candle_binding "github.com/vllm-project/semantic-router/candle-binding"
"github.com/vllm-project/semantic-router/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/semantic-router/pkg/tools"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/classification"
"github.com/vllm-project/semantic-router/semantic-router/pkg/utils/pii"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/cache"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/extproc"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/tools"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/classification"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/utils/pii"
)

// MockStream implements the ext_proc.ExternalProcessor_ProcessServer interface for testing
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/metrics/metrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promauto"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

// Minimal fallback bucket configurations - used only when configuration is completely missing
Expand Down
2 changes: 1 addition & 1 deletion src/semantic-router/pkg/metrics/metrics_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"testing"
"time"

"github.com/vllm-project/semantic-router/semantic-router/pkg/config"
"github.com/vllm-project/semantic-router/src/semantic-router/pkg/config"
)

// TestMain ensures metrics are initialized before running tests
Expand Down
Loading
Loading