0xPlaygrounds / 0xPlaygrounds/rig

feat: uniformize Serde enum tagging

Offen
#609 2 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @joshua-mo-143 Auf GitHub ansehen
feat
Vorherrschende Sprache
Rust
Sterne
8.6k
Forks
959
Ø Merge
4 Std. 32 Min.
Gemergte PRs (30 T.)
117

Beschreibung

- [x] I have looked for existing issues (including closed) about this

## Feature Request
Enum serialization is a bit all over the place, `UserContent` is inner tag (`#[serde(tag = "type", rename_all = "lowercase")]`) but `AssistantContent` is untagged (`#[serde(untagged)]`). I would suggest picking a pattern, I usually prefer to be more explicit than not (with an inner tag). Untagged will only get you so far.

### Motivation
This is follow-up on #608, since I started looking at storing that data longer term. I have decided to create my own set of structs to have more control, but I would still suggest improving the tagging of enum so it is at least consistent.

### Proposal
Apply an inner tag on all enums.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Look at the Serde enum tagging in the codebase, specifically the `UserContent` and `AssistantContent` enums. Understand the difference between inner tag and untagged serialization. Apply consistent inner tagging across all relevant enums, ensuring serialization/deserialization works correctly. Run existing tests to verify changes.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust
Bereich
backend-api-design
Issue-Typ
Refactoring
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.