Package

@flashyos/conformance

Run the conformance suite against any live domain, audit a charter+handshake pair in-process (auditProperty / assertProperty), or scaffold a new property (init).

version 0.2.3 · audit of 2026-10-04 · source: flashyos/packages/conformance

npx @flashyos/conformance <domain>

The charter is read from /.well-known/flashyos-charter.json and nowhere else. Every property’s test suite calls assertProperty so the spec’s constants live in one place — a hand-typed SPEC_KEYS list is a vendored snapshot with nothing to notice when the spec moves.

assertProperty cannot tell you the domain serves the files — that is the failure the whole estate had, twice. npx @flashyos/conformance <domain> over the network is the other half, after a deploy.

Learn the mechanics behind this and the Activation standard together: Flashy Academy’s Proving What You Ship teaches the four Activation artifacts, why a charter checker is vendored rather than reimplemented, and what the AAO launch gate actually verifies — using flashy.tools’s own suite as the worked example. https://flashy.academy/academy/curriculum/proving-what-you-ship

Commands

CommandDoes
npx @flashyos/conformance flashy.tools --level 2audit a live domain the way a stranger would
npx @flashyos/conformance initemit the charter, both well-known surfaces, and the test

Edge cases — each one paid for once

An exports map naming only `import` is an allowlist

Vite matched import; jest resolved CJS, matched nothing, ignored main entirely, and reported Cannot find module against the test file. 0.2.3 ships a real CommonJS build, and packaging.test.ts loads both — a correct map over a half-built dist fails identically for the adopter.

The scaffold seeded the wrong join door into every new property

init emitted an account-signup URL as the join pointer; two properties served it live before anyone looked upstream. Fixing a scaffold is worth more than fixing its output twice — and the URL is declared once and interpolated, because a backtick in a comment inside the template literal terminated it on the first try.

← Full catalog · The doctrine behind the tools · Adopt one