feat(framework): Add opt-in runtime version warnings for ServerAppIo#7077
feat(framework): Add opt-in runtime version warnings for ServerAppIo#7077
ServerAppIo#7077Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bae8c8f65b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Pull request overview
This PR makes runtime version incompatibility warnings for the ServerAppIo gRPC API opt-in by defaulting the server-side runtime version interceptor to observe-only (i.e., it still parses/checks metadata but does not attach incompatibility warning metadata unless explicitly enabled).
Changes:
- Introduced
RuntimeVersionCompatibilityActionto control server-side behavior on incompatible/unparseable runtime version metadata. - Updated
RuntimeVersionServerInterceptorandcreate_serverappio_runtime_version_server_interceptorto default toOBSERVE_ONLYand only emit warning trailing metadata when configured withWARN. - Adjusted and extended unit tests to verify default non-warning behavior and explicit warning behavior.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
framework/py/flwr/supercore/interceptors/runtime_version_interceptor.py |
Adds compatibility action enum and gates trailing warning metadata emission behind an explicit WARN action. |
framework/py/flwr/supercore/interceptors/runtime_version_interceptor_test.py |
Updates tests to assert no trailing metadata by default and adds coverage for explicit warning mode. |
framework/py/flwr/supercore/interceptors/__init__.py |
Exposes RuntimeVersionCompatibilityAction via the interceptors package exports. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This PR stops the
ServerAppIoruntime version interceptor from returning incompatibility warning metadata by default.The interceptor still parses and checks runtime version metadata, and the client-side warning handling remains in place for future opt-in warnings.