Lispex Images

A Lispex Image is a canonical, machine-readable picture of exact .lspx source bytes. Native and npm provide file commands, while the local browser Playground can create, open, navigate, recover, download, and explicitly run the same images.

Working method

  • Create one page with lispex image encode --source rule.lspx --out rule.lspx.png. Sources that need several pages require the canonical .lspx-images.zip destination; a mismatched suffix fails before output.
  • Inspect format/profile identifiers, page count, exact-source identity, and every integrity commitment with lispex image inspect --image rule.lspx.png; inspection never prints the source.
  • Recover byte-for-byte source with lispex image decode --image rule.lspx.png --out recovered.lspx. Existing outputs are never overwritten.
  • Run only after full decoding, integrity checks, parity checks, and canonical regeneration equality with lispex run --image rule.lspx.png.
  • Line endings, comments, spacing, and Unicode bytes survive the round trip exactly; the image represents source bytes, not only parsed forms.
  • In the Playground, Create image uses the editor bytes, Open image proves a local PNG/ZIP before preview, page controls extract only proved PNG pages, Recover source changes the editor without running it, and Run image remains a separate explicit action.
  • After complete canonical proof, use the image as Vouch source context with --source-image. Image integrity alone is not provenance, trust, authentication, request binding, current execution agreement, or a gate grant.

Exact image commands

1. Encode exact source

OUTPUT
lispex image encode --source refund-window.lspx --out refund-window.lspx.png

2. Inspect public commitments

OUTPUT
lispex image inspect --image refund-window.lspx.png

3. Recover the exact bytes

OUTPUT
lispex image decode --image refund-window.lspx.png --out recovered.lspx

4. Prove and run explicitly

OUTPUT
lispex run --image refund-window.lspx.png

Boundaries

  • Screenshots, resizing, colour conversion, metadata injection, recompression, page removal, and page reordering are rejected. This is an exact digital interchange format, not OCR or a camera-readable code.
  • An image is source-equivalent public data. It provides no secrecy, signature, provenance, freshness, trust, decision correctness, or execution authority.
  • Native and npm expose the same file commands. Public WASM exposes the same Rust image operations for embedding, and the Playground wraps them in a local file UI. None of these image surfaces adds Vouch authority.
  • After full canonical proof, Native accepts --source-image throughout Vouch identity, policy, issue, inspect, authentication, re-execution, and gate. npm accepts it for identity, policy, and authenticated verification only. The separately supplied input and the existing request-bound authority chain remain mandatory.