Skip to content
Draft
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
2 changes: 1 addition & 1 deletion .github/workflows/pr-test-rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ jobs:
- name: Run Python unit tests
run: |
cd bindings/python
python3 -m pip install pytest pytest-cov pytest-xdist
python3 -m pip install pytest pytest-asyncio pytest-cov pytest-xdist

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Nit: pytest-asyncio is installed by the bindings/python step but the tests that need it live in grpc_servicer/tests (the @pytest.mark.asyncio cases this PR adds in test_vllm_kv_group_events.py, plus the pre-existing ones in test_vllm_kv_events_stream.py / test_tokenspeed_kv_events_stream.py). It works only because both steps share one job's interpreter.

That coupling is invisible and load-bearing: if the grpc_servicer step is ever split into its own job, reordered, or the bindings/python step's deps are trimmed, the async tests do not fail loudly — under strict mode with no plugin they are skipped with a warning, so the group-event subscription and corrupt-frame tests would go green while never running. Installing it in the step that consumes it (or adding it to grpc_servicer's dev extras) makes the dependency survive that refactor.

pytest -q tests --cov=smg --cov-config=.coveragerc --cov-report=term-missing --cov-fail-under=80

- name: Run grpc_servicer unit tests
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-crates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@ jobs:
path: crates/protocols
- crate: reasoning-parser
path: crates/reasoning_parser
- crate: kv-index
path: crates/kv_index
- crate: data-connector
path: crates/data_connector
- crate: wfaas
Expand Down Expand Up @@ -59,6 +57,8 @@ jobs:
fail-fast: false
matrix:
include:
- crate: kv-index
path: crates/kv_index
- crate: tool-parser
path: crates/tool_parser
- crate: smg-grpc-client
Expand Down
5 changes: 3 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ llm-tokenizer = { version = "1.7.0", path = "crates/tokenizer" }
smg-auth = { version = "1.2.3", path = "crates/auth" }
smg-mcp = { version = "2.3.3", path = "crates/mcp" }
smg-external-router = { version = "0.1.0", path = "crates/external_router" }
kv-index = { version = "1.4.0", path = "crates/kv_index" }
smg-radix-tree = { version = "0.1.0", path = "crates/radix_tree" }
kv-index = { version = "1.5.0", path = "crates/kv_index" }
smg-radix-tree = { version = "0.1.1", path = "crates/radix_tree" }
smg-data-connector = { version = "2.3.4", path = "crates/data_connector", package = "data-connector" }
llm-multimodal = { version = "1.11.0", path = "crates/multimodal" }
smg-wasm = { version = "1.1.4", path = "crates/wasm", package = "smg-wasm" }
Expand Down
Loading
Loading