Skip to content

Allow unknown MDS enum values and add missing fields#469

Merged
emlun merged 11 commits intomainfrom
mds-missing-fields
Apr 20, 2026
Merged

Allow unknown MDS enum values and add missing fields#469
emlun merged 11 commits intomainfrom
mds-missing-fields

Conversation

@emlun
Copy link
Copy Markdown
Member

@emlun emlun commented Apr 18, 2026

This is already released as experimental release 2.9.0-alpha1 to unbreak people's deployments, but we'll review after the fact and iterate as needed.

This incorporates both PR #467 and #468, preserving the original commits from both PRs.

Beyond adding the missing AttachmentHint value identified in #466, this adds an UNKNOWN constant as the default deserialization of all enums in the MDS data model; this should prevent hard crashes on new enum values in the future. To ensure that new values don't go unnoticed forever, this also adds a new integration test that attempts to deserialize the BLOB with enum defaults disabled and unknown fields forbidden. This should help us detect when new additions appear in the upstream data, as the integration test runs once a week on GitHub Actions.

The new test also revealed several other new fields that were missing. I also added any other new fields defined in immediate proximity to the ones identified by the test; not all of these added fields have yet appeared in the actual data.

Fixes #466.

@emlun emlun requested a review from fdennis April 18, 2026 01:24
@emlun emlun added bug Something isn't working enhancement New feature or request labels Apr 18, 2026
@github-actions
Copy link
Copy Markdown

Test Results

2 308 tests   2 300 ✅  59s ⏱️
   46 suites      8 💤
   46 files        0 ❌

Results for commit 9229c9b.

@emlun emlun merged commit 0a520a0 into main Apr 20, 2026
18 checks passed
@emlun emlun deleted the mds-missing-fields branch April 20, 2026 11:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request

Development

Successfully merging this pull request may close these issues.

JSON serialization error: AttachmentHint unable to accept "smart-card"

4 participants