noCV
RDELETE-103 · Accept a scoped removal request

Make repeated removal requests return the same active operation

Practice briefBugIntermediate

A double-click starts two cleanup chains that race and send contradictory completion messages.

Focused work estimate
2h 15m + prerequisites
Priority in the scenario
High
Engineering practice
Idempotency · Transactions

Estimated field mix

  • Database engineering40%
  • Privacy engineering40%
  • Backend20%

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Your next step

Review it, then add it to your workspace.

The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.

Project context

A fictional collaboration product lets a member request removal of their personal profile. Search, notifications and cached displays retain copies after the primary row disappears. The exercise uses a documented product deletion policy and synthetic identities.

Setup prerequisites

  • Create local profile, search-index and notification fixtures with controlled provider failures.
  • Define synthetic members, organizations and a current-session authorization fixture.

Preceding work

Complete these dependencies, or supply their agreed outputs before taking this ticket.

Acceptance criteria

  • Use a subject-scoped active-operation uniqueness rule and a stable request identity.
  • Return the existing operation for a duplicate accepted request.
  • Preserve previous terminal history when a genuinely new eligible request is allowed by the policy.

Implementation constraints

  • Create the request and dispatch intent transactionally; a retry must not depend on process memory.

Verification to include

  • Submit concurrent duplicates and verify one operation plus one dispatch intent.
  • Lose the first response and retry, confirming the same safe operation reference.

Deliverables

  • Idempotent request creation and concurrency regressions

Rollout and recovery

Apply the uniqueness constraint before deploying the accepting endpoint.

Value of the work

For the engineer: Practice distributed cleanup, identity scope, idempotency and accurate user-facing lifecycle states.

For the team: Produce a reviewable deletion workflow and copy inventory for adaptation to an approved company policy.

Evidence boundaries

Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.

Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.