Skip to content

Finalize EV data model v0.9 (publish target: September 2026) #35

@TheTechArch

Description

@TheTechArch

Issue: Finalize EV data model v0.9 (target publish: September 2026)

Title: Finalize EV data model v0.9 (publish target: September 2026)

Goal

Publish EVKX data model v0.9 by September 2026, with a documented changelog + migration notes and updated tooling (admin + API + validation). This issue is append-only (“+++ more will be added”).

Reference (current model example):


Scope (initial items)

1) Add support for in-car AI / LLM assistants (ChatGPT, Grok, OEM AI, etc.)

Current related fields: UIAndControls.VoiceControl.FeatureStatus exists, but no structured assistant/provider info.

Proposed additions (new section):

  • Infotainment.AIAssistants[] (array, because cars may have multiple assistants: OEM + 3rd party)

Proposed object fields

  • Name (localized dict, optional)
  • Provider (string or enum: OpenAI, xAI, OEM, Google, etc. — you decide)
  • AssistantProduct (string, e.g. “ChatGPT”, “Grok”, “MBUX Assistant”, “Audi Assistant”)
  • IntegrationType enum: BuiltIn, App, OptionalPackage, Subscription, PhoneProjection
  • FeatureStatus (reuse your pattern: Standard/Optional/NotAvailable/Unknown)
  • Capabilities[] enum list (examples): VoiceAssistant, QnA, CarControls, NavigationAssist, Messaging, TripPlanning, ChargingAssist, Search
  • Connectivity enum: OnlineOnly, Hybrid, OfflineSupported
  • RequiresAccount (bool), RequiresSubscription (bool)
  • OptionId (string, optional)
  • Availability[] (reuse the Region/SubRegion/CountryList structure you already use in ModelInfo.Availability)

Acceptance

  • Can represent which AI, how it’s delivered (built-in/app/subscription), and what it can do
  • Works per model variant/market where needed

2) Torque vectoring type (not just availability)

Current field: Drivetrain.TorqueVectoring.FeatureStatus

Proposed change

  • Extend Drivetrain.TorqueVectoring object with:

    • Type enum (examples):

      • None
      • BrakeBased
      • ELSD
      • AxleSplitDualMotor (front/rear distribution)
      • LeftRightElectric (per-wheel/per-side torque vectoring)
      • ActiveDiff
      • Unknown
    • Axle enum: Front, Rear, Both, Unknown (optional but useful)

    • Notes (localized string or plain string, optional)

    • Keep existing FeatureStatus

Acceptance

  • “Torque vectoring” becomes comparable across EVs (same enum set)

3) Head-up display type (not just optional/standard)

Current field: UIAndControls.HeadUpDisplay.FeatureStatus

Proposed change

  • Extend UIAndControls.HeadUpDisplay with:

    • Type enum:

      • None
      • Combiner
      • Windshield
      • AugmentedReality
      • Unknown
    • SizeInch (number, optional, only when reliable)

    • Content[] enum list (optional): Speed, Nav, ADAS, Phone, Media, Warnings

    • OptionId (string, optional)

    • Keep existing FeatureStatus

Acceptance

  • Can distinguish AR-HUD vs normal HUD cleanly

4) Styling options (make it more structured + consistent)

Current field: Exterior.Styling[] with { OptionName, Description } using translation keys

Proposed improvements

  • Keep Exterior.Styling[], but extend each entry with:

    • Standard (bool) or FeatureStatus (prefer FeatureStatus for consistency)
    • OptionId (string, optional)
    • Tags[] enum list (examples): BlackPack, CarbonPack, SportDesign, AeroKit, ExteriorTrim
    • Availability[] (same region structure)
    • Media[] references (optional; could link to your media system later)
  • Add a parallel structure for interior if needed:

    • Interior.Styling[] (optional) for interior appearance packages that don’t fit InteriorDesigns

Acceptance

  • Styling packages can be shown consistently and filtered later
  • Region/trim/package differences can be represented

Versioning & release requirements (v0.9)

  • Confirm v0.9 change policy (what can be breaking vs additive)

  • Publish v0.9 schema + docs page + examples

  • Add changelog: v0.8.x → v0.9 (field-by-field)

  • Migration notes for:

    • Admin tooling
    • Public API consumers (if applicable)

Implementation checklist

  • Decide final JSON paths + enums for:

    • Infotainment.AIAssistants[]
    • Drivetrain.TorqueVectoring.Type (+ optional Axle)
    • UIAndControls.HeadUpDisplay.Type (+ optional Content[])
    • Exterior.Styling[] enhancements (+ optional Interior.Styling[])
  • Update validation rules

  • Update admin UI editors

  • Update API contracts + tests

  • Add sample EV JSON covering all new fields


Timeline (suggested)

Target publish: September 2026

  • Freeze candidate field list: May 2026
  • Implement + backfill key models: June–July 2026
  • Validation + documentation + partner review: August 2026
  • Release: September 2026

Append-only backlog (“+++ more will be added”)

  • (Add new v0.9 items here as they appear)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions