Skip to content

[Story]: Request to reorder onboarding steps #226

Description

@adoLime

User Story

As a User, I want to send a reorder request to my PM, so that I can flag a preferred order of my onboarding steps without editing the path myself.
As a PM, I want a clear inbox of pending reorder requests from my team members, so that I can accept or reject them with one click.

Context & Motivation

Acceptance Criteria

  • A User can open a "Request reorder" dialog on their own path view, drag the steps into a proposed order, and submit with an optional comment.
  • The request is stored as a ReorderRequest with: id, user, path, proposed_order, optional comment, status ∈ {pending, accepted, rejected}, created_at, decided_at, decided_by, decision_comment.
  • The pending request is visible to the PM assigned to that user's project (PM inbox / banner in the PM path view).
  • The PM can accept (apply the proposed order — same effect as the PM-direct reorder from the sister story) or reject (with a short required comment).
  • A rejected request is final — the User can submit a new one.
  • The User can see the status of their own pending request and the decision comment.
  • Reorder requests do not expose any chat content to the PM (refinement 2026-06-24: "der PM sieht sie auch nicht").
  • The same audit and state-aware rules from the sister story apply on accept (progress preserved; deactivated steps stay deactivated; skipped steps require a confirm).
  • Empty / loading / error states; i18n (en/de).

Sub-Tasks (by team)

  • BackendReorderRequest entity + endpoints (create, list-for-PM, accept, reject); RBAC: only the assigned PM and Admins can decide; reuse the reorder-persistence + audit from the sister story; emit a non-chat signal to the PM dashboard.
  • Frontend — User reorder-request dialog (DnD + comment); PM inbox / banner with pending requests; accept/reject UI with required rejection comment; user-facing status view.
  • QA — tests for: User can request, only assigned PM can decide, accept applies the order, reject stores a comment, regular PM cannot see other projects' requests, no chat content leak.

Dependencies

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions