This page is instrumented by the loader-stub alone: one inline script (pasted verbatim from the README's adoption section) plus one init line. There is no build tooling, no second file, no pipeline — the page itself is the whole configuration, exactly as a prototype author adopts the SDK.
internal) and the environment label
derived from the origin the bundle itself was served from. This page
pins the nonprod key, so events always land in the nonprod
project — served from the production plane, the derived label reads
prod while the key stays nonprod: exactly the
key↔environment mismatch v1 inspects in the blackbar and never
enforces.feedback_submitted telemetry event with title, body and
page context (it never auto-files anywhere; the bridge to the ideas
board is a human act). Once the board URL exists (#14), a
feedback.url inline option adds the
“Suggest & vote on ideas →” link.?__instrumentation_dev=1 to this page's URL — in any
environment, production included — and a full-width status strip docks
to the bottom: capture state (including exactly why capture is off, the
localhost gate included), the derived environment label and the active
keys, and the manifest-id check marks. It stays for the session and
persists nothing.Capture is off by default on localhost/127.x
(developer noise never lands in a billed project). Served from the plane or
any non-local origin, capture rides. Open the blackbar with
?__instrumentation_dev=1 to see which state applies and why —
that is its purpose: silent non-capture never costs an afternoon.
Paths: the npm adoption of the same contract lives in
demo/npm/ (tarball-verified, per
docs/agents/package-consumption.md); the repo-side overview is
demo/README.md.