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 11:00** 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 11:00 — REPORT: kam zmizely obálky alb na profilu
**Nezmizela žádná data.** Alba i jejich fotky jsou na disku; zmizel jen NÁHLED na dlaždici.
Doloženo screenshotem profilu: tři dlaždice („…a", „egypt", „tibet") s názvy, ale se šedou
zástupnou ikonou místo fotky. Galerie na telefonu má 39 složek, stejně jako záloha z 09:56.
**Co jsem udělal:** commit `e23eb479` (10:0x) změnil `AppState.refreshAlbums()` tak, aby seznam
alb načítal přes `store.messagesMeta(ALBUMS_PEER)`, tedy BEZ bajtů médií — kvůli rychlosti tabu
Alba (dřív se do paměti načetly bajty všech fotek a videí ze všech alb).
**Proč se rozbil náhled:** dlaždice si obálku bere takhle
```kotlin
val thumb = alb.photos.firstOrNull()?.bytes ?: alb.videos.firstOrNull()?.thumbFrames?.firstOrNull()
```
Elvis `?:` reaguje jen na **null**, ne na **prázdné pole**. Po mé změně je první fotka nenulový
objekt s `id`, ale s `bytes = ByteArray(0)` — `?:` tedy neproběhne, do `BytesImage` jde 0 bajtů
a vykreslí se zástupná ikona. Stejný vzorec byl na 4 místech: `ProfileScreen.kt:1292`,
`AlbumsScreen.kt:526`, `AlbumTile.kt:239`, `ReceivedAlbumRow.kt:115`.
**Ověřeno testem, ne úvahou:** `AlbumCoverTest` (shared/src/desktopTest) prokázal, že
`messagesMeta` vrací id obálky bez bajtů a `store.media("albums", id)` bajty vrátí správně —
chyba tedy nebyla v úložišti, ale v UI podmínce.
**Oprava:** `366079e6` (seznam se po zobrazení doplní na plná média, aby se z něj dalo i odesílat)
+ `?.takeIf { it.isNotEmpty() }` na všech čtyřech dlaždicích, aby prázdná obálka propadla na
náhled videa místo na šedou ikonu.
**Pravidlo:** když se změní zdroj dat na „bez bajtů", je nutné projít VŠECHNY konzumenty toho
seznamu — a hledat i tiché pády typu `?:` nad prázdným polem, ne jen null. U tohohle seznamu
jich bylo šest: 4 dlaždice, výběr alba do zprávy (odeslalo by prázdné album) a prohlížeč lajků.
Provenance in the project's git history
- record key: `2026-08-27 11:00`
- first committed: `2026-08-27T10:56:52+02:00`
- first commit: `78c44342d4f0`
- 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
Start by reading the recovered record in ai-incidents.md and the referenced AlbumCoverTest, then inspect the four named UI files: ProfileScreen.kt, AlbumsScreen.kt, AlbumTile.kt, and ReceivedAlbumRow.kt. The report documents a fix in another project, but it does not state a requested change or a completion condition for claude-code.
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