{
  "spit_at": "20260810-150408",
  "files": {
    "measure.js": "/* SPV plug \u00b7 JS \u00b7 pairs with measure.dom.html */\n(function (global) {\n  const NAME = \"measure.js\";\n  function mount(root, api) {\n    const fieldEl = root.querySelector(\"#spv-field\");\n    const freeEl = root.querySelector(\"#spv-free\");\n    const deltaEl = root.querySelector(\"#spv-delta\");\n    let prev = 1;\n    let frame = 0;\n    let raf = 0;\n    function bgf(a, b) {\n      return (a - b) | 1;\n    }\n    function spv(a, b, c) {\n      return (a ^ b ^ c) | 1;\n    }\n    function loop(ts) {\n      frame++;\n      const t = Math.floor(ts);\n      const field = bgf(550, 55 + (frame % 40));\n      const free = spv(t, frame, field) | 1;\n      const d = (free ^ prev) | 0;\n      prev = free;\n      if (fieldEl) fieldEl.textContent = String(field);\n      if (freeEl) freeEl.textContent = \"0x\" + (free >>> 0).toString(16).toUpperCase();\n      if (deltaEl) deltaEl.textContent = String(d);\n      if (api && api.onSample) api.onSample({ field, free, delta: d, frame });\n      raf = requestAnimationFrame(loop);\n    }\n    raf = requestAnimationFrame(loop);\n    return function unmount() {\n      cancelAnimationFrame(raf);\n    };\n  }\n  global.BGRTX_SPV_PLUGS = global.BGRTX_SPV_PLUGS || {};\n  global.BGRTX_SPV_PLUGS[NAME] = { name: NAME, kind: \"js\", mount };\n})(typeof window !== \"undefined\" ? window : globalThis);\n",
    "manifest.json": "{\n  \"active\": {\n    \"id\": \"measure\",\n    \"js\": \"measure.js\",\n    \"dom\": \"measure.dom.html\",\n    \"title\": \"BGF measure readout\"\n  },\n  \"library\": \"spvs\",\n  \"hotswap\": true\n}",
    "measure.dom.html": "<!-- SPV plug \u00b7 DOM \u00b7 BGF measure readout shell -->\n<div class=\"spv-dom measure-panel\" data-plug=\"measure.dom\">\n  <div class=\"spv-title\">BGF \u00b7 measure panel</div>\n  <div class=\"spv-row\"><span>field</span><code id=\"spv-field\">\u2014</code></div>\n  <div class=\"spv-row\"><span>free</span><code id=\"spv-free\">\u2014</code></div>\n  <div class=\"spv-row\"><span>\u0394</span><code id=\"spv-delta\">\u2014</code></div>\n  <p class=\"spv-note\">DOM only displays \u00b7 BGF iron stays in asm / cover</p>\n</div>\n"
  }
}