phacility/phabricator · error · ConduitException

ERR_NOT_FOUND

ERR_NOT_FOUND

Error message

ERR_NOT_FOUND

What it means

Sentinel Conduit error in DiffusionGetRecentCommitsByPathConduitAPIMethod::execute: DiffusionRequest::newFromDictionary returned null, meaning no repository could be resolved from the supplied callsign/path/branch parameters (the method's own error map documents ERR_NOT_FOUND as 'Repository was not found'). ConduitException with a stable error code lets API clients branch on this specific not-found condition instead of parsing message text.

Solutions

  1. Verify the 'callsign' parameter matches an existing, visible repository
  2. Ensure the acting user has access to the repository
  3. Prefer the modern diffusion.query methods with a repository identifier if the callsign lookup keeps failing
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/applications/diffusion/conduit/DiffusionGetRecentCommitsByPathConduitAPIMethod.php:54 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of phacility/phabricator@5720a38cfe (2026-08-21). Data as JSON: /api/errors/3c335e7da35016a9. Report an issue: GitHub.

Appendix: source

Thrown at src/applications/diffusion/conduit/DiffusionGetRecentCommitsByPathConduitAPIMethod.php:54

      'ERR_NOT_FOUND' => pht('Repository was not found.'),
    );
  }

  protected function defineReturnType() {
    return 'nonempty list<string>';
  }

  protected function execute(ConduitAPIRequest $request) {
    $drequest = DiffusionRequest::newFromDictionary(
      array(
        'user' => $request->getUser(),
        'callsign' => $request->getValue('callsign'),
        'path' => $request->getValue('path'),
        'branch' => $request->getValue('branch'),
      ));

    if ($drequest === null) {
        throw new ConduitException('ERR_NOT_FOUND');
    }

    $limit = nonempty(
      $request->getValue('limit'),
      self::DEFAULT_LIMIT);

    $history_result = DiffusionQuery::callConduitWithDiffusionRequest(
      $request->getUser(),
      $drequest,
      'diffusion.historyquery',
      array(
        'commit' => $drequest->getCommit(),
        'path' => $drequest->getPath(),
        'offset' => 0,
        'limit' => $limit,
        'needDirectChanges' => true,
        'needChildChanges' => true,
      ));

View on GitHub (pinned to 5720a38cfe)