Skip to content

video-interaction-mapper: Enforce readable screenshots - #82

Draft
ilin-figma wants to merge 1 commit into
figma:mainfrom
ilin-figma:ilin/video-interaction-mapper-image-quality
Draft

video-interaction-mapper: Enforce readable screenshots#82
ilin-figma wants to merge 1 commit into
figma:mainfrom
ilin-figma:ilin/video-interaction-mapper-image-quality

Conversation

@ilin-figma

Copy link
Copy Markdown
Contributor

Summary

  • Add a hard screenshot-readability policy to Video Interaction Mapper.
  • Preserve at least 1440 px width for landscape recordings and 900 px for portrait recordings, unless the source is smaller.
  • Refuse to generate a storyboard when assets are missing, undersized, over budget, or have not passed the readability gate.
  • Remove the degraded embedded-image fallback when upload_assets is unavailable.
  • Add regression coverage for minimum width, native-resolution preservation, and impossible upload budgets.

Why

The asset compressor could repeatedly reduce image dimensions to satisfy the upload-size budget, eventually producing screenshots as narrow as 480 px. The workflow also allowed a direct-embedding fallback that encouraged further downscaling. This made UI text in generated walkthroughs tiny and pixelated.

The workflow now lowers JPEG quality only to a defined floor and then fails clearly instead of sacrificing screenshot dimensions.

Impact

Generated interaction walkthroughs retain readable UI detail. If the source or upload constraints cannot produce a readable asset, the skill reports the blocker before modifying Figma rather than silently creating a degraded storyboard.

Validation

  • python3 -m unittest discover -s workflow-skills/video-interaction-mapper/tests -v
  • Python syntax compilation for all mapper scripts and tests
  • Real-video integration check: 22 before/after assets generated at 1440×815
  • Confirmed a forced 560 px landscape run is rejected

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