You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rewritten — the Device.disconnect() proposal is dropped (0019 L168).
Scope
Reconnect = Device.connect(force_reconnect=True). The only disconnect we want is atexit, so the connector registers an atexit hook (Giles: "atexit is fine") plus explicit await connector.shutdown().
(Optional/out-of-scope-first-cut) serve-transports-alongside-embed (decision 9): design the runner so a transport list can be added later — no work required here beyond not precluding it.
Acceptance
uv run --locked tox -e pre-commit,type-checking,tests green.
Rewritten — the
Device.disconnect()proposal is dropped (0019 L168).Scope
Device.connect(force_reconnect=True). The only disconnect we want is atexit, so the connector registers an atexit hook (Giles: "atexit is fine") plus explicitawait connector.shutdown().ControllerRunner(AttrW setpoint cache, native timestamps + severity, ControllerRunner #395) owns lifecycle incl. reconnect, so the connector defers to it.Acceptance
uv run --locked tox -e pre-commit,type-checking,testsgreen.ADR: 0019
Parent: #388
Blocked by: #399