Skip to content

Watching notes: preserve capture timestamps and drafts across async saves #1256

Description

@evan188199-tech

Watching notes need reliable timestamp capture and visible save/retry feedback.

Reproduction: begin typing a note at 00:10, let the player advance to 00:50, then save. The existing implementation submits 00:50, so the saved quote and timestamp refer to a different moment. Pending saves also allow editing a draft that gets cleared on success, and a late request can be applied after navigating away and back to the same material.

Acceptance:

  • Anchor a new note at the first typed character and retain that timestamp across playback and panel changes.
  • Keep drafts after failures, provide visible success/error feedback and list retry, and prevent duplicate pending submissions.
  • Ignore stale saves when materials change, including A → B → A; prevent list reloads overwriting mutations.
  • Preserve edit/delete workflows, and keep failed deletion errors visible inside the confirmation dialog.
  • Cover save, retry, timestamps, cross-material isolation, edit/delete and desktop/mobile regression flows.

Related: #1255, #1248, #1239 and the merged timestamped notes contribution #1142. A downstream integration also has a bookmark composer rendered above a scrolled transcript and an inaccessible Marks tab; that integration-specific repair is tracked separately in the fork rather than adding unavailable mark APIs to the upstream patch.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions