# File lib/ruote/part/storage_participant.rb, line 499
    def remove_workitem(action, workitem)

      hwi = fetch(workitem)

      fail ArgumentError.new(
        "cannot #{action}, workitem not found"
      ) if hwi == nil

      fail ArgumentError.new(
        "cannot #{action}, " +
        "workitem is owned by '#{hwi['owner']}', not '#{workitem.owner}'"
      ) if hwi['owner'] && hwi['owner'] != workitem.owner

      r = @context.storage.delete(hwi)

      fail ArgumentError.new(
        "cannot #{action}, workitem is gone"
      ) if r == true

      r
    end