anthropics / anthropics/claude-code
[Agent incident] 2026-08-28 00:25 - tlačítko „Požádat" po kliknutí zůstalo tlačítkem; poškozená logika sledujících
- Dominant language
- Python
- Stars
- 145k
- Forks
- 23.1k
- PR merge metrics
- PR metrics pending
Description
### Summary
Incident recorded on **2026-08-28 00:25** 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-28 00:25 — tlačítko „Požádat" po kliknutí zůstalo tlačítkem; poškozená logika sledujících
ZADÁNÍ (doslova):
> „na wallu je zatim zadne prispevky a pozadat na desktopu, kdyz kliknu na pozadat furt je
> tam tlacitko pozadat, do incidentu poskozeni logiky sledujicich, zadost o sledovani"
> „ma tam byt ze bylo pozadano" / „alespon na aktualni view"
> „btw na mobilu to jde ok … tam je text: ziadost odoslana, coz je ok"
CO JSEM UDĚLAL: v 23:13 (`a6414acc`) jsem do profilu přidal stav pro prázdnou timeline
sledovaného — text „No posts yet" a pod ním tlačítko „Request to follow". Tlačítko jsem
napsal NAPEVNO, bez ohledu na to, jestli už žádost odešla.
ZMĚNĚNÝ KÓD: ProfileScreen.kt, větev `node in following`. Hláška „žádost odeslána" žije
ve větvi `node in followReqOut`, na kterou se u SLEDOVANÉHO uzlu nikdy nedostane — větve
se vyhodnocují v pořadí a `node in following` je dřív.
PROJEV: na desktopu (který ten profil sleduje) klik na „Požádat" nezměnil nic — tlačítko
zůstalo stejné. Na mobilu (který ho nesleduje) se použila původní větev a text se správně
změnil na „žiadosť odoslaná". Rozdíl mezi zařízeními tedy nebyl v datech, ale v tom, do
které větve profil spadl.
ŠKODA: uživatel nemohl poznat, jestli žádost odešla, a klikal opakovaně. Trvání: od 23:13
do 00:25 (1 h 12 min), z toho aktivní testování cca 10 minut.
OPRAVA (tato dávka): ve větvi pro prázdnou timeline se text i barva řídí `followReqOut` —
po odeslání je vidět „žádost odeslána", klik zůstává funkční (žádost jde poslat znovu,
příjem je idempotentní). Testy 164, selhalo 0.
PRAVIDLO: každý nový stav v UI musí umět všechny hodnoty, které ta obrazovka může mít.
Když přidávám akci do nové větve, patří do ní i zobrazení jejího VÝSLEDKU — jinak uživatel
kliká do něčeho, co nedává zpětnou vazbu.
Provenance in the project's git history
- record key: `2026-08-28 00:25`
- first committed: `2026-08-28T00:21:26+02:00`
- first commit: `20317b786fb5`
- 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 incident names ProfileScreen.kt and the `following` and `followReqOut` branches in a private Kotlin Multiplatform project. No change is available to start: the body says the fix was already applied and 164 tests passed; treat this as a recovered incident record rather than an open contribution.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- documentation
- Issue type
- Bug
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100