Skip to content

perf(studio): stabilize virtualized keyframe retiming#2642

Draft
miguel-heygen wants to merge 1 commit into
codex/studio-timeline-gesture-overlayfrom
codex/studio-timeline-keyframe-retime
Draft

perf(studio): stabilize virtualized keyframe retiming#2642
miguel-heygen wants to merge 1 commit into
codex/studio-timeline-gesture-overlayfrom
codex/studio-timeline-keyframe-retime

Conversation

@miguel-heygen

@miguel-heygen miguel-heygen commented Jul 19, 2026

Copy link
Copy Markdown
Collaborator

What

stabilize virtualized keyframe retiming.

Why

Preserve the full editing gesture surface after rows and clips become virtualized.

How

Moves this gesture onto the virtualized timeline contract with stable hit targets and exactly-once commit behavior.

Key files in this layer:

  • packages/studio/src/player/components/TimelineClipDiamonds.test.tsx
  • packages/studio/src/player/components/TimelineClipDiamonds.tsx
  • packages/studio/src/player/components/useTimelineKeyframeHandlers.test.tsx
  • packages/studio/src/player/components/useTimelineKeyframeHandlers.ts

Test plan

Validated on the complete stacked tip with formatting, lint, Studio typecheck, the full production build, and the Studio test suite (2,946 passing; 18 todo). Focused timeline/thumbnail tests and browser QA cover the affected interaction path.

  • Unit tests added/updated
  • Manual testing performed
  • Documentation updated (not applicable for this implementation layer)

Post-Deploy Monitoring & Validation

  • Owner: Studio team
  • Window: First 24 hours after rollout
  • Signals: Watch failed commits, duplicate mutations, drag/drop regressions, and Studio console errors.
  • Rollback trigger: Reproducible data loss, broken timeline editing/navigation, or sustained performance regression; revert this stack layer and its descendants.

This was referenced Jul 19, 2026

miguel-heygen commented Jul 19, 2026

Copy link
Copy Markdown
Collaborator Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant