{
  "schemaVersion": 1,
  "variant": "react",
  "model": "linear-reflection-v1",
  "jasprVersion": null,
  "reactVersion": "19.3.1",
  "compiler": "TypeScript + esbuild, minified production React DOM, NODE_ENV=production",
  "renderer": {
    "bytes": 224735,
    "gzipBytes": 69702,
    "sha256": "a979fb9de8fb09cbbb201d66b054ca7b89b83880425647cb57231972992b552f"
  },
  "sharedHarnessSha256": "8d87d1963bc2f8166c2a6c913a7fcf648c1637ebcfc4bf02818d724a70191779",
  "measurement": {
    "fps": "1000 / mean(requestAnimationFrame timestamp intervals)",
    "version": "raf-and-commit-v2",
    "sceneFps": "completed renderer updates during measurement / measured seconds; not physically presented GPU frames",
    "domUpdate": "performance.now from update call until native write completion / Jaspr post-frame callback / React useLayoutEffect after commit",
    "inFlightPolicy": "At most one pending update, identical across all renderers. rAF continues to be sampled while busy.",
    "reactScheduling": "normal setState, no forced flushSync, no development StrictMode wrapper",
    "warmupSeconds": 2,
    "calibrationFrames": 80,
    "paintIncludedInDomUpdate": false,
    "droppedIntervals": "sum(max(0, round(interval / calibratedPeriod) - 1)); approximate, not physical presented frames"
  },
  "scene": {
    "prng": "LCG uint32: state=(state*1664525+1013904223) mod 2^32",
    "coordinates": "Float64, triangle-wave reflection, integer CSS px",
    "countLimit": 20000,
    "modes": [
      "transform",
      "mixed"
    ],
    "perParticleLayerPromotion": false
  },
  "limitations": [
    "DOM workload only; not a Canvas/WebGL benchmark.",
    "FPS capped by browser/display scheduling.",
    "Jaspr comparison includes Dart-generated JS and JS interop, not just an isolated reconciliation algorithm.",
    "React comparison includes its normal scheduler, host-element reconciliation and commit. React Compiler is not enabled.",
    "Shared telemetry updates at most four times per second.",
    "No universal speed winner is claimed."
  ]
}
