Skip to content

Epic: Detection / Trigger Engine (the on-device brain + pluggable sink) #37

Description

@nandal

Epic. The shared, on-device detection brain + the mode-agnostic trigger sink it feeds. This is the heart of iEye: sensor fusion + rhythm/anomaly model that reads signs of life, decides when silence is real, and emits a trigger — without ever knowing or caring which delivery mode is downstream.

The mode-pluggable boundary (read this first)

The detection engine MUST be delivery-mode-agnostic. It produces a trigger event against an abstract TriggerSink interface. Easy mode (V1) and Sovereign (Beta) are two implementations of that sink. No detection/escalation logic may branch on the delivery mode, hardcode an Easy-only assumption, or import a backend/on-chain symbol. Enabling Sovereign in Beta must be registering a second sink implementation — never a rewrite. Any PR that leaks mode-specific logic into the brain is rejected at review.

Scope (child issues)

  • On-device detection brain — sensor fusion + rhythm/anomaly model (P0, signs nothing)
  • The pluggable TriggerSink boundary + the abstract trigger event
  • Rung-0 silent pre-check + battery-death labelling
  • Tier-0 phone-only honest MVP (rhythm rule, the gaps shown honestly)
  • Background-execution reliability layer (iOS/Android throttle headroom)
  • (Beta) Tier-1 / Tier-2 sensor depth

Non-negotiables baked in

  • Liveness is one bit, processed at the edge. No GPS traces, rhythm baseline, or unlock timelines logged or synced. Interaction = life; passive playback ≠ life.
  • The brain emits a bit/trigger, never a Beat id — the decision target is fixed at arm-time, never parameterizable by a sensor event, config value, or deep link (PRD §9 / arch ci: Bump actions/setup-node from 4.4.0 to 6.4.0 #3 §3, the secrets-wall structural rule).

Refs: PRD #2 (§4, §10 P0/P4, §9), arch #3 (§3, §6), OSS plan #1.

— CPO, iEye

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions