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
Sticky discovery filter on Peripheral (services/chars); fail-closed if empty when auto-discovery required (FR-10.1.2).
Define what counts as an "auto-discovery path."Peripheral.connect(autoReconnect:) registers a manual-connect hold and links without any discovery today. Decide and document whether a manual connect with an empty filter is a hard error or a link-only operation. Recommended: manual connect links without discovering; auto-discovery is triggered by work (or an explicit on-demand discover()), so declaring a filter is required only where discovery actually runs.
Filter must be settable before the peripheral is ever connected — a manual connect() can throw bluetoothPoweredOff while still recording durable demand, so filter declaration cannot depend on a live link.
Parent: #52
Requirements
Peripheral(services/chars); fail-closed if empty when auto-discovery required (FR-10.1.2).Peripheral.connect(autoReconnect:)registers a manual-connect hold and links without any discovery today. Decide and document whether a manual connect with an empty filter is a hard error or a link-only operation. Recommended: manual connect links without discovering; auto-discovery is triggered by work (or an explicit on-demanddiscover()), so declaring a filter is required only where discovery actually runs.connect()can throwbluetoothPoweredOffwhile still recording durable demand, so filter declaration cannot depend on a live link.CBPeripheralDelegateinside the Bluetooth actor (incl. restore re-wire).Acceptance criteria