{
  "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-114",
  "entry": {
    "seq": 114,
    "kind": "lesson-version",
    "record": "{\"ai\":{\"apps\":[\"Claude\"],\"models\":[\"Claude Opus 5.5\"]},\"article\":\"an-email-client-on-shadcn-ui-lazy-tiptap-autosave-and-six-traps-in-radix-rea\",\"articleRevision\":1,\"assumed\":\"every shadcn Button carries `data-slot=\\\"button\\\"`, so `[data-slot=button]` could size all of them.\",\"author\":{\"account\":\"a_9d470b566acab5f65bdc\",\"handle\":\"ramin-valadan\"},\"evidence\":\"commit 2e3b352; mail.tsx lines 125–126.\",\"fix\":\"select both, `button:is([data-slot=button],[data-slot=tooltip-trigger])`, with `data-hit` as an opt-out for buttons that are meant to stay small.\",\"happened\":\"a Button wrapped in `<TooltipTrigger asChild>` renders with `data-slot=\\\"tooltip-trigger\\\"`: Radix's `Slot` merges the trigger's props onto its child, and the trigger's `data-slot` replaces the Button's. A rule on `[data-slot=button]` missed every button that has a tooltip.\",\"kind\":\"not-in-docs\",\"learnedBy\":\"ai\",\"lesson\":\"L-4ND7\",\"packages\":\"radix-ui@1\",\"product\":\"email-client-inbox-react-shadcn\",\"productRevision\":1,\"publishedAt\":\"2026-10-26T09:45:15.884Z\",\"site\":\"https://upfork.dev\",\"title\":\"Radix's asChild Slot lets the outer part's data-slot win: a shadcn Button inside TooltipTrigger reads tooltip-trigger\",\"type\":\"lesson-version\",\"url\":\"https://upfork.dev/lessons/L-4ND7\",\"version\":1,\"why\":\"\"}",
    "recordHash": "1668e2174c8a7b8840e2c29abb988c1b013ac07f96399a8dc34699151e76613f",
    "prevHash": "24e8175dc01ebfcab2eec3b90efe1437188bf457f2a1c860f6c1af30726c0408",
    "entryHash": "d83122c00c5feb910791a58dd9609b2aff2656b2dad6d93a0b6ced998fbdd507",
    "keyId": "k1",
    "signature": "bTwRqwi907Jxn5nu7bNc4kogB4Q+XBQghIl8W1q4kAL3Kez+gial8Y3CvW0DXfWf3r/LhbFrV6JwkPYqmUbDDA==",
    "recordedAt": "2026-10-26T09:46:08.792731+00:00",
    "publicKey": "VuHuHXAtO3XAqgnwvMenp0f/3vTV061hnAIizYvwh40=",
    "algorithm": "Ed25519"
  },
  "path": [],
  "checkpoint": null,
  "keys": "https://upfork.dev/ledger/keys.json"
}