Files
meeting-assistant/openspec/changes/archive/2026-05-21-add-speaker-identity-learning/tasks.md
T
2026-05-27 12:55:17 +02:00

2.9 KiB

1. Specification

  • 1.1 Define requirements for local speaker identity storage and candidate elimination.
  • 1.2 Define requirements for live periodic matching and transcript relabeling.

2. Implementation

  • 2.1 Add SQLite speaker identity database in app data.
  • 2.2 Add speaker snippet extraction and matching orchestration.
  • 2.3 Learn unmatched speaker identities from meeting attendees at transcript completion.
  • 2.4 Eliminate candidate names on future matches and promote a canonical name.
  • 2.5 Relabel finished transcript segments when canonical identity matches are found.
  • 2.6 Add live periodic matching after an initial delay and apply matches to future transcript writes.
  • 2.7 Keep timestamped in-memory audio samples for live diarized speaker matching and reserve recording-file extraction for final-only diarization.
  • 2.8 Add speaker aliases and a diagnostic duplicate-identity merge process.
  • 2.9 Use aliases during candidate elimination and unmatched-candidate filtering.
  • 2.10 Keep live speaker matching read-only so final identity decisions use the latest meeting note frontmatter.
  • 2.11 Rewrite already-written live transcript segments when a live speaker match is found.
  • 2.12 Prioritize attendee-matched speaker identities, filter stale non-attendees, and cap match candidates.
  • 2.13 Run live speaker identification incrementally when new unmapped speakers appear or attendees change.
  • 2.14 Maintain speaker identity last-modified timestamps for active-age filtering.
  • 2.15 Add identified speaker display names to meeting note attendees without duplicating display names or aliases.
  • 2.16 Canonicalize calendar attendee names through identity canonical names and aliases before writing meeting notes.

3. Validation

  • 3.1 Add tests for candidate creation, elimination, canonical promotion, and reset on empty candidate intersection.
  • 3.2 Add tests for recording coordinator transcript relabel integration.
  • 3.3 Add tests for in-memory speaker samples and rolling audio buffer extraction.
  • 3.4 Add tests for duplicate speaker identity merging and the diagnostic endpoint.
  • 3.5 Add tests for alias-aware candidate elimination.
  • 3.6 Add tests that live matching does not mutate speaker identities.
  • 3.7 Add tests that live speaker matches relabel current and future transcript segments.
  • 3.8 Add tests for speaker identity candidate ordering, active-age filtering, and candidate caps.
  • 3.9 Add tests for incremental live speaker identification triggers.
  • 3.10 Add tests for speaker identity last-modified timestamp creation, updates, and schema upgrade.
  • 3.11 Add tests for adding matched speaker identities to meeting attendees and alias duplicate suppression.
  • 3.12 Add tests for calendar attendee canonicalization and alias duplicate suppression.
  • 3.13 Run dotnet test.