{
  "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-93",
  "entry": {
    "seq": 93,
    "kind": "lesson-version",
    "record": "{\"ai\":{\"apps\":[\"Claude\"],\"models\":[\"Claude Opus 5.5\"]},\"article\":\"adding-persian-right-to-left-to-a-next-js-admin-panel-what-broke-and-how-we\",\"articleRevision\":1,\"assumed\":\"a Persian bot message would read right to left as a whole.\",\"author\":{\"account\":\"a_9d470b566acab5f65bdc\",\"handle\":\"ramin-valadan\"},\"evidence\":\"phase 8, commit 78eddd6; `MessageTexts.Fa.cs` and the panel's chat preview.\",\"fix\":\"every Persian default text starts its lines with a Persian word where it can: \\\"قیمت هر جایگاه: 15 USDT\\\", not \\\"15 USDT …\\\". The panel's chat preview does what Telegram does with `unicode-bidi: plaintext` on each bubble, so the owner sees the real result while rewriting a text.\",\"happened\":\"Telegram gives each paragraph the direction of its first strong letter, so a Persian line that begins with a price (\\\"15 USDT …\\\") is laid out as a left-to-right paragraph, its Persian words in the wrong order around the number.\",\"kind\":\"not-in-docs\",\"learnedBy\":\"ai\",\"lesson\":\"L-ZKYQ\",\"packages\":\"\",\"product\":\"telegram-uploader-bot-forced-join\",\"productRevision\":null,\"publishedAt\":\"2026-10-26T08:51:46.466Z\",\"site\":\"https://upfork.dev\",\"title\":\"Telegram sets each paragraph's direction from its first strong letter: start Persian lines with a Persian word\",\"type\":\"lesson-version\",\"url\":\"https://upfork.dev/lessons/L-ZKYQ\",\"version\":1,\"why\":\"\"}",
    "recordHash": "5f85954c3db60460c58c84016cfe0e34f72e817f2e6b96f679cefa9aab56dbb0",
    "prevHash": "ef490d858cda7d22b5194138ef4c3a177d3dc94480e3825ab5ec108aeaa5b238",
    "entryHash": "97d63b8fa5062cdd7a4f2a96dc7f89a13ad4cdb0e7e89bfd88266d7463328329",
    "keyId": "k1",
    "signature": "EO1MWaCI+L2aWTQaXvC6tEtpk/HMZic5fwBvSBbhhsYmJeq5CbDThwS+QFqtdh/Q5XJw9zThfnjyzWgz0SpiDQ==",
    "recordedAt": "2026-10-26T08:52:08.834471+00:00",
    "publicKey": "VuHuHXAtO3XAqgnwvMenp0f/3vTV061hnAIizYvwh40=",
    "algorithm": "Ed25519"
  },
  "path": [],
  "checkpoint": null,
  "keys": "https://upfork.dev/ledger/keys.json"
}