Transaction.search endpoint does not work on differential diffs


#1

I’m apparently converting something from feed.http-hook to a firehose webhook, and I’m trying to determine how to figure out what change to an object caused the webhook to be called. When I call the transaction.search endpoint with some of the transactions for an update to a differential diff (as the User Guide: Webhooks page tells me to), I get back the following error:

ERR-CONDUIT-CORE: Method getApplicationTransactionCommentObject in class DifferentialDiffTransaction is not implemented!

Is there some other way for me to look up information about diffs or can I just not handle them from webhooks right now?


#2

Behold! I have travelled through time to fixed this problem 8 months before you reported it! Truly an astounding sorcery!

https://secure.phabricator.com/D19507

(If you can reproduce against a modern version of Phabricator, give me some more detailed instructions?)


#3

Oh, actually, I did manage to reproduce this after poking at it a bit more.


#4

This is against this week’s stable phabricator.

The webhook body that caused this error was

{'object': {'type': 'DIFF', 'phid': 'PHID-DIFF-3gva4eq42fdiyfu5lx5p'}, 'triggers': [{'phid': 'PHID-HWBH-wu57rnuwkeqdn3bckmbk'}], 'action': {'test': False, 'silent': False, 'secure': False, 'epoch': 1549507046}, 'transactions': [{'phid': 'PHID-XACT-DIFF-gozc2ykrbha6epj'}]}

As far as I can tell, any transaction.search request with a DIFF object type fails this way?


#5

As far as I can tell, any transaction.search request with a DIFF object type fails this way?

It’s very slightly more involved – diffs created as a side effect of commit discovery don’t fatal this way, and my test case happened to be one of these.

Should be fixed by: https://secure.phabricator.com/D20121


#6

I cherry-picked in that fix and it works now. Thanks!


closed #7