2.3 KiB
Human direction
yeah i guess this is our best approach strat for sure.
so you’re saying these 2 are not the same patch? please tell me no lol
so detail which commits to drop vs. keep please in detail so i can audit your choices this time..
let’s try it and consider bailing and re-trying if this leads us into a further (and deeper) sinkhole, bc as it stands right now this whole endevour has turned into a complete shitfest XD
you didn’t respond to my ask about the wkt/ib_downstream_pin_eval stuff and it missing the bcast rx commit either
Unedited diagnostic response
The real-bridge test reproduced the exact fatal path: maybe_open_context() teardown raises TrioTaskExited back into the quote consumer.
With only the quote-cache backout, both quote generations complete and their asyncio tasks finish. Tractor still emits TrioTaskExited callback errors, so the strict test remains red. That narrows the result: the backout removes the fatal propagation in this reproducer, but doesn’t make bridge teardown clean.
Code output pointers
git diff dc618229 -- piker/brokers/ib/feed.py
Back out 635314c7’s quote owner and import the original adapter-only deltas from 0846cbd4 and 1da9b760.
git diff dc618229 -- piker/clearing/_ems.py
Import 12b0d66e’s dedicated dark-clearing quote subscription.
git diff dc618229 -- tests/test_ib_broadcast.py tests/test_ib_quote_restart.py tests/test_ib_history.py tests/test_ems_broadcast.py
Replace the reverted mock-cache test with a real-runtime restart reproducer; retain original history/EMS tests and add real bridge history recovery and real broadcaster EMS coverage. Newly added test files remain untracked until the human stages them, so the diff pointers include them only after staging or committing.
Verification output
21 passed in 0.53s
1 failed, 2 passed in 5.53s
13 passed in 1.41s
1 passed, 1 warning in 0.04s
2 passed in 0.03s
The last run includes the original EMS case again and one additional real-broadcaster case: 38 unique passes and one strict callback failure.