Skip to content

Conversation

@Xunzhuo
Copy link
Member

@Xunzhuo Xunzhuo commented Aug 30, 2025

What type of PR is this?

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

Release Notes: Yes/No

@github-actions
Copy link

github-actions bot commented Aug 30, 2025

👥 Owner Notification

The following owners have been identified for the changed files in this PR and have been automatically assigned:

📁 Root Directory

Owners: @rootfs, @Xunzhuo
Files changed:

  • bench/bench_plot.py
  • bench/router_reason_bench.py

📁 src

Owners: @rootfs, @Xunzhuo, @wangchen615
Files changed:

  • src/semantic-router/pkg/extproc/request_handler.go

This comment was automatically generated based on the OWNER files in the repository.

@Xunzhuo Xunzhuo force-pushed the fix-remove-no-need branch from 0f5ed03 to b1e7b2a Compare August 30, 2025 14:12
@rootfs rootfs merged commit bc31dc5 into main Aug 30, 2025
5 checks passed
@rootfs rootfs deleted the fix-remove-no-need branch August 30, 2025 14:18
srini-abhiram added a commit to srini-abhiram/semantic-router that referenced this pull request Dec 2, 2025
This commit addresses 6 critical issues identified during code review,
plus build improvements for better user experience.

Critical fixes:
- Issue #1: PID file race condition - kill router process if PID file
  write fails to prevent untrackable processes
- Issue vllm-project#2: Cross-platform compatibility - replace hardcoded /tmp paths
  with os.TempDir() and add user-specific suffixes using os.Getuid()
- Issue vllm-project#3: Signal handling - add graceful shutdown for port-forward
  process on Ctrl+C to prevent orphaned kubectl processes
- Issue vllm-project#4: HTTP timeout - add 30-second timeout to prevent hanging
  requests in test command
- Issue vllm-project#5: Security - restrict log/PID file permissions to 0600
- Issue vllm-project#6: Input validation - enforce 10k character limit on prompts

Build improvements:
- Embed library path using -ldflags="-r" to eliminate need for users
  to manually set LD_LIBRARY_PATH when running vsr binary

Files modified:
- src/semantic-router/pkg/cli/deployment/deployment.go
- src/semantic-router/pkg/cli/deployment/upgrade.go
- src/semantic-router/cmd/vsr/commands/dashboard.go
- src/semantic-router/cmd/vsr/commands/test.go
- tools/make/build-run-test.mk
- src/semantic-router/pkg/cli/deployment/deployment_test.go

All fixes have been verified with standalone test programs.

Signed-off-by: Srinivas A <[email protected]>
srini-abhiram added a commit to srini-abhiram/semantic-router that referenced this pull request Dec 2, 2025
This commit addresses 6 critical issues identified during code review,
plus build improvements for better user experience.

Critical fixes:
- Issue #1: PID file race condition - kill router process if PID file
  write fails to prevent untrackable processes
- Issue vllm-project#2: Cross-platform compatibility - replace hardcoded /tmp paths
  with os.TempDir() and add user-specific suffixes using os.Getuid()
- Issue vllm-project#3: Signal handling - add graceful shutdown for port-forward
  process on Ctrl+C to prevent orphaned kubectl processes
- Issue vllm-project#4: HTTP timeout - add 30-second timeout to prevent hanging
  requests in test command
- Issue vllm-project#5: Security - restrict log/PID file permissions to 0600
- Issue vllm-project#6: Input validation - enforce 10k character limit on prompts

Build improvements:
- Embed library path using -ldflags="-r" to eliminate need for users
  to manually set LD_LIBRARY_PATH when running vsr binary

Files modified:
- src/semantic-router/pkg/cli/deployment/deployment.go
- src/semantic-router/pkg/cli/deployment/upgrade.go
- src/semantic-router/cmd/vsr/commands/dashboard.go
- src/semantic-router/cmd/vsr/commands/test.go
- tools/make/build-run-test.mk
- src/semantic-router/pkg/cli/deployment/deployment_test.go

All fixes have been verified with standalone test programs.

Signed-off-by: Srinivas A <[email protected]>
srini-abhiram added a commit to srini-abhiram/semantic-router that referenced this pull request Dec 2, 2025
Add unit tests to verify all 6 critical production fixes implemented
in the previous commit. Tests ensure cross-platform compatibility,
security, and robustness of the VSR CLI tool.

Test coverage added:
- Cross-platform path handling (Issue vllm-project#2)
  * Absolute path validation
  * User-specific path generation
  * Temp directory usage

- PID file management and security (Issues #1, vllm-project#5)
  * PID file race condition handling
  * Process termination on write failure
  * Restrictive 0600 file permissions
  * Proper cleanup on exit

- HTTP client timeout (Issue vllm-project#4)
  * 30-second timeout prevents hanging
  * Fast responses unaffected
  * Timeout configuration validation

- Input validation (Issue vllm-project#6)
  * 10k character limit enforcement
  * Boundary condition testing

- Signal handling (Issue vllm-project#3)
  * Graceful shutdown on interrupt
  * Process cleanup verification
  * No orphaned processes

All tests compile and validate the production fixes.

Signed-off-by: Srinivas A <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants