Using includedSources/excludedSources can introduce a few edge cases.
It modified feeSources which made it difficult to sometimes find an maker/ETH or taker/ETH price, so cost based routing could get weird.
It can result in MultiHop not having anything to MultiHop to (e.g DAI/USDC with Curve only, theres no ability to ETH hop)
There are cases where firstHopSource is not present in the FillData but it is required. No valid sources or reverts (didn't dig deep enough to confirm it was a revert)
If there was no optimal path then we would throw, there's the possibility that there is no optimal path, but there is a MultiHop path available.
Description
Using
includedSources/excludedSources
can introduce a few edge cases.firstHopSource
is not present in theFillData
but it is required. No valid sources or reverts (didn't dig deep enough to confirm it was a revert)Sims on some pairs which use MultiHop often
Testing instructions
Types of changes
Checklist:
[WIP]
if necessary.