Hackathony v krypto/web3: ako pripraviť zodpovedný projekt bez skratok
Hackathon je tlakový hrniec, v ktorom sa ukáže technický talent, rozhodovanie pod stresom aj schopnosť tímu doručiť minimum viable výsledok. V prostredí krypto, tradingu a web3 to však nestačí: zodpovedný projekt musí okrem funkčnej ukážky rešpektovať bezpečnosť, súkromie, právne rámce, etiku a dlhodobú udržateľnosť. Tento text je praktický manuál, ktorý vám pomôže pripraviť projekt tak, aby obstál nielen pred porotou, ale aj pred reálnym svetom.
Definícia problému a „impact first“ prístup
- Problémová veta: jednou–dvoma vetami presne definujte, ktorú bolesť riešite (napr. bezpečné mikroplatby bez KYC pre hry, auditovateľné PoR pre malé custody, lacný on-chain settlement pre RFQ trhy).
- Hypotéza hodnoty: prečo je riešenie lepšie než status quo? Kvantifikujte úsporu nákladov, latenciu, riziko, UX kroky.
- Obmedzenia: regulačné (sankcie, licencie), technické (finalita, poplatky), trhové (likvidita, oracles), etické (súkromie, zneužitie).
Scope, míľniky a „MVP bez podvádzania“
- MVP definícia: nie „figma + video“, ale e2e tok na testnete/mainnete s reálnou transakciou/udalosťou a verifikovateľným dôkazom.
- Milníky: M1 – skelet kontraktu + unit testy; M2 – prvé volanie cez UI/CLI; M3 – observabilita (logy, eventy); M4 – dokumentácia a demo skript.
- Čo vedome vynechať: pokročilé optimalizácie a „nice-to-have“ UI. Radšej dodať bezpečné minimum s krytím testami.
Tímové roly a zodpovednosti
- Tech lead: architektúra, prierezové rozhodnutia, „no-go“ veto pri bezpečnosti.
- Smart contract inžinier: model stavu, kontrola oprávnení, testy a formálne vlastnosti.
- Frontend/UX: error states, podpisové flow, vysvetlenie rizík, „undo“ a revokácie.
- DevOps/infra: testnety, kľúče, CI, monitorovanie, RPC spoľahlivosť.
- Risk & compliance: hrozby, limity, jurisdikcie, licencie, otvorené zdroje (licencie kódu a dát).
Architektúra: jednoduchá, auditovateľná, rozšíriteľná
- Modularita: jadro + plug-in moduly (policy, prístup, oracles). Uľahčí to testovanie a obmedzí „blast radius“ chýb.
- Minimálne oprávnenia: princíp least privilege na úrovni kontraktov, proxy a signatúr (session kľúče, spending limity).
- Deterministické nasadenie: verzovanie, adresy, migrácie; zachovajte reprodukovateľnosť (commit hash, build).
Výber stacku a infra
- Reťazec a L2: podľa finality, poplatkov, nástrojov a dostupnosti testnetu. Zvážte modulárnosť a dostupnosť oraclov/mostov.
- Oracles a dáta: definujte zdroje, latenciu a fallback politiku; počítajte s výpadkom feedov.
- RPC a indexácia: redundantní poskytovatelia, rate-limit plány, lokálna cache a backoff stratégie.
Model hrozieb: čo sa môže pokaziť
- Kontrakty: reentrancy, nedostatočné overenie vstupov, nesprávne výpočty poplatkov, overflow/underflow v custom math.
- Schvaľovanie a prístup: neobmedzené approvals, chýbajúce limity, slabé role/guardy, neoprávnené delegatecall.
- Ekonomika: oracle manipulácia, MEV (sandwich, backrun), likvidačné slučky, cenové medzery.
- UX útoky: phishing domény, slepé podpisovanie, zmätočné povolenia.
Bezpečnostné zásady pre smart kontrakty
- Checks-Effects-Interactions, reentrancy guard, „pull over push“ pre výplaty.
- Oprávnenia: onlyOwner/onlyRole nahradiť modulmi a časovými zámkami; kritické funkcie pod multisig + timelock.
- Upgrade pattern: ak používate proxy, definujte upgrade governance a „kill-switch“. Ak nie, rátajte s migráciou a deprecation.
- Bezpečné matematické operácie a saturácia limitov; explicitné jednotky (decimály, bps, wei).
Testovanie: od unit po property-based
- Unit testy: pokrývajú bežné cesty, chybové stavy, hranice parametrov.
- Property-based: invariancie (napr. conservation of value), monotónnosť, limity.
- Fork testy: simulácia na reálnych dátach (pooly, oracles, mempool scenáre).
- Fuzzing: náhodné vstupy, mutácie calldata, nestandardné poradie volaní.
UX a bezpečné podpisovanie
- Transparentná karta oprávnení: zrozumiteľne „Kto/Čo/Koľko/Kedy“. Zvýraznite expiráciu a limity.
- Predvolené limity: nikdy „unlimited“; denné/per-tx stropy, doménové viazanie (EIP-712).
- Revokácia jedným klikom: pre sessions aj approvals, s návodom pre používateľa.
- Chybové stavy: predvídateľné, s návrhom riešenia (zvýšiť limit, obnoviť oracle, skúsiť iný route).
Dáta, súkromie a minimalizmus
- Neverejné informácie nedávajte on-chain; používajte hashované záväzky a odkazujte na off-chain úložisko (s expiráciou).
- Telemetria: zbierajte iba anonymizované metriky; vysvetlite, čo a prečo logujete.
- Prístup k údajom: jasné SLA, retention a vymazanie; otvorené API nech má rate limit a kľúče.
Licencovanie, IP a „open-core“ stratégia
- Licencia kódu: zvoľte OSI-kompatibilnú licenciu (MIT/Apache-2.0) alebo recipročne obmedzujúcu podľa cieľa. Uveďte ju v hlavičke súborov.
- Právne riziká: nepoužívajte cudzie assety/dáta bez práv; rešpektujte ochranné známky a názvy tokenov.
- Open-core: jadro otvorené, prevádzkové moduly a infra môžu byť „source-available“ pre hackathon demo.
Etika a zodpovednosť
- Misuse-cases: identifikujte možné zneužitia (wash trading, obchádzanie sankcií, phishing) a navrhnite mitigácie (limity, allowlist, monitoring).
- Inklúzia a prístupnosť: jednoduché texty, kontrast, klávesnica; viacjazyčné oznámenia rizík.
- Udržateľnosť: odhad nákladov (gas, infra), aby produkt nebol neudržateľný mimo hackathonu.
Observabilita, logy a metriky
- On-chain eventy: emitujte dôležité udalosti s identifikátormi (policyId, requestId, version).
- Off-chain logy: korelačné ID naprieč frontendom, backendom a relayerom.
- Metriky: úspešnosť transakcií, čas do finality, reject rate policy, využitie limitov, incidenty MEV.
Demo, skript a „story“
- Demo skript: tri kroky – (1) problém, (2) e2e ukážka, (3) bezpečnostné poistky. Žiadne „magické“ preklikávanie.
- Fallbacky: ukážte, čo sa stane, keď oracle/RPC vypadne (zmysluplná hláška, pauza, retry).
- Merateľný výsledok: čísla pred/po (poplatky, latencia, impact) a linky na block explorer/testnet.
Dokumentácia a reproducibilita
- README: čo projekt robí, architektúra, ako spustiť (jediný príkaz), ako testovať (príklady), adresy kontraktov.
- Architektonický prehľad: diagram, sekvenčné kroky, riziká a rozhodnutia s alternatívami.
- Bezpečnostná príloha: threat model, známe limity, odporúčania pre produkčné nasadenie.
Cross-chain a interoperabilita bez skratok
- Model dôvery: jasne uveďte, či používate custodial wrapping, light klienta, optimistický dôkaz alebo IBC-like kanál.
- Limity objemov: denné stropy cez mosty, alarmy pri odchýlke parity wrapped aktív.
- Bezpečné UX: varovania pri prechode sietí, presné popisy rizík a času finality.
Ekonomika protokolu: poplatky, incentívy, riziko
- Poplatkový model: vysvetlite, kto platí (užívateľ, dApp, sponzor) a prečo je to udržateľné.
- Incentívy: odmeňovanie relayerov/validatorov; zabráňte „sybil“ útokom a toxickým strategickým správaniam.
- Risk fond: ak je to primerané, naznačte poistný mechanizmus (treasury, slashing, cap na expozíciu).
Checklist pred odovzdaním projektu
- Má MVP reálny on-chain tok s preukázateľným výsledkom?
- Sú kritické funkcie pod role/guard a testami (vrátane chýb)?
- Existuje „kill-switch“, limity a revokácie pre prípad incidentu?
- Je dokumentácia dostatočná na spustenie cudzím človekom do 10 minút?
- Máte metriky, error hlášky a linky na explorer/logy v README?
- Sú jasne uvedené licencie a právne obmedzenia použitia?
Po hackathone: cesta k produkcii
- Audit-ready roadmap: refaktor, coverage > 90 %, odstránenie zbytočných privilegovaných ciest.
- Bezpečnostná politika: bug bounty, zverejnenie zraniteľností, postup pri incidente.
- Komunitná spätná väzba: RFC, issue tracker, otvorené milestone a priorita „papercuts“.
Zodpovednosť je konkurenčná výhoda
Zodpovedný hackathon projekt nie je najdlhší pitch ani najpestrejšie UI. Je to funkčný, auditovateľný, reprodukovateľný a bezpečný kus softvéru s jasnou hodnotou a vedomím vlastných limitov. Keď postavíte MVP na pevných zásadách – minimálne oprávnenia, testy, transparentná architektúra, etika a súkromie – vyhrávate dvakrát: u poroty dnes a u používateľov zajtra.