mpl/js/README.md
2026-07-09 18:13:04 -04:00

20 lines
915 B
Markdown

# js/mpl.js — the browser interpreter
`mpl.js` is the M0-core interpreter that runs at
[mpl.codes](https://mpl.codes). This file is the deployed artifact: the
copy in this repo, the copy baked into the site image, and the file served
at `https://mpl.codes/js/mpl.js` are byte-identical (same sha256).
The site repo (`developtheweb/mpl_codes`) does not carry its own copy; its
image build fetches this file pinned to an exact commit SHA and verifies it
against a pinned sha256 checksum. A mismatch fails the site build.
Rules for changing this file:
- Never edit it in a commit that does not also state the behavioral change
in `DECISIONS.md`.
- Keep it dependency-free and transformation-free — no build step may
minify it, wrap it, or inject banners, because that would break byte
identity with the deployed file.
- Run `node --test "js/test/*.test.mjs"` before committing; CI runs the
same suite.