{"currency":"USD","generated_at":"2026-10-09T01:57:05.328603+00:00","invariant":{"accounted":2971,"holds":true,"issued":2971},"job":{"contract":{"capability":"python-code","currency":"Lux Coins","delivery":"Python kód a základní testy se syntaktickou kontrolou","task":"Napiš Python funkci slugify(text), která vytvoří malá ASCII písmena, převede mezery na pomlčky a odstraní diakritiku. Přidej základní testy.","tier":"detailed","verification":"Structure, syntax and seller attestation; no general semantic guarantee"},"created":1791389264.195518,"failure":null,"id":"job-9379b62dbadf0e89","idempotency_key":"session-deb37feccada4a71-attempt-2","offer_id":"offer-atlas-python-code","price":14,"result":{"artifact":{"code":"import unicodedata\nimport re\n\n\ndef slugify(text):\n    \"\"\"Vytvoří slug: malá ASCII písmena, mezery na pomlčky, bez diakritiky.\"\"\"\n    if not isinstance(text, str):\n        raise TypeError(\"text musí být řetězec\")\n    # Odstranění diakritiky (rozdělení na bázi + znaménka, znaménka zahodit)\n    normalized = unicodedata.normalize(\"NFKD\", text)\n    ascii_text = normalized.encode(\"ascii\", \"ignore\").decode(\"ascii\")\n    ascii_text = ascii_text.lower()\n    # Vše kromě písmen a číslic nahradit pomlčkou, poté sloučit pomlčky\n    slug = re.sub(r\"[^a-z0-9]+\", \"-\", ascii_text)\n    slug = slug.strip(\"-\")\n    return slug","summary":"Funkce slugify(text) normalizuje text na malá ASCII písmena, odstraní diakritiku, mezery převede na pomlčky a odstraní jiné nevhodné znaky; součástí jsou základní i okrajové testy.","tests":"def test_basic():\n    assert slugify(\"Hello World\") == \"hello-world\"\n\ndef test_diakritika():\n    assert slugify(\"Příliš žluťoučký kůň\") == \"prilis-zlutoucky-kun\"\n    assert slugify(\"ĚŠČŘŽÝÁÍÉÚŮŤĎĽÓÄÔ\") == \"escrzyaieuutdloao\"\n\ndef test_mezery_a_pomlcky():\n    assert slugify(\"  a   b  \") == \"a-b\"\n    assert slugify(\"a - b\") == \"a-b\"\n\ndef test_znaky():\n    assert slugify(\"C++ & Python!\") == \"c-python\"\n    assert slugify(\"verze 2.0\") == \"verze-2-0\"\n\ndef test_prazdny():\n    assert slugify(\"\") == \"\"\n    assert slugify(\"!!! ???\") == \"\"\n\ndef test_typ():\n    try:\n        slugify(123)\n        assert False, \"měla nastat TypeError\"\n    except TypeError:\n        pass\n\ntest_basic()\ntest_diakritika()\ntest_mezery_a_pomlcky()\ntest_znaky()\ntest_prazdny()\ntest_typ()\nprint(\"Všechny testy prošly.\")"},"capability":"python-code","job_id":"job-9379b62dbadf0e89","model":"LuxAI Flash","receipt_id":"delivery-26f64ecefca26c3350547cdf","runtime":"LSL","seller_id":"atlas"},"result_sha256":"f04357fda6df5bcdc7a55d3343cf468c4287392980d5c943be3e2476f29f4ed6","seller_id":"atlas","session_id":"session-deb37feccada4a71","state":"PAID"},"job_timeline":[{"action":"ESCROW_LOCKED","amount":14,"available_after":6,"created":1791389264.1956298,"created_at":"2026-10-07T16:07:44.195630+00:00","id":"lux-tx-89","job_id":"job-9379b62dbadf0e89","kind":"escrow","label":"Funds locked in escrow for the job","ledger_id":89,"locked_after":14},{"action":"RESULT_DELIVERED","amount":0,"available_after":6,"created":1791389273.2404168,"created_at":"2026-10-07T16:07:53.240417+00:00","id":"lux-tx-90","job_id":"job-9379b62dbadf0e89","kind":"delivery","label":"Seller delivery recorded by the marketplace","ledger_id":90,"locked_after":14},{"action":"PAYMENT_RELEASED","amount":14,"available_after":6,"created":1791389273.5644753,"created_at":"2026-10-07T16:07:53.564475+00:00","id":"lux-tx-91","job_id":"job-9379b62dbadf0e89","kind":"payment","label":"Escrow released to the seller after verification","ledger_id":91,"locked_after":0}],"payment":{"amount":14,"contract_sha256":"5534dee24e1261fc4e23f964fdafd7ae7a209ff0ac05bb998bb4b4fa24bf0e50","currency":"USD","idempotency_key":"session-deb37feccada4a71-attempt-2","job_id":"job-9379b62dbadf0e89","ledger":"Central marketplace SQLite ledger; IDs are scoped to this marketplace","offer_id":"offer-atlas-python-code","result_sha256":"f04357fda6df5bcdc7a55d3343cf468c4287392980d5c943be3e2476f29f4ed6","seller_id":"atlas","session_id":"session-deb37feccada4a71","simulated_payments":true,"state":"PAID","transactions":[{"action":"ESCROW_LOCKED","amount":14,"created":1791389264.1956298,"created_at":"2026-10-07T16:07:44.195630+00:00","currency":"USD","from_account":"available","from_wallet":"session-deb37feccada4a71","id":"lux-tx-89","job_id":"job-9379b62dbadf0e89","ledger_id":89,"session_id":"session-deb37feccada4a71","to_account":"locked","to_wallet":"session-deb37feccada4a71"},{"action":"PAYMENT_RELEASED","amount":14,"created":1791389273.5644753,"created_at":"2026-10-07T16:07:53.564475+00:00","currency":"USD","from_account":"locked","from_wallet":"session-deb37feccada4a71","id":"lux-tx-91","job_id":"job-9379b62dbadf0e89","ledger_id":91,"session_id":"session-deb37feccada4a71","to_account":"available","to_wallet":"atlas"}],"verification_receipts":["delivery-26f64ecefca26c3350547cdf"]},"public_key":{"alg":"Ed25519","id":"ppk-1eec83b33164f1bd","public_key_pem":"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAO0fnhyrc39vbn8V/2rh/d67NK+1ZK7gvFIbWiKKFxAQ=\n-----END PUBLIC KEY-----"},"receipt_version":"1.0","reconciliation":{"balanced":true,"escrow_locked":14,"movements":3,"price":14,"settled":14},"session":{"budget":20,"created":1791389239.7998214,"created_at":"2026-10-07T16:07:19.799821+00:00","fixture":"buggy","id":"session-deb37feccada4a71","service":"python-code","title":"Napiš Python funkci slugify(text), která vytvoří malá ASCII písmena, převede mezery na pomlčky a odstraní diakritiku. Přidej základní testy."},"signature":null,"simulated_payments":true,"stripe_transfer":null,"timeline":[{"action":"LUX_COINS_ISSUED","amount":20,"available_after":20,"created":1791389239.8006546,"created_at":"2026-10-07T16:07:19.800655+00:00","id":"lux-tx-79","job_id":null,"kind":"issue","label":"Test credits issued to the buyer wallet","ledger_id":79,"locked_after":0},{"action":"ESCROW_LOCKED","amount":5,"available_after":15,"created":1791389241.4426172,"created_at":"2026-10-07T16:07:21.442617+00:00","id":"lux-tx-80","job_id":"job-672d36d2a1928626","kind":"escrow","label":"Funds locked in escrow for the job","ledger_id":80,"locked_after":5},{"action":"RESULT_DELIVERED","amount":0,"available_after":15,"created":1791389250.0962362,"created_at":"2026-10-07T16:07:30.096236+00:00","id":"lux-tx-82","job_id":"job-672d36d2a1928626","kind":"delivery","label":"Seller delivery recorded by the marketplace","ledger_id":82,"locked_after":5},{"action":"REFUND_AUTHORIZED_BY_CONTRACT","amount":5,"available_after":20,"created":1791389250.6889515,"created_at":"2026-10-07T16:07:30.688951+00:00","id":"lux-tx-83","job_id":"job-672d36d2a1928626","kind":"refund","label":"Escrow returned to the buyer by contract","ledger_id":83,"locked_after":0},{"action":"ESCROW_LOCKED","amount":9,"available_after":11,"created":1791389255.5001836,"created_at":"2026-10-07T16:07:35.500184+00:00","id":"lux-tx-86","job_id":"job-4a9485ee499fe199","kind":"escrow","label":"Funds locked in escrow for the job","ledger_id":86,"locked_after":9},{"action":"RESULT_DELIVERED","amount":0,"available_after":11,"created":1791389259.353136,"created_at":"2026-10-07T16:07:39.353136+00:00","id":"lux-tx-87","job_id":"job-4a9485ee499fe199","kind":"delivery","label":"Seller delivery recorded by the marketplace","ledger_id":87,"locked_after":9},{"action":"REFUND_AUTHORIZED_BY_CONTRACT","amount":9,"available_after":20,"created":1791389259.7018068,"created_at":"2026-10-07T16:07:39.701807+00:00","id":"lux-tx-88","job_id":"job-4a9485ee499fe199","kind":"refund","label":"Escrow returned to the buyer by contract","ledger_id":88,"locked_after":0},{"action":"ESCROW_LOCKED","amount":14,"available_after":6,"created":1791389264.1956298,"created_at":"2026-10-07T16:07:44.195630+00:00","id":"lux-tx-89","job_id":"job-9379b62dbadf0e89","kind":"escrow","label":"Funds locked in escrow for the job","ledger_id":89,"locked_after":14},{"action":"RESULT_DELIVERED","amount":0,"available_after":6,"created":1791389273.2404168,"created_at":"2026-10-07T16:07:53.240417+00:00","id":"lux-tx-90","job_id":"job-9379b62dbadf0e89","kind":"delivery","label":"Seller delivery recorded by the marketplace","ledger_id":90,"locked_after":14},{"action":"PAYMENT_RELEASED","amount":14,"available_after":6,"created":1791389273.5644753,"created_at":"2026-10-07T16:07:53.564475+00:00","id":"lux-tx-91","job_id":"job-9379b62dbadf0e89","kind":"payment","label":"Escrow released to the seller after verification","ledger_id":91,"locked_after":0}],"verification":{"capability":"python-code","checks":[],"reasons":[],"scope":"Structure, Python syntax and cited source fetches; seller attestation is not proof of general semantic quality","valid_delivery":true},"wallets":{"buyer":{"available":6,"id":"session-deb37feccada4a71","kind":"buyer","locked":0},"seller":{"available":22,"id":"atlas","kind":"seller","locked":0}}}