Use this skill when reviewing or updating tutorial screenshots.
When working with tutorial screenshot review or updates, consult ai/docs/screenshot-update-workflow.md.
ImageComparer location: pwiz_tools/Skyline/Executables/DevTools/ImageComparer/
Diff images saved to: ai\.tmp\{Tutorial}-{Locale}-s-{Number}-diff-{PixelCount}px.png
Key shortcuts: Ctrl+S save diff, Ctrl+Alt+C copy diff, F11 next diff, F12 revert
Decisions: Accept (valid change), Revert (restore original), Fix (BUG-XXX)
When developer says things like:
s-06 has an issue. look at the diff โ Read diff image from ai.tmp, analyze changeDIA s-10 accepted โ Update TODO, mark as accepteds-06, s-08 BUG-001 โ Document bug affecting multiple screenshotsCheck ai\.tmp\ for recently saved diff images matching the screenshot pattern and analyze them.
Cover shots (cover.png) are composite images generated by TakeCoverShot() in tutorial tests.
Key pattern: Tests override ProcessCoverShot(Bitmap bmp) to overlay images. The base calls bmp.CleanupBorder(). On Win11, CleanupBorder() returns a new Bitmap โ overrides MUST capture and return base.ProcessCoverShot(bmp), not the original bmp.
Tests with overrides: DdaTutorialTest, DiaUmpireTutorialTest, DiaSearchTutorialTest, AcquisitionComparisonTutorialTest, ExistingExperimentsTutorialTest.
Key files: TestUtil/TestFunctional.cs (ProcessCoverShot, TakeCoverShot), TestUtil/ScreenshotManager.cs (TakeShot).
See ai/docs/screenshot-update-workflow.md ยง "Cover Shot System" for full details.
For consistent screenshots on Windows 11:
ScreenshotProcessingExtensions.CleanupBorder11() redraws rounded corners on a white background. Uses GraphicsPath.AddArc with 8px radius (forms) or 4px (tool windows). A CONSIDER comment in the code notes that Gdi32.CreateRoundRectRgn() exists as a potential alternative but produced no meaningful visual difference when tested.