Skip to content

Earworm v0.3.0 — akousma spec v1.2: location, capture, open records

Choose a tag to compare

@emeisazam emeisazam released this 12 Jul 03:50
· 15 commits to main since this release

Spec v1.2 (additive over v1.1/v1.0):

  • location — where the sound was heard: lat/lon, accuracy_m, altitude_m, human label, source, captured_at. Optional and consent-scoped; dropped from open-research exports by default — where someone listens is as sensitive as what they heard.
  • capture — how the listening was triggered: direction (past = the ring-buffer seconds before the trigger, future = the window after it, live), seconds, trigger, armed_at, triggered_at.
  • Open records — unknown top-level fields MUST be preserved and MAY be ignored: future vocabulary, not errors.

py-akousma 0.3.0: location()/capture() builders, indexed lat/lon columns with in-place store migration, locations() / near() / query(has_location=…), a created_at index, and a JSON1 fast path for tags(). JS SDK mirrored (constants, builders, shape checks, typings). New v1.2 CI fixture. 31 Python tests + full pnpm check green.