Jak přispívat do vomaste.cz
vomaste.cz je Open Intelligence Commons — příspěvky jsou vítané a projekt je stavěný tak, aby zodpovědné přispění bylo snadné a nezodpovědná publikace obtížná. Tento dokument je závazný spolu s konstitucí a redakčními pravidly v AGENTS.md; kde by se zdály v rozporu, vítězí konstituce a autorizační log. Tyto i další řídicí dokumenty jsou čitelné i přímo na webu pod /dokumentace/ — stejný zdrojový text, jen bez nutnosti chodit na GitHub.
⚠️ Než cokoli pošlete: všechny kanály tohoto projektu (issues, pull requesty, e-mail, Git historie) jsou veřejné a trvalé. Nevkládejte sem důvěrné dokumenty, identitu zdrojů, osobní kontakty ani nepublikovaný citlivý materiál. Projekt zatím nemá důvěrný intake kanál — smazaný commit přežívá ve forcích a cache a ochranu zdroje nelze po veřejné expozici obnovit.
Vyberte si typ příspěvku
Tenhle dokument je závazné znění. Když hledáte návod krok za krokem, je na webu — a je psaný pro člověka, který nikdy nepoužil terminál.
| Mám v ruce | Kam jít |
|---|---|
| Věcnou chybu, mrtvý odkaz, špatný stav | /prispet/nasel-jsem-chybu/ |
| Nový veřejný zdroj k existujícímu tvrzení | /prispet/mam-zdroj/ |
| Chuť odpracovat otevřenou mezeru | /prispet/chci-reserzovat/ |
| Redakční kontrolu před publikací | /prispet/chci-editovat/ |
| Změnu kódu, dat nebo šablon | /prispet/chci-programovat/ |
| Otázku „co vlastně umím a co dál“ | /prispet/cesta-prispevatele/ |
Neznáte projekt? Začněte na /start/. Chcete se to naučit pořádně? /bootcamp/ je hodina a půl na vymyšlených datech a naučí přesně ty věci, na kterých příspěvky nejčastěji padají — rozdíl mezi třemi články a třemi nezávislými zdroji, kdy je „nevíme“ správná odpověď, a proč veřejně známý člověk plus veřejné informace nestačí na nový dossier.
Co lze přispět hned
- Opravy a tooling (kód, validátory, šablony, dokumentace, přístupnost, překlepy) — standardní fork → větev → pull request.
- Opravy faktů a zdrojů v existujícím obsahu: mrtvý odkaz, přesnější metadata zdroje, doplnění druhého nezávislého zdroje k tvrzení se stavem „1 ZDROJ", zpřesnění procesního stavu. Na každé stránce webu je v patičce odkaz „✎ Navrhnout opravu této stránky" vedoucí na přesný zdrojový soubor.
- Reakce subjektů a protidůkazy — subjekty dossierů mohou žádat opravu, dodat vyjádření nebo protidůkazy veřejným pull requestem nebo GitHub issue. Podání samo dataset nemění; projde přezkumem. Subjekty nemají redakční veto.
Co přispět NELZE bez pokrytí publikačními branami
Jakýkoli nový subjekt, nová kauza nebo nová jmenovaná třetí osoba. Rozsah pokrytí reálných osob určuje append-only autorizační log v AGENTS.md. Od 2026-08-05 (AUTH-2026-08-05-PLATFORM-SCOPE, sekce „Standing scope authorization and publication gates") pro veřejné činitele, PEP a subjekty materiálně napojené na veřejnou moc/peníze odpadá dřívější požadavek na samostatné datované schválení jménem po jménu — ale devět povinných publikačních bran v té sekci platí bez výjimky (jmenovaný zdroj, provenience, procesní rámování, žádná vina podle grafu, nezávislost zdrojových rodin, minimalizace dat, proporcionalita třetích stran, revidovatelná změna, deterministický build) a mechanická brána buildu je nezměněná: npm run dossier:scaffold a validate:authorization stále vyžadují odpovídající záznam v data/authorizations.toml — pull request rozšiřující pokrytí bez něj bude zamítnut bez ohledu na kvalitu zdrojů. „Je to veřejně zajímavé" ani „už to někde vyšlo" není samo o sobě důvod. Návrh nového dossieru mimo standing scope (soukromá osoba bez veřejné funkce) otevřete nejdřív jako issue z formuláře Navrhnout dossier nebo entitu (.github/ISSUE_TEMPLATE/navrh-dossieru.yml) a odůvodněte veřejný zájem — systém ho nepředpokládá. Co se s podnětem stane a co se nestane: docs/intake/public-submission.md.
Pravidla pro obsahové příspěvky (závazná)
- Cituj jen zdroj, který jsi skutečně otevřel/a — nikdy snippet z vyhledávače. Každé tvrzení = jmenovaný, datovaný zdroj s URL.
- Jedno tvrzení = jeden ověřitelný výrok; stav podle skutečné síly důkazu. CORROBORATED vyžaduje dvojici zdrojů, která se liší zdrojovou rodinou i vydavatelem — přetisk téže agenturní zprávy ani druhý článek téže redakce (shodný
outletnebo registrovaná doména) druhé doložení nezakládá; vynucují to pravidla S2 a S10 (docs/data-contract.md). - Procesní výsledek (odložení, promlčení, nepravomocné rozhodnutí) se pokaždé odlišuje od rozhodnutí o vině; citace ověřuje, že výrok padl, ne že platí.
- Nejmenované třetí osoby zůstávají nejmenované; žádné soukromé adresy, kontakty, údaje o obětech či nezletilých. Každý nepříznivý záznam musí projít testem veřejného zájmu (viz konstituce, § 7).
- Nejistota zůstává viditelná: co nejde doložit, patří do registru mezer, ne do tvrzení.
- Full-page doktrína: každé tvrzení a každý zdroj je plnohodnotná stránka (viz AGENTS.md). U nového zdroje to znamená povinnou redakční poznámku v těle stránky — co dokládá, jak je nezávislý, jaké má limity (min. 150 znaků; build to vynucuje). Zbytek stránky renderují šablony z dat — nic se nekopíruje ručně.
Technický postup
Chcete si to jen spustit a podívat se, bez forku a bez commitu?
git clone git@github.com:korczis/vomaste.cz.git
cd vomaste.cz && npm ci
npm run dev # generátory + živý server na http://127.0.0.1:1111
To je celý bootstrap — npm run dev spustí všechny generátory (routes, navigace, search index, JSON-LD exporty) a pak zola serve s automatickým reloadem. Zbytek téhle sekce je až pro skutečný příspěvek (fork, vlastní branch, validace, pull request):
# fork na GitHubu, potom:
git clone git@github.com:<vas-ucet>/vomaste.cz.git
cd vomaste.cz && npm ci
git switch -c oprava/<strucny-popis>
# ...úpravy kanonických dat v data/dossiers/**...
npm run data:validate # tvar + reference + sémantika + JSON-LD
npm run data:build # kompilace + regenerace content adaptérů
npm run build # plná kvalitní brána — MUSÍ projít
git commit && git push && # otevřít pull request
Kde žijí data: veškerý dossierový obsah se edituje výhradně jako kanonický JSON v data/dossiers/** (záznamy tvrzení/zdrojů/kauz/mezer/ vztahů/updatů po souborech, dossier.json s tabulkou tvrzení a grafovou vrstvou, globální entity v data/dossiers/_shared/entities/). Markdown pod content/dossiers/** a content/entities/ je generovaný adaptér; regeneruje ho npm run data:build. Nespoléhejte na to, že vás ruční úprava zastaví: lint:generated-content kontroluje jen front matter a uvnitř npm run build běží synchronizace před paritní bránou, takže úprava těla stránky se tiše přepíše a build zůstane zelený. Podezřelý diff v content/ odhalí samostatné npm run data:check-generated:content. Nový dossier (po autorizaci) založí npm run dossier:scaffold — bez odpovídajícího záznamu v data/authorizations.toml odmítne běžet. Rychlá validace jednoho souboru: npm run data:validate -- --file data/dossiers/<slug>/claims/clm-01.json.
npm run build spouští všechny validátory (kanonická data, autorizace, navigace, kotvy, JSON-LD) — červená brána znamená, že PR není hotový. Detailní postup přidání entity/zdroje/tvrzení/kauzy krok za krokem: docs/contributing/add-dossier-data.md; plný datový kontrakt: docs/data-contract.md. Generované soubory (static/css/main.css, static/js/app.js, data/generated/*, content/dossiers/**, content/entities/*.md) needitujte ručně.
npm ci/npm install navíc samo nastaví git pre-commit hook (rychlá podmnožina validátorů, viz .githooks/pre-commit) — žádný ruční krok navíc; přeinstalace: npm run hooks:install.
Máš-li just, stejný postup je just doctor (ověří prerekvizity) → just setup → just build; just je pouze obal nad těmito npm skripty a nic na něm nezávisí. Úplný seznam receptů: README, sekce „Task runner".
Přispívání s Claude Code (nebo jiným AI agentem)
Repozitář je připravený na to, aby se v něm agent zorientoval bez prodlevy a bez nutnosti znovu objevovat pravidla z první konverzace:
git clone+npm cijako výše — hook se nastaví sám.- V nové Claude Code session spusť skill
bootstrap(.claude/skills/bootstrap/) jako úplně první krok. Projde s tebou pořadí čtení pravidel (AGENTS.md→ konstituce → koop protokol →CLAUDE.md), zkontroluje prerekvizity a coop stav a pomůže zvolit roli, než se čehokoli dotkneš. - Pro konkrétní typ práce pak:
- přidání zdroje/tvrzení/kauzy/mezery/vztahu → skill
dossier-entry(vynucuje autorizační scope-gate jako krok 0 — bez záznamu vAGENTS.mdse obsah o reálné osobě nepřidává, agent se má zeptat, ne hádat); - celé autorizované šetření end-to-end (scope check → větev → manifest → zdrojovaný výzkum → PR, nikdy autopublikace) → skill
investigate; - netriviální technické rozhodnutí (nová závislost, výměna komponenty) → skill
adr(měřený současný stav, ne odhad — vizdocs/adr/graph-renderer.mdjako referenční příklad); - samotný commit → skill
commit(formát zprávy, který gate kdy skutečně platí, co nahlásit na coop sběrnici).
- přidání zdroje/tvrzení/kauzy/mezery/vztahu → skill
- Pokud repo právě žije (více souběžných instancí) —
docs/coop/PROTOCOL.mdje závazný operační rámec navrch, ne náhrada zaAGENTS.md.
Žádný z těchto skillů nerozšiřuje ani nemění redakční pravidla nebo autorizační rozsah — jen zrychluje orientaci v tom, co už tento dokument a AGENTS.md říkají. Fork si je bere zdarma spolu s repem; nejsou vázané na konkrétní instanci ani branding.
Když názvy skillů neznáte
Nemusíte. Popište, co chcete udělat, vlastními slovy — nebo spusťte rozcestník /guide, který se zeptá na záměr a doporučí jednu věc včetně toho, co udělá a jak je riziková. Když něco nefunguje, /diagnose zjistí stav prostředí a navrhne opravu.
Úplný, vždy aktuální seznam schopností je generovaný: docs/TOOLING.md v repozitáři, nebo /dokumentace/prikazy/ na webu. Do dokumentace se neopisuje — zastaral by při prvním přidání.
Stejná laťka, jiná cesta
AI-asistovaný příspěvek má přesně stejné nároky jako ručně psaný. Zdroj musí být otevřený a přečtený, procesní výsledek odlišený od věcného, nedoložené patří do mezer, brána kvality musí skončit s nulou.
Dvě věci, které se v AI-asistované práci pokazí nejčastěji a na které se při přezkumu ptáme:
- výstup nástroje vydaný za zdroj — shrnutí, výtah z vyhledávače ani seznam nálezů nejsou doklad; citace míří na původní materiál;
- tvrzení o hotovosti bez doložení — „testy prošly" a „brána je zelená" jsou tvrzení jako každé jiné a ověřují se spuštěním.
Praktický nácvik obojího je v Bootcampu, lekce B09–B11.
Přezkum
Každý PR prochází lidským přezkumem (data / důkazy / redakce; u obsahu o reálných osobách navíc kontrola proti autorizačnímu logu). Vysoce rizikové změny — závažná obvinění, povyšování stavů tvrzení, cokoli kolem citlivých kauz — se neslučují automaticky nikdy. Zamítnutí dostane důvod. Věcné změny publikovaného obsahu se evidují v append-only historii (kanonické záznamy data/dossiers/<slug>/updates/*.json).
Licence příspěvků
Přispěním souhlasíte s uvolněním svého původního příspěvku pod The Unlicense (public domain). Nevkládejte cizí materiál, který takto uvolnit nemůžete — citovaný obsah třetích stran se cituje a odkazuje, nikdy nerelicencuje.
Bezpečnostní problémy
Zranitelnosti nehlaste veřejnou issue — viz SECURITY.md.