This commit is contained in:
lachtan
2026-09-08 20:37:38 +02:00
parent af0ffc522a
commit a3f007bea3
7 changed files with 310 additions and 1 deletions

View File

@@ -0,0 +1,54 @@
# Anotace v souborech místo chatu („mob with AI")
Zdroj: článek „Don't Chat With Your AI. Mob With It." (David Rodenas, Medium,
2026). Článek sám je slabý — argument o latenci (GPU sloty, uvolňování/
načítání inference) je nedoložený a nesedí; reálná latence je round-trip
klient↔server, sériovost kroků a opakovaný prefill. Analogie s mob
programmingem taky ne — v mobu píše jeden driver a víc lidí řídí, tady je to
obráceně. Jádro je ale použitelné.
## Co drží (jádro oddělené od balastu)
- **Instrukce patří tam, kde je předmět instrukce.** Tag na konkrétním řádku
dá kontext pozicí — agent nepotřebuje popis „v tom souboru, u té funkce".
Stejný princip jako TODO komentář / poznámka v code review.
- **Trvalost:** anotace nesedí v chatu, který se zavře — je v souboru, vidět
v diffu, přežije session.
- Není to o latenci ani paralelizaci. „Zrychlení" je ve skutečnosti **fronta**:
zadám a nejdu čekat. Round-trip se nezkrátil, jen u něj nestojím.
- Článek si protiřečí vlastním východiskem (DORA/TDD = rychlý feedback):
hromadné zadání a společný review na konci **prodlouží feedback loop pro
člověka**, ne pro agenta. „Hotovo dřív, než si všimnu" je z tohoto pohledu
špatná zpráva, ne dobrá.
## Mechanismus
Komunikace přes tagy přímo v souborech (autor: `[[CLAUDE: …]]` instrukce,
`[[DAVID: …]]` dotaz agenta). Pravidlo v CLAUDE.md: agent tagy hledá, provádí,
odpovídá. Autor tag po provedení maže — to je chyba.
## Úpravy oproti článku
- **Tag nemaže, jen připisuje odpověď pod něj** — vlákno zůstane v souboru
a v diffu; mazání je jen člověk, před commitem (grep na prefix).
- **Nespouštět agenta ve smyčce nad soubory** (autonomní reakce = ztráta
kontrolního bodu). Místo toho explicitní příkaz „projdi tagy a vyjádři se".
- **Max 12 tagy na kolo.** Deset tagů = deset změn ke společnému review =
nejasné, co odkud přišlo.
## Varianty kam dát vlákno
1. **Anotace jako komentáře v kódu** — nulová infrastruktura, funguje všude,
diff ukáže celou historii výměny. Nevýhoda: zaneřádí kód, hlídání ručně.
Dobré na krátké výměny u konkrétního místa.
2. **Vedlejší soubor** (`file.notes.md` vedle zdrojáku, odkaz na symbol,
ne na číslo řádku) — kód čistý, vlákna libovolně dlouhá, .gitignore.
Dobré na dlouho se vlečoucí věci.
## Otevřené otázky
- Korekce agentových odpovědí („odpověď chci přepsat") — chat to řeší tím,
že je mimo kód; anotace v souboru to nemají kde. Varianta 1 to řeší
nejlíp (přepis = nová verze vlákna na místě), ale je potřeba vyzkoušet.
- Vazba na symboly místo řádků u varianty 2 — jinak se odkazy rozbijí
při každém editu.