Skip to content

Selection and SelectionList Pydantic serialization warnings #1135

@ahouseholder

Description

@ahouseholder

Summary

Baseline tests pass, but Selection and SelectionList emit Pydantic warnings because tuple-typed values fields sometimes serialize from list-shaped data. The warnings signal model-shape friction that is not yet a failure but could become one on a future Pydantic version upgrade.

Category

  • Top risk
  • Technical debt
  • Security
  • Performance / scaling
  • Fragile / high-churn area
  • Other

Severity

medium

Evidence

  • src/ssvc/decision_points/ (Selection, SelectionList classes)

Impact if Ignored

A future Pydantic upgrade may turn these warnings into validation errors, breaking serialization at runtime. The friction also makes it harder to add new decision-point types with confidence.

Suggested Action

Audit the values field type on Selection and SelectionList. Consider using List instead of Tuple where order is not semantically significant, or add explicit validators to coerce list input to tuples.

Metadata

Metadata

Assignees

No one assigned

    Labels

    concernTechnical risk, debt, or fragile areagroup:unscheduledNot yet scheduled in PRIORITIES.md
    No fields configured for Concern.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions