--- created_at: 2026-10-19T12:37:25Z generated_by: harness: opencode provider: openai model: openai/gpt-6.1-sol git_ref: eed58566 scope: code substantive: true raw_file: 20261019T123725Z_eed58566_logger_compat_prompt_io.raw.md --- ## Prompt During the requested downstream/manual IB evaluation, the user reported immediate chart startup failure at the stale assertion `assert log.name == 'piker.service'` in maybe_spawn_daemon(). The user then asked why continuing the post-mortem debugger ended with KeyboardInterrupt from the chart window's closeEvent(). ## Response summary Located the existing downstream logger compatibility commit c07e3cbde21807a4e193b3527ef8686a22cf4d96 and reproduced its code and existing regression tests in the evaluation worktree, unstaged. Preserved the earlier editable Tractor/dependency setup. Explained that closeEvent() sends SIGINT during chart teardown, adding a secondary KeyboardInterrupt after the original assertion unwinds. No window-close behaviour was modified. ## Files changed - piker/log.py: exact package-prefix removal in both logger factories. - piker/service/_daemon.py: remove stale parent logger assertion. - piker/data/_daemon.py: retain setup, remove assertion-only local. - piker/brokers/_daemon.py: same broker startup compatibility fix. - piker/clearing/_ems.py: same EMS startup compatibility fix. - tests/test_logging.py: original four logger namespace regressions. ## Verification - Logger regressions: four passed with --noconftest. - Normal pytest collection blocked by duplicate --ll registration. - Separate local TCP registrar smoke: pikerd/data daemon startup, registration and teardown succeeded; no provider feed opened. - Imports resolve to this evaluation worktree and the evaluated Tractor logging worktree. ## Human edits None observed in this compatibility patch at capture time.