Skip to content

docs: land Bluetooth presence sensor plan (cross-repo with burble)#45

Merged
hyperpolymath merged 1 commit into
mainfrom
docs/burble-presence-plan
May 13, 2026
Merged

docs: land Bluetooth presence sensor plan (cross-repo with burble)#45
hyperpolymath merged 1 commit into
mainfrom
docs/burble-presence-plan

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

Lands the neurophone-side plan for the cross-repo Bluetooth presence integration designed with sibling repo burble. Documentation only — no code changes, no Phase 2 implementation yet.

NeuroPhone gains a BLE presence sensor (read-only) that feeds the existing sensor → LSM → ESN → bridge → LLM pipeline alongside accelerometer / gyro / light / proximity. The authoritative cross-repo plan is in burble/docs/architecture/ANDROID-CLIENT.adoc; this doc is the neurophone-specific projection.

Privacy posture preserved

NeuroPhone's existing README guarantees no mic / no contacts / no personal data. Adding BLE scanning is a real change, handled carefully:

  • No RECORD_AUDIO. Neurophone is not getting a voice client.
  • No outbound advertising. Read-only on the Burble protocol.
  • BLUETOOTH_SCAN requested with usesPermissionFlags="neverForLocation" — no location permission demanded, scan results not treated as location data.
  • Toggle defaults OFF. Separate from main sensor consent.
  • Scanning is presence-only. BurbleNeighborScanner filters on Burble UUID and decodes only the published payload fields. Does not do generic device discovery; does not log non-Burble MACs.
  • AI_INSTALLATION_GUIDE.adoc update is a hard prerequisite for Phase 2 ship — the AI-driven install flow asks consent questions in a specific order; adding a sensor without updating the script means the AI doesn't ask, which means it's silently enabled.

Repository ownership

Lives in burble Lives in neurophone
Wire format (a2ml) Scanner + decoder
Idris2 type Rust crate bt-presence
AffineScript signatures Kotlin bluetooth/ package
Server-side bridge Bridge context extension

Build-time codegen pulls burble's a2ml manifest into the rust crate — single source of truth, no protocol fork.

Test plan

  • Doc renders as AsciiDoc
  • No code changes to verify
  • Cross-refs to README, TOPOLOGY, and burble's ANDROID-CLIENT.adoc are valid

🤖 Generated with Claude Code

NeuroPhone-side projection of the cross-repo Bluetooth integration
designed with burble. Sensor-class only: presence advertisements
read from BLE adv payload, decoded, decayed, fed into the existing
sensor → LSM → ESN → bridge pipeline alongside accelerometer/gyro.

Hard guarantees preserved:
- No RECORD_AUDIO. No voice client.
- No outbound advertising (read-only on the Burble protocol).
- BLUETOOTH_SCAN requested with neverForLocation flag.
- Toggle defaults OFF, separate from main sensor consent.
- AI_INSTALLATION_GUIDE.adoc update is a hard prerequisite for
  Phase 2 ship so the AI-driven install asks the right consent.

Authoritative full plan lives at
burble/docs/architecture/ANDROID-CLIENT.adoc; this doc covers only
the neurophone side and points to burble for the wire format and
voice client design.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@hyperpolymath
hyperpolymath enabled auto-merge (squash) May 13, 2026 00:15
Repository owner deleted a comment from chatgpt-codex-connector Bot May 13, 2026
@hyperpolymath
hyperpolymath disabled auto-merge May 13, 2026 00:34
@hyperpolymath
hyperpolymath merged commit 07b0a8b into main May 13, 2026
26 of 28 checks passed
@hyperpolymath
hyperpolymath deleted the docs/burble-presence-plan branch May 13, 2026 00:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant