rippled
rippled copied to clipboard
fixReducedOffersV1 still not covering all cases and book blocking (Version: 2.1.0)
Issue Description
Amendment fixReducedOffersV1 https://xrpl.org/resources/known-amendments#fixreducedoffersv1 is still not fixing all case where the order book is blocked
two cases have now been identified on mainnet.
Supporting Files
@lathanbritz, I'm disappointed but not surprised that I didn't fix all the ways that order books can be blocked. I have something else I'm working on right now, but this issue is next on my list after that's done.
It would help a lot if you can identify a specific historic transaction that failed because of this blockage. Of course you can only point at transactions that fail with a tec code. So there may not be any such transactions on the network. But being able to replay such a transaction might help me see the reason behind the blockage. If you know of a transaction like that please mention it here. Thanks.
@scottschurr rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi has blocked the USD book (its the one with the partially filled order), it does not have too many tx
@lathanbritz that helps, thanks. That's current? Like that's the state of the book for, say, ledger 86325875? Is there a way you can get the ledger index of the blocking offer (from rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi). That would be a big help. Then I can look back at that offer's history.
@scottschurr we have another instance today
ledger index 86,858,489 its present account https://xrpscan.com/account/rJTyFN9PYy9uWJ3ixsSBfvhZGgvvjNt8MV
here is the offending offer possibly... its left 4 drops behind..
{
flags: 131072,
quality: "339.1499962650333",
seq: 79064611,
taker_gets:
{
currency: "CSC",
issuer: "rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: "0.016190728"
},
taker_pays:
"4"
},
and here is a dump of all the offers.
{
flags:
131072,
quality:
"604.4800060902183",
seq:
79060787,
taker_gets:
{...}, // 3 items
taker_pays:
"43671867"
},
{
flags:
131072,
quality:
"596.9100028176952",
seq:
79060792,
taker_gets:
{...}, // 3 items
taker_pays:
"42368672"
},
{
flags:
131072,
quality:
"477.6",
seq:
79061247,
taker_gets:
{...}, // 3 items
taker_pays:
"41458068"
},
{
flags:
131072,
quality:
"476.4000039835083",
seq:
79061248,
taker_gets:
{...}, // 3 items
taker_pays:
"23918615"
},
{
flags:
131072,
quality:
"598.4200042240527",
seq:
79060791,
taker_gets:
{...}, // 3 items
taker_pays:
"53834462"
},
{
flags:
131072,
quality:
"481.1799936146747",
seq:
79061055,
taker_gets:
{...}, // 3 items
taker_pays:
"33157151"
},
{
flags:
131072,
quality:
"595.3899946566925",
seq:
79060793,
taker_gets:
{...}, // 3 items
taker_pays:
"35656716"
},
{
flags:
131072,
quality:
"640.2699942270972",
seq:
79060255,
taker_gets:
{...}, // 3 items
taker_pays:
"28836480"
},
{
flags:
131072,
quality:
"645.1300048605627",
seq:
79060252,
taker_gets:
{...}, // 3 items
taker_pays:
"42472779"
},
{
flags:
131072,
quality:
"638.649995351864",
seq:
79060256,
taker_gets:
{...}, // 3 items
taker_pays:
"27479832"
},
{
flags:
131072,
quality:
"624.0700042962926",
seq:
79060265,
taker_gets:
{...}, // 3 items
taker_pays:
"24693826"
},
{
flags:
131072,
quality:
"635.4099816289039",
seq:
79060258,
taker_gets:
{...}, // 3 items
taker_pays:
"10376245"
},
{
flags:
131072,
quality:
"615.9700198517198",
seq:
79060270,
taker_gets:
{...}, // 3 items
taker_pays:
"15203988"
},
{
flags:
131072,
quality:
"622.4500081934593",
seq:
79060266,
taker_gets:
{...}, // 3 items
taker_pays:
"26589197"
},
{
flags:
131072,
quality:
"607.8699938490979",
seq:
79060275,
taker_gets:
{...}, // 3 items
taker_pays:
"24810381"
},
{
flags:
131072,
quality:
"479.9700063356757",
seq:
79061056,
taker_gets:
{...}, // 3 items
taker_pays:
"33332957"
},
{
flags:
131072,
quality:
"628.9299987344087",
seq:
79060262,
taker_gets:
{...}, // 3 items
taker_pays:
"44725099"
},
{
flags:
131072,
quality:
"609.4899995485124",
seq:
79060274,
taker_gets:
{...}, // 3 items
taker_pays:
"26999188"
},
{
flags:
131072,
quality:
"637.030001244865",
seq:
79060257,
taker_gets:
{...}, // 3 items
taker_pays:
"30703572"
},
{
flags:
131072,
quality:
"641.8900015080682",
seq:
79060254,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"66310"
},
taker_pays:
"42563726"
},
{
flags:
131072,
quality:
"602.9700057376888",
seq:
79060788,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"50543"
},
taker_pays:
"30475913"
},
{
flags:
131072,
quality:
"627.309996938762",
seq:
79060263,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"75133"
},
taker_pays:
"47131682"
},
{
flags:
131072,
quality:
"648.3700026077712",
seq:
79060250,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"49851"
},
taker_pays:
"32321893"
},
{
flags:
131072,
quality:
"601.4499983117044",
seq:
79060789,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"88847"
},
taker_pays:
"53437028"
},
{
flags:
131072,
quality:
"606.3499980440481",
seq:
79060303,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"76689"
},
taker_pays:
"46500375"
},
{
flags:
131072,
quality:
"614.3499935784923",
seq:
79060271,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"46718"
},
taker_pays:
"28701203"
},
{
flags:
131072,
quality:
"612.7300002720127",
seq:
79060272,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"36763"
},
taker_pays:
"22525793"
},
{
flags:
131072,
quality:
"643.5100061919505",
seq:
79060253,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"80750"
},
taker_pays:
"51963433"
},
{
flags:
131072,
quality:
"599.9399959250204",
seq:
79060790,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"78528"
},
taker_pays:
"47112088"
},
{
flags:
131072,
quality:
"630.5499945717078",
seq:
79060261,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"46055"
},
taker_pays:
"29039980"
},
{
flags:
131072,
quality:
"620.8300048907728",
seq:
79060267,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"49072"
},
taker_pays:
"30465370"
},
{
flags:
131072,
quality:
"426.3599974705957",
seq:
79063284,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"15814"
},
taker_pays:
"6742457"
},
{
flags:
131072,
quality:
"414.590013955652",
seq:
79063294,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"19347"
},
taker_pays:
"8021073"
},
{
flags:
131072,
quality:
"422.0800008436683",
seq:
79063288,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"47412"
},
taker_pays:
"20011657"
},
{
flags:
131072,
quality:
"424.2200006990808",
seq:
79063286,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"57218"
},
taker_pays:
"24273020"
},
{
flags:
131072,
quality:
"346.2000031345998",
seq:
79064493,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"63804"
},
taker_pays:
"22088945"
},
{
flags:
131072,
quality:
"474",
seq:
79061250,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"36239"
},
taker_pays:
"17177286"
},
{
flags:
131072,
quality:
"371.3399961187658",
seq:
79063684,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"13733.49774681672"
},
taker_pays:
"5099797"
},
{
flags:
131072,
quality:
"475.2",
seq:
79061249,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"32565"
},
taker_pays:
"15474888"
},
{
flags:
131072,
quality:
"415.6600061935028",
seq:
79063293,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"67813"
},
taker_pays:
"28187152"
},
{
flags:
131072,
quality:
"427.4299963329667",
seq:
79063283,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"81810"
},
taker_pays:
"34968048"
},
{
flags:
131072,
quality:
"412.4499906173767",
seq:
79063296,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"42632"
},
taker_pays:
"17583568"
},
{
flags:
131072,
quality:
"364.6999898439352",
seq:
79063810,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"23169.7"
},
taker_pays:
"8449989"
},
{
flags:
131072,
quality:
"360.050003095528",
seq:
79063979,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"27763.40206653968"
},
taker_pays:
"9996213"
},
{
flags:
131072,
quality:
"365.6200005207791",
seq:
79063809,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"76808"
},
taker_pays:
"28082541"
},
{
flags:
131072,
quality:
"418.8699933595712",
seq:
79063291,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"61743"
},
taker_pays:
"25862290"
},
{
flags:
131072,
quality:
"428.5000071991131",
seq:
79063282,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"69453"
},
taker_pays:
"29760611"
},
{
flags:
131072,
quality:
"411.3800075483906",
seq:
79063297,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"37094"
},
taker_pays:
"15259730"
},
{
flags:
131072,
quality:
"372.2799975421295",
seq:
79063683,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"65097"
},
taker_pays:
"24234311"
},
{
flags:
131072,
quality:
"358.7899935047569",
seq:
79064478,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"52346"
},
taker_pays:
"18781221"
},
{
flags:
131072,
quality:
"366.5399970705782",
seq:
79063739,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"47791"
},
taker_pays:
"17517313"
},
{
flags:
131072,
quality:
"423.1499906722219",
seq:
79063287,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"32162"
},
taker_pays:
"13609350"
},
{
flags:
131072,
quality:
"408.1699899101523",
seq:
79063300,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"20813"
},
taker_pays:
"8495242"
},
{
flags:
131072,
quality:
"407.1000027390507",
seq:
79063301,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"45413.84641515395"
},
taker_pays:
"18487977"
},
{
flags:
131072,
quality:
"425.2900010763104",
seq:
79063285,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"46455"
},
taker_pays:
"19756847"
},
{
flags:
131072,
quality:
"421.0100088261254",
seq:
79063289,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"56650"
},
taker_pays:
"23850217"
},
{
flags:
131072,
quality:
"413.52",
seq:
79063295,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"68925"
},
taker_pays:
"28501866"
},
{
flags:
131072,
quality:
"409.2400050913257",
seq:
79063299,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"78565"
},
taker_pays:
"32151941"
},
{
flags:
131072,
quality:
"416.7299934355792",
seq:
79063292,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"33514"
},
taker_pays:
"13966289"
},
{
flags:
131072,
quality:
"373.2200123709378",
seq:
79063682,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"21017"
},
taker_pays:
"7843965"
},
{
flags:
131072,
quality:
"472.7999933898502",
seq:
79061251,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"60513"
},
taker_pays:
"28610546"
},
{
flags:
131072,
quality:
"410.3099894966929",
seq:
79063298,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"35227"
},
taker_pays:
"14453990"
},
{
flags:
131072,
quality:
"419.9399967540748",
seq:
79063290,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"86262"
},
taker_pays:
"36224864"
},
{
flags:
131072,
quality:
"322.9899896145858",
seq:
79064987,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"34664"
},
taker_pays:
"11196125"
},
{
flags:
131072,
quality:
"327.3199911543565",
seq:
79064923,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"10116.3"
},
taker_pays:
"3311267"
},
{
flags:
131072,
quality:
"339.1499962650333",
seq:
79064611,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"0.016190728"
},
taker_pays:
"4"
},
{
flags:
131072,
quality:
"317.6700048362174",
seq:
79065074,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"84777"
},
taker_pays:
"26931110"
},
{
flags:
131072,
quality:
"334.0300082821318",
seq:
79064748,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"51919"
},
taker_pays:
"17342504"
},
{
flags:
131072,
quality:
"335.2",
seq:
79064721,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"69935"
},
taker_pays:
"23442212"
},
{
flags:
131072,
quality:
"318.4700041266894",
seq:
79065073,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"38772"
},
taker_pays:
"12347719"
},
{
flags:
131072,
quality:
"320.8699846722568",
seq:
79065070,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"22182"
},
taker_pays:
"7117538"
},
{
flags:
131072,
quality:
"325.7600032399158",
seq:
79064980,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"61730"
},
taker_pays:
"20109165"
},
{
flags:
131072,
quality:
"332.2899998666116",
seq:
79064912,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"74969"
},
taker_pays:
"24911449"
},
{
flags:
131072,
quality:
"322.180007793433",
seq:
79064988,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"48759"
},
taker_pays:
"15709175"
},
{
flags:
131072,
quality:
"324.9400004652029",
seq:
79064981,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"85984"
},
taker_pays:
"27939641"
},
{
flags:
131072,
quality:
"330.6299967525941",
seq:
79064914,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"64667"
},
taker_pays:
"21380850"
},
{
flags:
131072,
quality:
"320.07",
seq:
79065071,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"65100"
},
taker_pays:
"20836557"
},
{
flags:
131072,
quality:
"324.12",
seq:
79064982,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"72525"
},
taker_pays:
"23506803"
},
{
flags:
131072,
quality:
"329.8000080423026",
seq:
79064915,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"49737"
},
taker_pays:
"16403263"
},
{
flags:
131072,
quality:
"331.459995385562",
seq:
79064913,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"78016"
},
taker_pays:
"25859183"
},
{
flags:
131072,
quality:
"319.2699948767576",
seq:
79065072,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"52701"
},
taker_pays:
"16825848"
},
{
flags:
131072,
quality:
"328.969994167847",
seq:
79064916,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"84017"
},
taker_pays:
"27639072"
},
{
flags:
131072,
quality:
"338.1300045245195",
seq:
79064674,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"86197"
},
taker_pays:
"29145792"
},
{
flags:
131072,
quality:
"328.139992413706",
seq:
79064917,
taker_gets:
{
currency:
"CSC",
issuer:
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value:
"2985.26"
},
taker_pays:
"979583"
}
]```
@lathanbritz, thanks for the information on that recent blockage.
I have a unit test that is able to reproduce the last blockage that you reported (by rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi). I'm currently looking into how to prevent the source of that particular blockage.
When I get an opening I'll research this more recent blockage, since it may not have the same source as the older one that I'm currently looking at.
@shortthefomo, first the good news: I found the source of the problem for the USD/Bitstamp:XRP blockage that you reported earlier. I have a proposed fix (not yet a pull request), but that will of course need to go through code review.
Regarding the reported order book blockage in ledger 86,858,489 I have less good news. I analyzed the top-most 150 offers in the...
"TakerGets": "CSC"/"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
"TakerPays": "XRP"
order book in that ledger. That included the one you identified with TakerPays: "4" (that was offer 49). I don't see how any of those 150 offers could be blockers. I'm not saying you didn't see something funny with that order book. But I don't understand the nature of the symptom you were seeing.
All-in-all, however, it is forward progress to identify an additional source of order book blockage and find a fix for it. Thanks for the help.
Great news!
The symptoms that I see that makes it simple to spot is simply taking the first offers off ASK/BID books and then checking for a negative spread. If it's negative those books (ASK and BID) had an order that is "stuck".
That's how ive been identifying them, not sure if that information helps here. Thank you for all the effort on this @scottschurr
If you want we can keep watching for cases, honestly not been looking to hard last while, maybe a few more examples is the right thing to do here and see if that may help shed some further light?
or another option is also simply to write a little script that iterates over the different pairs and looks for this negative spread. I don't think it would be to difficult to write something of that nature, see if I can find a gap todo that and then I will share that if you want?
this is expected to be fixed by fixReducedOffersV2, introduced in 2.3.0-b1
feel free to re-open this issue if more needs to be done