fix(delegation): the path rules live in a stdlib-only module; the package imports without paho (Issue #57, Mac F1)
control_plane and status.sh imported sibling_logs_dir from mqtt_common, which imports paho at module level, so create/resume's binding and status died on an interpreter without paho-mqtt (_delegate_py_bin's last fallback is the PATH's python3). The registry/audit-log path rules move to lib_py/delegation/logroot.py (standard library only) and mqtt_common re-exports them. The package's own import chain also reached paho through service -> publish_event -> publisher, so mqtt_common and publisher import paho tolerantly and make_client() refuses with a clear error when a broker is actually needed. control_plane, status.sh, lib.sh's delegate_publish_cmd and delegate_logs_dir, and the wrapper's _logs_dir_abs import from logroot. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
63d816468e
commit
75c004222c
8 files changed
+145
-60
No files matched your search
@@ -14,7 +14,10 @@ import logging
|
||||
import time
|
||||
from typing import Any, Optional, Tuple
|
||||
|
||||
import paho.mqtt.client as mqtt
|
||||
try:
|
||||
import paho.mqtt.client as mqtt
|
||||
except ImportError: # importable without a broker library; mqtt_common.make_client() refuses to connect
|
||||
mqtt = None
|
||||
|
||||
from lib_py.delegation import mqtt_common
|
||||
|
||||
|
||||
Reference in new issue
Block a user