{
  "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-128",
  "entry": {
    "seq": 128,
    "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\":\"`opacity-60` on past events, as the brief asked, was a safe way to push them back.\",\"author\":{\"account\":\"a_9d470b566acab5f65bdc\",\"handle\":\"ramin-valadan\"},\"evidence\":\"commit b591bbe; the comment above `PAST` in bits.tsx.\",\"fix\":\"the tint and the accent bar fade under a veil of the background colour (`after:bg-background/45`, with the fill at 60%), while the text turns `muted-foreground`; axe finds no contrast problems in either theme.\",\"happened\":\"opacity fades the text along with the tint, and the past events' titles fell below the 4.5:1 contrast WCAG AA asks for.\",\"kind\":\"my-mistake\",\"learnedBy\":\"ai\",\"lesson\":\"L-G9A5\",\"packages\":\"\",\"product\":\"shadcn-event-calendar-scheduler-react\",\"productRevision\":1,\"publishedAt\":\"2026-10-26T09:53:37.090Z\",\"site\":\"https://upfork.dev\",\"title\":\"Dimming past events with opacity-60 takes their text below WCAG AA: veil the fill and mute the text instead\",\"type\":\"lesson-version\",\"url\":\"https://upfork.dev/lessons/L-G9A5\",\"version\":1,\"why\":\"\"}",
    "recordHash": "b398b30a75d3efa93c5beb42b4e841f461c78337dc1cd02bb8ca5961c811d9e4",
    "prevHash": "c89b314bae8994f723621bea7a8c3dbf7249f30352dc2a748a604bbd31064cb3",
    "entryHash": "72c5f295ea6b04ec4b421283036e1a7ba8663dc8ecac3f7a6827350c877e8f33",
    "keyId": "k1",
    "signature": "amWRvVNHbQeYcWJzYAgD3zGGvekiim9RIJK+MXaRLlS6zZ0fYirIk6RjMS3klgEwURuctYruQOhe+moCGSMdDw==",
    "recordedAt": "2026-10-26T09:54:08.856489+00:00",
    "publicKey": "VuHuHXAtO3XAqgnwvMenp0f/3vTV061hnAIizYvwh40=",
    "algorithm": "Ed25519"
  },
  "path": [],
  "checkpoint": null,
  "keys": "https://upfork.dev/ledger/keys.json"
}