Skip to content

[P1][Plan 2] SF-008 — Add persistent failed-channel recovery and retry #29

Description

@Ankit6149

Confirmed problem

When a destination fails, the UI still renders its channel tab and a blank editor. The failure reason is mostly hidden in a temporary toast or collapsed notes, and there is no direct retry action.

Scope

  • Persist per-channel statuses: queued, generating, revising, complete, needs_review, failed, and cancelled.
  • Show the status directly on each channel tab.
  • Replace blank failed editors with a recovery panel containing safe error details and Retry destination.
  • Preserve all successful and edited channels during retry.
  • Store retry count and latest failure class.

Acceptance criteria

  • Failed channels never look like empty successful drafts.
  • The failure state remains visible after the toast disappears and after save/reopen.
  • Retry affects only the selected destination.
  • Successful/edited destinations remain unchanged.
  • Cancelled and failed states are visually and semantically distinct.

Required verification

  • Partial campaign fixture with success, needs_review, failed, and cancelled channels.
  • Retry-one-channel integration test.
  • Save/reopen status persistence test.
  • Keyboard and screen-reader verification for status and recovery controls.

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions