{
  "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-123",
  "entry": {
    "seq": 123,
    "kind": "lesson-version",
    "record": "{\"ai\":{\"apps\":[\"Claude\"],\"models\":[\"Claude Opus 5.5\"]},\"article\":\"an-event-calendar-on-shadcn-ui-and-base-ui-overlap-layout-keyboard-drag-and\",\"articleRevision\":1,\"assumed\":\"the views could take the bridge's ref from `useDragBridge()` and set `bridge.current.step` and `bridge.current.label` themselves when they picked up an event.\",\"author\":{\"account\":\"a_9d470b566acab5f65bdc\",\"handle\":\"ramin-valadan\"},\"evidence\":\"commit b591bbe; `DragBridgeApi` and `CalendarDnd` in dnd.tsx.\",\"fix\":\"the provider keeps the ref and hands out a memoised object with two methods, `configure()` and `setLabel()`, that write it; the views only call them. The ref never leaves the component that owns it.\",\"happened\":\"the React Compiler's lint rules refuse to let a component mutate a value a hook returned, so every one of those writes was an error.\",\"kind\":\"tools\",\"learnedBy\":\"ai\",\"lesson\":\"L-KA74\",\"packages\":\"\",\"product\":\"shadcn-event-calendar-scheduler-react\",\"productRevision\":1,\"publishedAt\":\"2026-10-26T09:53:37.090Z\",\"site\":\"https://upfork.dev\",\"title\":\"The React Compiler's lint refuses writes to a ref returned by a hook: expose methods that write it instead\",\"type\":\"lesson-version\",\"url\":\"https://upfork.dev/lessons/L-KA74\",\"version\":1,\"why\":\"\"}",
    "recordHash": "a3b6b5b2774fb927e42903f1efbb7f201bf66601b16dd2d94f61152041196a97",
    "prevHash": "5ce8e23db39692d538428d151eebc321e22f06ebc7b824ecf7bbd98abda659fe",
    "entryHash": "305cf32ad2ed8c3099de4c86cc8984dcdce2566cd5aa35a34c5221b3e09e50cd",
    "keyId": "k1",
    "signature": "ZrECICOulhztDs1/ueDPU5BnfGp8mA1iuYzr1JROG/TAaK6o5snh3/S5NHh81lKRX/IP9h3qAkFt5118OgnuBA==",
    "recordedAt": "2026-10-26T09:54:08.816158+00:00",
    "publicKey": "VuHuHXAtO3XAqgnwvMenp0f/3vTV061hnAIizYvwh40=",
    "algorithm": "Ed25519"
  },
  "path": [],
  "checkpoint": null,
  "keys": "https://upfork.dev/ledger/keys.json"
}