This currently does work, sort of. But the steps are pretty confusing and I had to hit Undo a few times to figure out how to play it correctly.
I just played a game with Lord Rat, where Duplicate was already in play and I had 2 Hagglers in hand. I wanted to buy a Gold, to then duplicate the Gold, and to then get my two 5-value cards via the Hagglers.
But here is the current workflow. (a) Buy Gold, (b) be prompted to gain a lower-value card for Haggler. When this card is identified and gained, I see a prompt to get a similar card via Duplicate. (c) get a prompt to get another lower-value card (via 2nd Haggler). (d) after gaining this, a prompt for duplicating the 5-card in selected in (c).
When this happened, I got confused. "Wait; what? Why didn't I get a prompt to duplicate my gold? Did I miss something in the log?" So, I hit Undo a bunch of times and repeated the above. Nope, did not miss anything. So, I sort of gave up and just duplicated one of my gained 5-value cards.
Later in that same game, it was the same situation. This time, I made a point of ignoring all the prompts to duplicate the Haggler-gained cards. And now, at the end, I indeed did finally get a prompt to duplicate that Gold.
Looking at the text for Haggler, I am guessing that the reason for this is that, technically, I bought the Gold but did not immediately gain it, as Haggler's effect superseded the gaining of the Gold, while any gain via Haggler is indeed immediate. Yes?
But this is really counter-intuitive. I gather that there might be edge cases where this effect is important (Perhaps if Villa is in the kingdom??). But I suspect that a lot of people will be very confused by the way it's currently set up.
It does not matter in bot games. But if this crops up in games with other people, I can see them getting annoyed as a bunch of requests for Undo's and very long turns are occurring. Any chance of cleaning up the interface, to make this a bit more clear?