anthropics / anthropics/claude-code
Withdrawn by the author
- Dominant language
- Python
- Stars
- 145k
- Forks
- 23.1k
- PR merge metrics
- PR metrics pending
Description
### Summary
Incident recorded on **2026-08-27 18:45** while working with the coding agent in IntelliJ IDEA on a private Kotlin Multiplatform project.
### Environment
- Surface: Claude Code agent in IntelliJ IDEA (JetBrains plugin)
- Project: private Kotlin Multiplatform app (Android/iOS/desktop)
### Record (verbatim, Czech)
#### 2026-08-27 18:45 — ohlásil jsem opravu, která u protějšku nemůže platit (opakovaně)
**Formulace klienta, doslova:**
> „prisla nova notifikace ze postnul mates verejny prispevok na timeline, po kliku na
> notifikaci se otevre jeho profil… do kdy se budeme tocit na tom"
> „a dela to opakovane a do incidentu zapsat"
**Co se stalo:** oznámil jsem opravu „klik na ohlášku o postu na zdi otevře ten post a
odscrolluje na něj" jako hotovou a nainstaloval ji klientovi. Jenže id postu do ohlášky
`tl_post` vkládá **ODESÍLATEL**. Dokud protějšek (tady Mates) běží na buildu bez téhle
změny, pošle dál jen holé `"public"` a příjemce nemá na co scrollovat — spadne na původní
cíl, tedy profil autora. Klient tedy po instalaci „opravy" viděl přesně to, co předtím,
a musel to hlásit znovu.
**Chyba není v tom kódu, ale v tom, co jsem řekl:** u změny p2p protokolu platí oprava až
tehdy, když ji mají OBĚ strany. Tohle jsem měl říct při ohlášení, ne až po dalším hlášení.
Je to tentýž vzorec, kvůli kterému je klient dnes opakovaně nucen ověřovat moje „hotovo":
ohlásím výsledek podle svého kódu, ne podle toho, co uvidí uživatel.
**Druhá věc ze stejného hlášení (technická příčina, doložená):** verzní brána byla
nastavená na `1.0.190` — jenže 1.0.190 už je venku a běží ho i klienti BEZ té změny.
Brána proto posunuta na `1.0.191` a verze v repu bumpnutá na 1.0.191, aby id postu
dostávaly jen buildy, které ho umí použít (pravidlo „verze na vývoji = venku + 1").
**Třetí věc, na kterou se přišlo při téže diagnóze:** engine přijímal z každého spojení
JEN PRVNÍ proud (`conn.acceptBi()` jednou). Spojení na peera se přitom drží a znovu
používá, takže každý další proud na něm (a hlavně proudy z `openBiTo` — sync, převzetí
profilu, signalizace hovoru) nikdo nečetl. Odesílatel do nich psal naprázdno a dostával
„chybí ack" nebo timeout, dokud jedna ze stran nerestartovala. Tohle je nejpravděpodobnější
příčina toho, že telefonu „oněměl" právě jeden peer (desktop), zatímco ostatním doručoval —
a proč nedorazil ani post, ani smazání, ani sync. Opraveno: přijímá se každý proud spojení,
každý ve vlastní korutině, konec proudu se loguje.
**Pravidlo:** u změny drátu (wire) vždy rovnou napsat, že se projeví, až ji budou mít obě
strany, a která verze ji nese. „Opraveno" bez téhle věty je pro uživatele nepravda.
Provenance in the project's git history
- record key: `2026-08-27 18:45`
- first committed: `2026-08-27T18:40:45+02:00`
- first commit: `e6e2fe3bd317`
- stored versions of this record: 1
- files it lived in: `ai-incidents.md`, `ia-sabotages/ai-incidents.md`, `tool-sabotages/ai-incidents.md`
---
_Filed from a recovered incident log. The record above is reproduced verbatim from the project's `ai-incidents.md`; it was written in Czech at the time of the event._
Contributor guide
No contributing guide indexed for this repository
Research direction
The record names ai-incidents.md and the alternate ia-sabotages/ai-incidents.md and tool-sabotages/ai-incidents.md paths. Start by reading the incident entry; no implementation entry point, test, or concrete repository change is identified, so completion cannot be verified from this issue alone.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100