{"record":{"id":"e3428e42851a32a0","repo":"phacility/phabricator","slug":"trigger-ruleset-is-corrupt-rule-at-index-s-s","errorCode":null,"errorMessage":"Trigger ruleset is corrupt: rule (at index \"%s\") should be a rule specification, but is actually \"%s\".","messagePattern":"Trigger ruleset is corrupt: rule \\(at index \"(.+?)\"\\) should be a rule specification, but is actually \"(.+?)\"\\.","errorType":"exception","errorClass":"PhabricatorProjectTriggerCorruptionException","httpStatus":null,"severity":"error","filePath":"src/applications/project/storage/PhabricatorProjectTrigger.php","lineNumber":141,"sourceCode":"    // any collateral damage.\n\n    $rule_map = PhabricatorProjectTriggerRule::getAllTriggerRules();\n\n    // If the stored rule data isn't a list of rules (or we encounter other\n    // fundamental structural problems, below), there isn't much we can do\n    // to try to represent the state.\n    if (!is_array($list)) {\n      throw new PhabricatorProjectTriggerCorruptionException(\n        pht(\n          'Trigger ruleset is corrupt: expected a list of rule '.\n          'specifications, found \"%s\".',\n          phutil_describe_type($list)));\n    }\n\n    $trigger_rules = array();\n    foreach ($list as $key => $rule) {\n      if (!is_array($rule)) {\n        throw new PhabricatorProjectTriggerCorruptionException(\n          pht(\n            'Trigger ruleset is corrupt: rule (at index \"%s\") should be a '.\n            'rule specification, but is actually \"%s\".',\n            $key,\n            phutil_describe_type($rule)));\n      }\n\n      try {\n        PhutilTypeSpec::checkMap(\n          $rule,\n          array(\n            'type' => 'string',\n            'value' => 'wild',\n          ));\n      } catch (PhutilTypeCheckException $ex) {\n        throw new PhabricatorProjectTriggerCorruptionException(\n          pht(\n            'Trigger ruleset is corrupt: rule (at index \"%s\") is not a '.","sourceCodeStart":123,"sourceCodeEnd":159,"githubUrl":"https://github.com/phacility/phabricator/blob/5720a38cfe95b00ca4be5016dd0d2f3195f4fa04/src/applications/project/storage/PhabricatorProjectTrigger.php#L123-L159","documentation":"Error \"Trigger ruleset is corrupt: rule (at index \"%s\") should be a rule specification, but is actually \"%s\".\" thrown in phacility/phabricator.","triggerScenarios":"Thrown at src/applications/project/storage/PhabricatorProjectTrigger.php:141 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"}