We regularly see a bunch of these in the logs thanks to crawlers:
[2026-03-27 01:27:36] EXCEPTION: (PhabricatorDataNotAttachedException) Attempting to access attached data on PhabricatorRepositoryCommit (via getRepository()), but the data is not actually attached. Before accessing attachable data on an object, you must load and attach it.\n\nData is normally attached by calling the corresponding needX() method on the Query class when the object is loaded. You can also call the corresponding attachX() method explicitly. at [<phorge>/src/infrastructure/storage/lisk/PhabricatorLiskDAO.php:280] arcanist(), ava(), phorge(), translations(), wmf-ext-misc() #0 <#2> PhabricatorLiskDAO::assertAttached(string) called at [<phorge>/src/applications/repository/storage/PhabricatorRepositoryCommit.php:59] #1 <#2> PhabricatorRepositoryCommit::getRepository() called at [<phorge>/src/applications/repository/storage/PhabricatorRepositoryCommit.php:357] #2 <#2> PhabricatorRepositoryCommit::getMonogram() called at [<phorge>/src/applications/repository/storage/PhabricatorRepositoryCommit.php:302] #3 <#2> PhabricatorRepositoryCommit::getURI() called at [<phorge>/src/applications/diffusion/controller/DiffusionExternalController.php:106] #4 <#2> DiffusionExternalController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284] #5 phlog(PhabricatorDataNotAttachedException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41] #6 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, PhabricatorDataNotAttachedException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:754] #7 AphrontApplicationConfiguration::handleThrowable(PhabricatorDataNotAttachedException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296] #8 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204] #9 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35] referer: https://phabricator.wikimedia.org/source/mediawiki/browse/wmf%252F1.46.0-wmf.16/extensions/;5bc567031c235d9cdbff711b7360e4adb1a722b5?offset=100
So I finally looked into this, and all exceptions shared the same referrer.
Going to https://phabricator.wikimedia.org/source/mediawiki/browse/wmf%252F1.46.0-wmf.16/extensions/%3B5bc567031c235d9cdbff711b7360e4adb1a722b5?offset=100 , most listed repos redirect successfully, for example:
https://phabricator.wikimedia.org/diffusion/external/?uri=ssh%3A%2F%2Fgerrit.wikimedia.org%3A29418%2Fmediawiki%2Fextensions%2FWikimediaMessages.git&id=ca85a9eeae36c2b6cb78280331752755467a5f31
goes to
https://phabricator.wikimedia.org/diffusion/EWME/browse/master/;ca85a9eeae36c2b6cb78280331752755467a5f31
However three repos trigger this issue:
- https://phabricator.wikimedia.org/diffusion/external/?uri=ssh%3A%2F%2Fgerrit.wikimedia.org%3A29418%2Fmediawiki%2Fextensions%2FVisualEditor.git&id=d6ae8390f595226c9847f878fdcb50202013903f
- https://phabricator.wikimedia.org/diffusion/external/?uri=ssh%3A%2F%2Fgerrit.wikimedia.org%3A29418%2Fmediawiki%2Fextensions%2Fnormal.git&id=1f8803277cc35f4af0d017d5550d9d8b2dce58c6
- https://phabricator.wikimedia.org/diffusion/external/?uri=ssh%3A%2F%2Fgerrit.wikimedia.org%3A29418%2Fmediawiki%2Fextensions%2FZeroRatedMobileAccess.git&id=1bfe2a816e38eb9805ce90ae87f459101891863b
The latter should redirect to https://phabricator.wikimedia.org/diffusion/EZRM/browse/master/;ca85a9eeae36c2b6cb78280331752755467a5f31 which is not an object in the git tree.
I think we can ignore this issue for the time being.