Skip to content

Port calibrations onto a superseding score set #855

Description

@bencap

A calibration may only supersede another calibration on the same score set. Porting is the one flow that legitimately crosses score sets: when score set B supersedes score set A, B starts with no calibrations, and A's calibrations are neither visible from B nor reachable through it.

Proposed behavior

When a score set supersedes another, offer to carry the superseded score set's calibrations onto the successor. Each ported calibration is a new calibration on B that supersedes its original on A, so the supersession chain runs in parallel at both levels.

Open for the design:

  • whether porting happens at score set creation, at publication, or as a separate action afterwards
  • whether the ranges and thresholds are copied verbatim or require re-fitting against B's scores, which are not the same scores
  • what happens to primary and to investigator_provided on the ported copy
  • whether community calibrations on A are portable at all, or only investigator-provided ones

Acceptance criteria

  • a calibration on B may supersede a calibration on A only when B supersedes A, and only in that direction
  • the general same-score-set constraint on supersession still holds everywhere else
  • get_score_calibrations_for_score_set on A does not lose a calibration to a supersession row that lives on B without B being reachable from A
  • promote_score_calibration_to_primary does not demote across score sets

Metadata

Metadata

Assignees

No one assigned

    Labels

    app: backendTask implementation touches the backendneeds: discussionBlocked on a team decision before work can proceed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions