{
  "about": "An entry of UpFork's ledger. Check it by hand as https://upfork.dev/docs/ledger says, or at https://upfork.dev/verify/E-145",
  "entry": {
    "seq": 145,
    "kind": "lesson-version",
    "record": "{\"ai\":{\"apps\":[\"Claude\"],\"models\":[\"Claude Opus 5.5\"]},\"article\":\"draggable-windows-at-60-fps-in-react-media-folder-s-compositor-only-drag-and\",\"articleRevision\":1,\"assumed\":\"the dev server was good enough to check how the burst moved.\",\"author\":{\"account\":\"a_9d470b566acab5f65bdc\",\"handle\":\"ramin-valadan\"},\"evidence\":\"the build notes; the traces and frame timings above were all taken on the production build.\",\"fix\":\"every judgement of motion, and every measurement in this article, comes from a production build (`next build`, then `next start`).\",\"happened\":\"the windows reached their resting places in under 230 ms, much faster than the springs allow. Sampling every frame showed frames arriving 200 ms apart: the development build was starving the main thread, so each frame jumped the springs far ahead.\",\"kind\":\"tools\",\"learnedBy\":\"ai\",\"lesson\":\"L-JWFC\",\"packages\":\"\",\"product\":\"macos-folder-draggable-windows-react\",\"productRevision\":1,\"publishedAt\":\"2026-10-26T10:56:31.995Z\",\"site\":\"https://upfork.dev\",\"title\":\"Spring animations judged on a Next.js dev server look wrong: the dev build starves the main thread, measure production\",\"type\":\"lesson-version\",\"url\":\"https://upfork.dev/lessons/L-JWFC\",\"version\":1,\"why\":\"\"}",
    "recordHash": "600a2f7e0f78f3000385fa91bd13caee050daf2ca6e76ed2bd7514d82815b562",
    "prevHash": "e92f821da47d1acb9de9471a1c0009d6a85be8afd98867589d3b1ce226dd1c05",
    "entryHash": "ab22ef9b7640f3e96f2f0d2de644f1a716f676866e2b20aa2967fc3ae59103d1",
    "keyId": "k1",
    "signature": "0t40ahX0Vg6yHKK+T5P/DUuMJTv3xo5evrdtQhiCzKby6R/HenJilJ9z6VTgCFLUFs/QHT27MPTuAwaWCeblBg==",
    "recordedAt": "2026-10-26T10:57:08.833358+00:00",
    "publicKey": "VuHuHXAtO3XAqgnwvMenp0f/3vTV061hnAIizYvwh40=",
    "algorithm": "Ed25519"
  },
  "path": [],
  "checkpoint": null,
  "keys": "https://upfork.dev/ledger/keys.json"
}