Skip to content

Reference-set currency: the two properties 126 and 127 introduced are untested #50

Closed

Description

@rusholme

Landing the run-model stack ported test_two_campaign_runs_each_hold_a_current_refimage_for_one_identity to reference-set granularity, which is coexistence ACROSS sets. Two properties the migrations introduced still have no test. (1) THE WITHIN-ONE-SET COLLISION: refimages_vbest_current_per_set_unique ON (field, fid, ppid, reference_set_id) WHERE vbest IN (1, 2) must REFUSE a second current reference for one identity group inside a single set — the uniqueness half of the same index whose coexistence half is now covered. The ported test deliberately gives each run its own set, so it never exercises the refusal. (2) THE SET-SCOPED DEMOTION GUARD: 127's header calls this "the correctness heart of the change" — demotion must not reach across sets, so registering into one set leaves another set's current row alone. Nothing asserts either. Both are testing debt from a stabilisation pass that was scoped to porting existing properties only (Ben, 2026-09-14 18:30: "no feature or restructuring inside a stabilisation pass"), to become a small brief on the landed smdc now that it is green. Verified 2026-09-14 against branch tip 102f0f2c: actions.create_reference_set and a 19-parameter actions.create_run with reference_set_id both already exist, so the fuller tests need no new Python surface — the earlier "wrapper gap" reading came from a stale local checkout and is NOT part of this row

Activity

  1. added
    handoverHandover: outstanding at the 2026-09-13 documentation handover
    on Sep 15, 2026
  2. rusholme commented on Sep 21, 2026

    @rusholme
    CollaboratorAuthor

    Triaged 2026-09-21 against the RAPID rebuild specification (https://roman-rapid.readthedocs.io/en/latest/system/specification.html). The rebuild on SMDC starts from a fresh sheet: existing infrastructure, code and database contents are disposable and are recreated to that specification, so issues about the accumulated system do not carry forward as tracked items. This issue concerns a mechanism, defect or arrangement the rebuild replaces, or a point the specification already states. Closing; reopen if the rebuilt system does not meet the need.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    handoverHandover: outstanding at the 2026-09-13 documentation handover

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions