M2-01: Read a memo's transcript on the phone #41
No reviewers
Labels
No labels
area/agent
area/capture
area/editor
area/geo
area/security
area/sync
area/transcription
area/ui
area/vault
area/voice-memos
blocked
milestone/M1
milestone/M2
milestone/M3
milestone/M4
needs-decision
needs-hardware
p0
p1
p2
type/bug
type/enhancement
type/feature
type/idea
type/infrastructure
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Stash/stash-ios!41
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "m2-01-transcript-detail"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #27.
Tapping a memo pushes a detail screen that reads
<base>_transcription.vttoff disk and shows itscues with their timestamps. Read-only — there is no editor, and nothing this screen reads is ever
written back.
What it does
part left behind, not the
.partsfolder existing — the folder also survives when somebody hasput a file of their own into it, and keying on that would raise the missing-speech warning on
captures that are missing nothing.
The file has said so since M1-15; nothing read it until now.
died and has not been assembled; the file is there and will not open, with a message saying which
and what to do; or the memo is no longer in the folder at all.
The reader
The app has written WebVTT since M1-09 and only ever parsed it back for the crash tail. That parser
stays strict — it decides whether unconfirmed words may be published into a transcript, and it
refuses a whole file over one bad byte. The new one puts a file on screen, so it fails the other
way: it tolerates what a file that has been through the Files app looks like and shows every cue it
can, counting the blocks it cannot and putting that number on screen. The two do not merge, and the
reasoning is in
stash-docs: Two readers for one file format.Validated
make test— 275 tests, 25 suites, green.make lintclean.held in memory: a transcript reading back with its escapes decoded, the unconfirmed marker on a
recovered tail, and the missing-speech banner on a capture with a part left behind.
Not validated: the no-transcript, unassembled and unreadable presentations were never seen on
screen. macOS withdrew scripted clicking partway through the simulator pass, so those paths are
covered by
TranscriptReadingand its tests rather than by looking at them. There is no UI testtarget, so nothing automated covers the row tap or the destination either.
Codex
Four passes in
.agent/m2-01-transcript-detail/, no critical or high findings in any of them. Twowere real bugs: a cue whose identifier began with
STYLEwas dropped silently, and a crafted fileof newlines could exhaust memory when opened. Every disposition, including the six rejections and
their reasons, is in
SUMMARY.md.🤖 Generated with Claude Code