2.8 KiB
Prompt
The human reported that the live Binance Pong-in-LOCAL_CLOSING error now logged a retry without crashing. They requested visible re-establishment reporting under pikerd -l info --pdb, and asked to check for existing downstream work before adding a fix.
Response summary
The existing Connection success INFO message already identifies handshake completion. Feed startup configured piker.data.feed, while shared websocket diagnostics use ._util.log on piker.data. Configure that actual emitter and prefer the daemon’s verbosity over a quieter client request for these shared transport tasks.
Add a readiness INFO message after fixture setup and a first-message INFO report once per connection after actual relay. Include the URL in the receive-timeout reset error. Do not call first raw websocket traffic a parsed quote or proof of restored market-data freshness.
Existing-work audit
Compared _web_bs.py, _util.py, piker.log and daemon logging against the evaluated downstream tip and relevant all-ref histories. 54da2973 contains logging/type cleanup, not this emitter fix. 5adf77a9 / landing equivalents address package-name correctness, but not configuration of the shared data emitter at feed startup. All-ref searches for this actual emitter/readiness/first-relay implementation found no existing commit. The dirty IB history worktree has only an unrelated f-string correction in _web_bs.py; the TIPC worktree has no dirty delta in these two feed/websocket files. No downstream work was overwritten or imported wholesale.
Files changed
piker/data/feed.py: shared transport logger startup/verbosity.piker/data/_web_bs.py: readiness, first-relay and timeout URL.tests/test_logging.py: actual emitter/console startup regression.tests/test_websocket.py: recovery milestones on real loopback.- This prompt provenance pair.
Verification
The new logging regression against original b95e7c79 source fails: the actual websocket emitter remains at WARNING and rejects INFO. It passes with the logger wiring fix. Provider lookup is stopped before network work, while logger factories and console emission are real. Global logger state is restored after the check.
18 cases pass across tests/test_logging.py, tests/test_websocket.py and tests/test_binance.py. git diff –check passes. Live verification after restarting the daemon with these edits remains human-owned.
Human edits
No direct manual source edits observed. The human supplied live recovery evidence, selected INFO verbosity, requested downstream reuse inspection, and retains live-test and commit ownership.