Capablio

Prompt 18A - Static export, demo artifact, and screenshot contract

Start after the shared shell exists. Re-run before Prompt 18 exits.

Updated

Prompt

Make offline pages, sales demos, handbook embeds, screenshots, and print/PDF outputs reliable generated artifacts rather than copied DOM snapshots.

1. Fix export packaging

  • Rewrite or bundle asset URLs relative to the export root.
  • Verify CSS, fonts, icons, images, and modules load in the documented serving mode.
  • Do not rely on hidden classes when styles fail.
  • Produce an explicit manifest with build version, source revision, generated time, persona, fixture, and route.

2. Export only the intended state

A static subject page must not expose every hidden panel at once. Generate a page for a selected route/state or render a sanitized, non-interactive representation.

Remove from sales/docs artifacts:

  • bearer-token controls
  • private-key import/backup material
  • internal verification and score-weight controls
  • raw IDs, JSON, sign-in URLs, and support-only actions
  • real customer or employee data

3. Screenshot assertions

Before capture, assert:

  • expected persona and tenant
  • expected page title
  • expected workflow state
  • required rows/items visible
  • no error banners unless the test is an error-state capture
  • styles loaded
  • no horizontal clipping at the target viewport

The current assignment-picker image would fail because the picker is not visible.

4. Visual regression

Maintain baselines for core components and representative pages across desktop and mobile. Review diffs intentionally; do not auto-approve large snapshots.

5. Print and PDF

  • Use dedicated print styles.
  • Preserve confidentiality/source/version labels.
  • Include accessible text equivalents for charts.
  • Avoid clipped tables and orphan headings.
  • Test offline and print artifacts without network access where that is the promised mode.

Acceptance gates

  • Exported subject, admin, and operator pages load with intended styling.
  • Hidden or privileged controls do not leak into static artifacts.
  • Every screenshot corresponds to the state named in its manifest.
  • Sales/demo artifacts use synthetic data and contain no functional production credentials or secrets.