Skip to content

fix: align runtime contracts and package validation - #126

Merged
chaokunyang merged 5 commits into
mainfrom
fix/runtime-contracts-and-packaging
Sep 29, 2026
Merged

chaokunyang merged 5 commits into
mainfrom
fix/runtime-contracts-and-packaging

Conversation

@chaokunyang

Copy link
Copy Markdown
Collaborator

What does this PR do?

Related issues

Does this PR introduce any user-facing change?

  • Does this PR introduce any public API change?
  • Does this PR introduce any binary protocol compatibility change?

Copilot AI balanced review requested due to automatic review settings September 29, 2026 03:08

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

The isolated-wheel check cannot pass because setuptools currently omits all awex subpackages.

Review effort: Balanced
Findings: 1 High severity

Open (1)
What changed in this PR

Aligns runtime contracts, dependency packaging, timeout handling, and documentation.

Changes:

  • Enforces inference configuration and runtime rank contracts.
  • Adds deadline-aware metadata polling and safer environment logging.
  • Updates Python requirements, CI, packaging checks, and documentation.
File Description
README.md Updates installation, architecture, and examples.
pyproject.toml Raises Python floor and declares dependencies.
docs/​README.md Documents current transport behavior.
DEVELOPMENT.md Updates setup and validation guidance.
ci/​test_cpu.sh Adds focused CPU test suite.
ci/​format.sh Adds check/write formatting modes.
awex/​writer/​weights_writer.py Lazily imports Megatron helpers.
awex/​writer/​nccl_writer.py Corrects writer configuration access.
awex/​util/​common.py Allowlists logged environment variables.
awex/​transfer/​nccl_stream_batch.py Applies formatting updates.
awex/​tests/​test_weights_reader_init.py Tests runtime-derived rank counts.
awex/​tests/​test_runtime_contracts.py Adds runtime contract coverage.
awex/​tests/​test_qwen3_vl.py Applies formatting updates.
awex/​tests/​test_mooncake_transfer.py Supplies required metadata address.
awex/​tests/​test_meta_server.py Improves server cleanup and isolation.
awex/​tests/​test_meta_server_deadlines.py Tests bounded request deadlines.
awex/​tests/​test_mcore_pp_mapping.py Updates lazy-import mocking path.
awex/​tests/​test_imports.py Tests imports without optional backends.
awex/​sharding/​sglang_sharding.py Uses runtime context-parallel ranks.
awex/​reader/​weights_reader.py Validates configuration and derives world size.
awex/​models/​qwen3_vl.py Applies formatting updates.
awex/​models/​ling_linear.py Defers Megatron-specific imports.
awex/​meta/​meta_server.py Adds shared request deadlines.
awex/​engine/​vllm.py Validates config and normalizes node rank use.
awex/​engine/​sglang.py Aligns validation and initialization behavior.
awex/​config.py Requires metadata server for network backends.
awex/​__init__.py Lazily exposes runtime classes.
.github/​workflows/​ci.yml Adds CPU, wheel, and formatting validation.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/workflows/ci.yml
/tmp/awex-wheel-check/bin/python -m pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cpu
/tmp/awex-wheel-check/bin/python -m pip install dist/*.whl transformers==4.57.1
cd /tmp
/tmp/awex-wheel-check/bin/python -I -c 'from awex import InferenceConfig, WeightsReader, NCCLWorkerWeightsReader, NCCLWeightsWriter; from awex.engine.sglang import SGLangEngine; from awex.engine.vllm import VLLMEngine'
@chaokunyang
chaokunyang merged commit c12f79a into main Sep 29, 2026
4 checks passed
@chaokunyang
chaokunyang deleted the fix/runtime-contracts-and-packaging branch September 29, 2026 03:31
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.

2 participants