[Bug]: telemetry schema drift checker ignores required-field drift
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 14.7k
- Forks
- 2.8k
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 489
Description
System Info
Platform-independent telemetry schema validation.
Reproduction
tensorrt_llm/usage/schemas/__main__.py::validate() compares SMS JSON Schema property names with Pydantic aliases, but does not validate the SMS required arrays.
The canonical telemetry convention says every declared event property must also appear in required. A schema edit can therefore leave a property present while accidentally removing it from required, and the drift checker still passes.
Expected behavior
For each SMS event, the validator should require set(required) == set(properties) in addition to the existing Pydantic alias/property-name check.
Actual behavior
Required-array drift is not checked.
Proposed fix
Compare each event's SMS required and properties sets in both directions, and add a regression test that removes a property from required.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in tensorrt_llm/usage/schemas/main.py at validate() and read the existing SMS JSON Schema versus Pydantic alias/property-name check. Add the proposed regression test for an event whose property is removed from required, and verify that required and properties must match in both directions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- testing
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 82/100