Skip to content

persona delete 409 can't name the dated special blocking it (ScheduledElsewhere carries no date) #462

Description

@genwave-radio

🔥 The gap

Firing a persona blocked only by a dated special returns the honest-but-generic 409 ("…still appears in the format-clock schedule or a dated special…" — wording widened at T259 review). It cannot NAME the special the way the show-delete guard names its referencing specials, because PersonaWriteResult.ScheduledElsewhere carries IReadOnlyList<ScheduledSlot> whose row shape (DayOfWeek/StartMinute/EndMinute) has no date field — naming a special needs a domain-shape change across PersonaRepository + its specs, not a filter.

📍 In-code notes (predate this issue; add the ref when next touched)

  • src/GenWave.Host/Api/PersonaController.csDelete's remarks
  • src/GenWave.Host/Api/SpecialsController.cs — class remarks (the why-not-cheap rationale)

🔧 Fix shape

Widen ScheduledSlot (or add a dated sibling) so ScheduledElsewhere can carry both weekly slots and dated specials; ScheduledPersonaProblem renders both. The show-side guard (ShowsController.Delete + ScheduledSlotText.FormatSpecial) is the pattern to mirror.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Medium prioritybugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions