Reshot

Documentation use case

Automated Documentation Screenshots

Generate documentation screenshots from approved Journey checkpoints while preserving context, visual truth, refresh state, and publication provenance.

Automated Documentation Screenshots should be reproducible outputs of approved product evidence, not anonymous images captured on a schedule. The automation must know which Journey Version, declared context, checkpoint, source Observation, visual transformation, Review Decision, and Publication version each screenshot belongs to.

That lineage makes a screenshot refreshable without treating every pixel difference as content truth.

Choose instructional checkpoints

Capture states a reader must recognize to complete the outcome:

  • the correct entry point;
  • a decision or configuration state;
  • validation and error recovery;
  • a meaningful result;
  • a permission or plan boundary;
  • a responsive or localized state that changes instruction.

Avoid screenshots that add no explanatory information. A button surrounded by an entire application shell may be harder to understand than a decisive crop with the needed context.

Declare capture state

The screenshot must retain the actor, role, plan, data, flags, locale, timezone, theme, viewport, clock, dependency, privacy, and side-effect policy that produced it. Use deterministic data and approved internal fixture identities. Never use real customer data to create public content.

Only compare or reuse screenshots across compatible contexts. A French mobile dark-mode screenshot should not silently replace an English desktop baseline.

Prove the product outcome first

Run the complete Journey and retain functional evidence at the same checkpoint. A screenshot of a success message is not enough if the server-side consequence failed, duplicated, or targeted the wrong account.

Keep state, target, console, network, accessibility, and policy evidence where relevant. This allows a reviewer to distinguish an intended product change from incorrect setup, nondeterministic rendering, a broken target, or a privacy violation.

Produce a Rendition

The source Observation preserves product truth. The documentation screenshot is a Rendition with its own identity and version. Its transformation record can include:

  • crop and scale;
  • annotation or highlight;
  • redaction or mask policy;
  • caption and alternative text;
  • output format and dimensions;
  • template or renderer version;
  • source Observation hash;
  • approving Decision.

Edits belong in the Rendition layer. Do not overwrite the source evidence to make the screenshot easier to market or explain.

Review before delivery

The reviewer should verify:

  • the checkpoint depicts the current intended product state;
  • the crop retains enough context;
  • annotation does not cover important information;
  • sensitive data is absent or irreversibly redacted;
  • alternative text describes the instructional content;
  • surrounding procedure matches the current Journey Version;
  • the output is approved for the intended public or private Channel.

The Decision points to exact evidence and Rendition version. A blanket approval of a folder is too weak for release-critical content.

Publish with a receipt

A Publication delivers the approved Rendition through a channel such as a documentation site, help center, repository, or supported media destination. Retain the stable URL, immutable version URL where available, content hash, delivery status, and receipt.

The receipt proves what was delivered. It does not prove that every downstream cache or copied third-party document updated; those boundaries should remain explicit.

Refresh from material change

When the Journey changes, evaluate whether the checkpoint, context, or explanation changed. Choose one action:

  • keep: current output still matches approved evidence;
  • refresh: produce a new Rendition from the new Observation;
  • merge: consolidate duplicate guidance;
  • redirect: preserve intent at a stronger canonical page;
  • block: prevent stale or unsafe content from remaining public;
  • retire: remove an obsolete outcome and preserve the historical record.

Do not bump lastUpdated because a scheduled agent opened the file. Require a new content hash and recorded reason.

CI workflow

An implementation can:

  1. detect a material Journey Version change;
  2. identify affected documentation checkpoints;
  3. execute representative contexts in the pinned runner;
  4. collect functional, visual, and accessibility evidence;
  5. fail closed on privacy or policy violations;
  6. route changes to Review;
  7. generate approved screenshot Renditions;
  8. open a content change or publish through an authorized Channel;
  9. store delivery receipts;
  10. notify IndexNow or refresh the sitemap only after the canonical page changes materially.

Avoid three automation traps

First, recapturing every screenshot on every commit creates noise and expensive review. Trigger from affected Journeys and material change.

Second, automatically accepting new baselines confuses successful capture with approved product intent.

Third, publishing from a private Run risks leaking credentials, account identifiers, and customer data. Public Renditions require a separate sanitized policy boundary.

Verify the public result

After delivery, request the stable public URL without an authenticated application session. Confirm the expected content hash or immutable version reference where the Channel supports it. Check the image dimensions, format, compression, alternative text, cache behavior, and surrounding instructions. A successful upload API response does not prove the page serves the approved asset.

Record the verification time and receipt. If a CDN or downstream CMS transforms the image, preserve that delivered derivative as part of the Publication consequence instead of assuming it matches the uploaded bytes.

Use Screenshots as Code for repository design, Documentation Drift for freshness decisions, and the Visual Test Readiness Checker before trusting screenshot comparisons.

Start with one release-critical Journey.

Define the outcome, declare its state, run it, inspect the evidence, and record the Decision before expanding coverage.