feat: add metric name validation (#2911)
* feat: add metric name validation
Add validation for metric names in record_metric() and delete operations.
Rules:
- Each segment must start with letter, end with letter/digit
- Only letters, digits, underscores allowed
- No leading/trailing/consecutive underscores
- No empty segments (leading/trailing/consecutive dots)
- Max 128 characters, max 4 segments
- Reserved: predict_time and cog.* prefix
Includes:
- validate_metric_name() and validate_metric_name_for_delete()
- 18 unit tests covering all rules
- Updated documentation in docs/python.md
- Integration test for validation errors
* chore: format rust code
* docs: regenerate llms.txt