22
33## Overview
44
5- Milestone v1.5 focuses on Live Review + Safe Approved Speak: using real
6- captured-call evidence to reduce false handoffs, bootstrap speaker labels,
7- close the approved-draft playback loop, and make saved sessions reusable as
8- regression fixtures.
5+ Saymo has completed milestone v1.5 Live Review + Safe Approved Speak. There is
6+ no active roadmap phase right now; the next product increment should start with
7+ ` $gsd-new-milestone ` .
98
109## Completed Milestones
1110
11+ - ✅ ** v1.5 Live Review + Safe Approved Speak** - Phases 18-22 shipped
12+ 2026-05-21.
13+ Archives: ` .planning/milestones/v1.5-ROADMAP.md ` ,
14+ ` .planning/milestones/v1.5-REQUIREMENTS.md ` ,
15+ ` .planning/milestones/v1.5-MILESTONE-AUDIT.md ` ,
16+ ` .planning/milestones/v1.5-phases/ `
1217- ✅ ** v1.4 Live Conversation Memory + Answer Cockpit** - Phases 14-17 shipped
1318 2026-05-20.
1419 Archives: ` .planning/milestones/v1.4-ROADMAP.md ` ,
@@ -19,177 +24,23 @@ regression fixtures.
1924 ` .planning/milestones/v1.3-REQUIREMENTS.md ` ,
2025 ` .planning/milestones/v1.3-MILESTONE-AUDIT.md `
2126- ✅ ** v1.2 Trigger Training Console** - Phases 8-10 shipped 2026-05-20.
22- Archive: ` .planning/milestones/v1.2-ROADMAP.md `
27+ Archives: ` .planning/milestones/v1.2-ROADMAP.md ` ,
28+ ` .planning/milestones/v1.2-REQUIREMENTS.md ` ,
29+ ` .planning/milestones/v1.2-MILESTONE-AUDIT.md `
2330- ✅ ** v1.1 Call Intelligence Loop** - Phases 5-7 shipped 2026-05-18.
24- Archive: ` .planning/milestones/v1.1-ROADMAP.md `
31+ Archives: ` .planning/milestones/v1.1-ROADMAP.md ` ,
32+ ` .planning/milestones/v1.1-REQUIREMENTS.md `
2533- ✅ ** v1.0 Speedly Catcher + Speedly Sayer** - Phases 1-4 shipped
2634 2026-05-15.
2735
2836## Active Milestone
2937
30- - ** v1.5 Live Review + Safe Approved Speak ** - Phases 18-22 planned .
38+ None .
3139
3240## Phases
3341
34- ** Phase Numbering:**
35- - Integer phases (18, 19, 20, 21, 22): Planned milestone work
36- - Decimal phases (19.1, 19.2): Urgent insertions if needed
42+ No active phases remain.
3743
38- - [x] ** Phase 18: Post-call Review Queue** - Prioritize real-session samples
39- that most affect handoff, speaker, and classifier quality.
40- - [x] ** Phase 19: Addressing v2** - Separate direct handoffs from incidental
41- name mentions and explain the decision path.
42- - [x] ** Phase 20: Speaker Bootstrap** - Reduce unknown-speaker coverage for
43- completed sessions without requiring live diarization.
44- - [x] ** Phase 21: Approved Draft Playback** - Play only explicitly approved
45- generated drafts through existing safe TTS/playback paths.
46- - [x] ** Phase 22: Regression Replay** - Re-run saved sessions through current
47- logic and report reliability metrics.
44+ ## Next Step
4845
49- ## Phase Details
50-
51- ### Phase 18: Post-call Review Queue
52- ** Goal** : Let the user review the highest-value samples from one completed
53- session first and apply labels needed for safer live behavior.
54- ** Depends on** : v1.2 review commands, v1.4 meeting memory
55- ** Requirements** : REV-05, REV-06, REV-07
56- ** Success Criteria** (what must be TRUE):
57- 1 . A user can open a session-scoped review queue that ranks likely handoffs,
58- questions, name mentions, unknown speakers, and classifier-critical
59- samples ahead of ordinary speech.
60- 2 . A user can apply category, speaker, and answer-decision labels from the
61- queue without editing JSON directly.
62- 3 . The queue reports remaining unknown speakers, unlabeled decisions,
63- accepted/rejected counts, and classifier-readiness blockers.
64- 4 . Existing ` trigger-samples review/list/category/decision/label ` flows still
65- work for manual review.
66- ** Plans** : 4 plans
67-
68- Plans:
69- - [x] 18-01: Add post-call review priority scoring and queue model
70- - [x] 18-02: Add session-scoped review command and batch-safe label actions
71- - [x] 18-03: Add review progress and classifier-readiness diagnostics
72- - [x] 18-04: Add docs, edge-case tests, and no-raw-audio report checks
73-
74- ### Phase 19: Addressing v2
75- ** Goal** : Stop treating every recognized name as an addressed-to-me handoff
76- while keeping true handoff detection explainable and tunable.
77- ** Depends on** : Phase 18
78- ** Requirements** : INT-02, INT-03, INT-04, INT-05
79- ** Success Criteria** (what must be TRUE):
80- 1 . Incidental first-name and full-name/surname mentions can be classified as
81- mention-only instead of ` addressed_to_me ` .
82- 2 . Direct handoffs such as "John, what do you think?" still produce an
83- answer candidate or confirmation wait.
84- 3 . ` trigger-check ` explains matched phrase, local context, decision path,
85- final action, and skip/answer reason.
86- 4 . Per-profile config can tune handoff and mention-only patterns without
87- hardcoded private names in source.
88- 5 . Saved false-positive and true-handoff samples can be replayed against
89- Addressing v2.
90- ** Plans** : 4 plans
91-
92- Plans:
93- - [x] 19-01: Add addressing evidence model and explainable decision output
94- - [x] 19-02: Add direct-handoff vs mention-only heuristics
95- - [x] 19-03: Add profile-configured handoff and mention-pattern tuning
96- - [x] 19-04: Add saved-sample replay tests for false positives and true handoffs
97-
98- ### Phase 20: Speaker Bootstrap
99- ** Goal** : Turn completed sessions with ` speaker=unknown ` into usable
100- speaker-labeled training evidence through reviewed local workflows.
101- ** Depends on** : Phase 18, v1.3 diarization sidecars
102- ** Requirements** : SPKR-04, SPKR-05, QUAL-04
103- ** Success Criteria** (what must be TRUE):
104- 1 . A user can bootstrap speaker labels for one completed session from
105- reviewed diarization suggestions or a lightweight manual grouping flow.
106- 2 . Bulk label application preserves manual labels as authoritative and keeps
107- suggestion/audit metadata inspectable.
108- 3 . Session output reports ` me ` , ` other ` , and ` unknown ` counts by category and
109- shows classifier-readiness impact.
110- 4 . Saymo remains usable when diarization is disabled or unavailable.
111- ** Plans** : 3 plans
112-
113- Plans:
114- - [x] 20-01: Add speaker bootstrap candidates from sessions and suggestions
115- - [x] 20-02: Add bulk speaker label apply flow with audit preservation
116- - [x] 20-03: Add speaker coverage/readiness reports and disabled-backend tests
117-
118- ### Phase 21: Approved Draft Playback
119- ** Goal** : Let the user send only explicitly approved generated draft text into
120- the live call through existing local TTS and playback safety paths.
121- ** Depends on** : v1.4 answer cockpit, existing TTS/playback routing
122- ** Requirements** : COCK-03, COCK-04, AUD-03, SAFE-01
123- ** Success Criteria** (what must be TRUE):
124- 1 . ` answer-cockpit action --action speak ` can route an approved draft through
125- configured local TTS and playback devices.
126- 2 . Unapproved generated draft text is refused before synthesis or playback.
127- 3 . A user can preview/monitor, cancel, or timeout approved draft playback.
128- 4 . Audit events record draft id, action id, TTS engine, output route,
129- playback start/end, cancellation, and blocked reasons.
130- 5 . Manual takeover, confirmation, and max-duration safety behavior remains
131- intact.
132- ** Plans** : 4 plans
133-
134- Plans:
135- - [x] 21-01: Add approved playback request model and blocked-reason gates
136- - [x] 21-02: Wire approved drafts into existing TTS and playback routing
137- - [x] 21-03: Add preview, monitor, cancel, timeout, and max-duration controls
138- - [x] 21-04: Extend audit/reporting and safety regression tests
139-
140- ### Phase 22: Regression Replay
141- ** Goal** : Make saved sessions reusable as a local reliability test for
142- addressing, question detection, speaker coverage, and live-assist readiness.
143- ** Depends on** : Phases 18-21
144- ** Requirements** : REG-01, REG-02, REG-03
145- ** Success Criteria** (what must be TRUE):
146- 1 . A user can replay one saved capture session through current addressing,
147- question, speaker, and classifier logic without re-recording audio.
148- 2 . Regression output reports false handoffs, missed handoffs, question noise,
149- speaker coverage, review coverage, and live-assist readiness.
150- 3 . A user can compare before/after results and export a sanitized report.
151- 4 . Regression reports omit raw audio and secrets and avoid committing local
152- transcripts or recordings.
153- ** Plans** : 3 plans
154-
155- Plans:
156- - [x] 22-01: Add saved-session replay engine over local sample metadata
157- - [x] 22-02: Add reliability metrics and before/after comparison
158- - [x] 22-03: Add sanitized regression reports, docs, and fixture tests
159-
160- ## Progress
161-
162- ** Execution Order:**
163- Phases execute in numeric order: 18 -> 19 -> 20 -> 21 -> 22
164-
165- | Phase | Milestone | Plans Complete | Status | Completed |
166- | -------| -----------| ----------------| --------| -----------|
167- | 18. Post-call Review Queue | v1.5 | 4/4 | Complete | 2026-05-21 |
168- | 19. Addressing v2 | v1.5 | 4/4 | Complete | 2026-05-21 |
169- | 20. Speaker Bootstrap | v1.5 | 3/3 | Complete | 2026-05-21 |
170- | 21. Approved Draft Playback | v1.5 | 4/4 | Complete | 2026-05-21 |
171- | 22. Regression Replay | v1.5 | 3/3 | Complete | 2026-05-21 |
172-
173- ## Requirement Coverage
174-
175- | Requirement | Phase |
176- | -------------| -------|
177- | REV-05 | Phase 18 |
178- | REV-06 | Phase 18 |
179- | REV-07 | Phase 18 |
180- | INT-02 | Phase 19 |
181- | INT-03 | Phase 19 |
182- | INT-04 | Phase 19 |
183- | INT-05 | Phase 19 |
184- | SPKR-04 | Phase 20 |
185- | SPKR-05 | Phase 20 |
186- | QUAL-04 | Phase 20 |
187- | COCK-03 | Phase 21 |
188- | COCK-04 | Phase 21 |
189- | AUD-03 | Phase 21 |
190- | SAFE-01 | Phase 21 |
191- | REG-01 | Phase 22 |
192- | REG-02 | Phase 22 |
193- | REG-03 | Phase 22 |
194-
195- ** Coverage:** 17/17 requirements mapped.
46+ Run ` $gsd-new-milestone ` when the next milestone goal is ready.
0 commit comments