{"record":{"id":"5951c3bc6cfe39ce","repo":"phacility/phabricator","slug":"use-id-to-choose-a-bulk-job-to-make-silent","errorCode":null,"errorMessage":"Use \"--id\" to choose a bulk job to make silent.","messagePattern":"Use \"--id\" to choose a bulk job to make silent\\.","errorType":"console","errorClass":"PhutilArgumentUsageException","httpStatus":null,"severity":"error","filePath":"src/applications/transactions/bulk/management/PhabricatorBulkManagementMakeSilentWorkflow.php","lineNumber":29,"sourceCode":"        pht('Configure a bulk job to execute silently.'))\n      ->setArguments(\n        array(\n          array(\n            'name' => 'id',\n            'param' => 'id',\n            'help' => pht(\n              'Configure bulk job __id__ to run silently (without sending '.\n              'mail or publishing notifications).'),\n          ),\n        ));\n  }\n\n  public function execute(PhutilArgumentParser $args) {\n    $viewer = $this->getViewer();\n\n    $id = $args->getArg('id');\n    if (!$id) {\n      throw new PhutilArgumentUsageException(\n        pht('Use \"--id\" to choose a bulk job to make silent.'));\n    }\n\n    $job = id(new PhabricatorWorkerBulkJobQuery())\n      ->setViewer($viewer)\n      ->withIDs(array($id))\n      ->executeOne();\n    if (!$job) {\n      throw new PhutilArgumentUsageException(\n        pht(\n          'Unable to load bulk job with ID \"%s\".',\n          $id));\n    }\n\n    if ($job->getIsSilent()) {\n      echo tsprintf(\n        \"%s\\n\",\n        pht('This job is already configured to run silently.'));","sourceCodeStart":11,"sourceCodeEnd":47,"githubUrl":"https://github.com/phacility/phabricator/blob/5720a38cfe95b00ca4be5016dd0d2f3195f4fa04/src/applications/transactions/bulk/management/PhabricatorBulkManagementMakeSilentWorkflow.php#L11-L47","documentation":"The make-silent workflow reconfigures a bulk job to run without mail or notifications, and it needs --id to know which job. With no id ($args->getArg('id') falsy), it throws this usage exception before touching the database. Bulk job IDs are visible in the web UI (Bulk Jobs / daemon console).","triggerScenarios":"Running `bin/bulk make-silent` with no --id flag or an empty value.","commonSituations":"Operators scripting bulk job triage; forgetting the flag while trying to silence a noisy job during an incident; assuming the command acts on the most recent job.","solutions":["Find the job ID in the bulk job UI/daemon console and pass --id <id>.","If you meant to suppress future notification noise, prevent it at the source (disable mail, use a bot actor) instead of this command.","Verify the job is still awaiting confirmation before acting — see error 1332."],"exampleFix":"# before\nbin/bulk make-silent\n# after\nbin/bulk make-silent --id 123","handlingStrategy":"validation","validationCode":"test -n \"$JOB_ID\" || { echo 'JOB_ID is empty; pass --id' >&2; exit 2; }\nbin/bulk make-silent --id \"$JOB_ID\"","typeGuard":null,"tryCatchPattern":"Catch PhutilArgumentUsageException around the workflow call and exit with a usage-error code so orchestration can flag a script bug rather than a job problem.","preventionTips":["Always resolve the job ID from the bulk job UI/console first.","Make --id a required parameter of any wrapper script."],"tags":["phabricator","cli","bulk-jobs","notifications"],"backgroundTag":"cli-argument-validation","analyzedSha":"5720a38cfe95b00ca4be5016dd0d2f3195f4fa04","analyzedAt":"2026-08-21T05:07:25.672Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}