Skip to content

Integrate contextual WebM help videos and recording pipeline - #113

Open
Alexander-Mitrofanov wants to merge 6 commits into
mainfrom
codex/webm-demos
Open

Alexander-Mitrofanov wants to merge 6 commits into
mainfrom
codex/webm-demos

Conversation

@Alexander-Mitrofanov

@Alexander-Mitrofanov Alexander-Mitrofanov commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

vaRRI now ships a reviewed set of 12 contextual WebM demonstrations for complex viewer workflows. The clips are integrated into the composed documentation and the canvas question-mark help for Select, rectangle selection, Move, Rotate, Release, Reset, FASTA input, probability profiles, text annotations, JSON sessions, PNG export, and paired-region highlights.

Video help uses progressive disclosure: focus or hover reveals a poster teaser, while click, Enter, or touch explicitly expands a native player. Sources and captions attach lazily, playback never autostarts or loops, only one clip plays at a time, dialog close resets playback, and every clip includes English captions, a written description, a step-by-step transcript, and a download link. Previews are Escape-dismissible and kept inside the viewport/dialog, including short windows; controls have task-specific accessible names.

Recording and publication

  • Expands the Playwright/FFmpeg recorder from 3 to 12 behavior-asserting scenes with canvas, full-UI, dialog, and export-dialog stage profiles.
  • Adds real pointer, drag, fill, select, wheel, and key capture helpers.
  • Adds validated publication into doc/demos/ after manual review; publishing requires a clean, revision-matched recording. Source provenance is checked before and after recording, and Git failures fail closed.
  • Publishes only WebM, poster, and VTT assets plus a checksummed catalog. QA review frames remain ignored.
  • Verifies original recording hashes before promotion and the staged catalog again after copying; rejects changed bytes, missing/duplicate scenes, invalid assets, caption/transcript mismatches, and stale metadata.
  • Adds catalog/package integrity checks to CI and documents the recording, review, and publication workflow. Automated validation does not replace human review.

Council review and fixes

Three reviewers audited the player/accessibility, documentation/scene semantics, and recording/publication pipeline, then cross-reviewed each other's findings and fixes.

  • Fixed publication accepting altered recordings, incomplete catalogs, and unverifiable source state; added 15 regression tests.
  • Fixed clipped previews, Escape dismissal, task-specific accessible names, and keyboard focus hidden behind the dialog footer.
  • Corrected the documented rotation gesture, required scene placements/captions, and the probability demo's Start 1 prerequisite.
  • Added persistent browser regressions for delayed posters, placement, real playback/captions, single-active playback, collapse, tooltip bounds, and short-height keyboard access.

Independent media QA

  • Every clip was generated and reviewed in a separate recorder invocation before integration.
  • Caption-readability findings were corrected and all affected clips were independently rerun.
  • After integration, separate reviewers audited video behavior and written explanations.
  • Final catalog recheck passed 12/12 clips in Chromium and Firefox: 960x640 decode, duration/cue match, posters, MIME types, lazy loading, mouse/keyboard/touch access, one-active playback, dialog reset, responsive layout, and reduced motion.
  • Regenerated all clips from clean source e011a9fae3812193f1e29eac20941eadb64610d6; independent integrity and explanation audits passed 12/12.
  • Final catalog: 37 production files, no orphans or QA artifacts, 3064.6 KiB total.

Validation

Both GitHub checks passed on final commit b26fc208d9ece788a7a9df1cc135e3b8662b8ee0: Tests and Standalone core bundle. The council has no unresolved findings.

  • npm run demos — 12 clips recorded and fully decoded with VP8.
  • npm run demos:check-published — 12 clips and all hashes/bytes/assets passed.
  • npm run test:architecture — passed.
  • npm run test:ci — 47 suites / 552 tests passed.
  • npm run test:package — packed/installed assets and entries passed.
  • npm run test:browser — native/core bundle and export contracts passed.
  • npm run test:ui — Chromium passed.
  • npm run test:ui:firefox — Firefox passed.
  • npm run test:pages — composed help, lazy videos, anchors, images, and downloads passed.
  • npm run test:visual — five fixtures passed; maximum changed-pixel ratio 0.0253% (limit 0.2%); no baseline updates.

@Alexander-Mitrofanov Alexander-Mitrofanov changed the title Add an extensible WebM recording pipeline Integrate contextual WebM help videos and recording pipeline Oct 28, 2026

This branch has not been deployed

No deployments
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