{"record":{"id":"e7302474c2e87446","repo":"phacility/phabricator","slug":"err-usage-only-self-remove","errorCode":"ERR_USAGE_ONLY_SELF_REMOVE","errorMessage":"ERR_USAGE_ONLY_SELF_REMOVE","messagePattern":"ERR_USAGE_ONLY_SELF_REMOVE","errorType":"error_code","errorClass":"ConduitException","httpStatus":null,"severity":"error","filePath":"src/applications/conpherence/conduit/ConpherenceUpdateThreadConduitAPIMethod.php","lineNumber":87,"sourceCode":"\n    $source = $request->newContentSource();\n    $editor = id(new ConpherenceEditor())\n      ->setContentSource($source)\n      ->setActor($user);\n    $xactions = array();\n    $add_participant_phids = $request->getValue('addParticipantPHIDs', array());\n    $remove_participant_phid = $request->getValue('removeParticipantPHID');\n    $message = $request->getValue('message');\n    $title = $request->getValue('title');\n    if ($add_participant_phids) {\n      $xactions[] = id(new ConpherenceTransaction())\n        ->setTransactionType(\n          ConpherenceThreadParticipantsTransaction::TRANSACTIONTYPE)\n        ->setNewValue(array('+' => $add_participant_phids));\n    }\n    if ($remove_participant_phid) {\n      if ($remove_participant_phid != $user->getPHID()) {\n        throw new ConduitException('ERR_USAGE_ONLY_SELF_REMOVE');\n      }\n      $xactions[] = id(new ConpherenceTransaction())\n        ->setTransactionType(\n          ConpherenceThreadParticipantsTransaction::TRANSACTIONTYPE)\n        ->setNewValue(array('-' => array($remove_participant_phid)));\n    }\n    if ($title) {\n      $xactions[] = id(new ConpherenceTransaction())\n        ->setTransactionType(\n          ConpherenceThreadTitleTransaction::TRANSACTIONTYPE)\n        ->setNewValue($title);\n    }\n    if ($message) {\n      $xactions = array_merge(\n        $xactions,\n        $editor->generateTransactionsFromText(\n          $user,\n          $conpherence,","sourceCodeStart":69,"sourceCodeEnd":105,"githubUrl":"https://github.com/phacility/phabricator/blob/5720a38cfe95b00ca4be5016dd0d2f3195f4fa04/src/applications/conpherence/conduit/ConpherenceUpdateThreadConduitAPIMethod.php#L69-L105","documentation":"Error \"ERR_USAGE_ONLY_SELF_REMOVE\" thrown in phacility/phabricator.","triggerScenarios":"Thrown at src/applications/conpherence/conduit/ConpherenceUpdateThreadConduitAPIMethod.php:87 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5720a38cfe95b00ca4be5016dd0d2f3195f4fa04","analyzedAt":"2026-08-21T05:07:25.672Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}