anthropics / anthropics/claude-code

[Agent incident] 2026-08-05 20:36 - uživateli přistálo okno se syrovým nodeId (screenshot 20-36-06)

Open
#94,929 0 comments 0 reactions 0 assignees View on GitHub
invalid
Dominant language
Python
Stars
145k
Forks
23.1k
PR merge metrics
PR metrics pending

Description

### Summary

Incident recorded on **2026-08-05 20:36** while working with the coding agent in IntelliJ IDEA on a private Kotlin Multiplatform project.

> **This record was shortened after it was written** - 7 characters present in an earlier commit are missing from the current version. The longest recorded version is reproduced below.
>
> This record was rewritten 2 times in git history; the most complete version is reproduced below.

### Environment

- Surface: Claude Code agent in IntelliJ IDEA (JetBrains plugin)
- Project: private Kotlin Multiplatform app (Android/iOS/desktop)

### Record (verbatim, Czech)

#### 2026-08-05 20:36 — uživateli přistálo okno se syrovým nodeId (screenshot 20-36-06)

- **Co uživatel viděl:** na desktopu se objevila „zpráva" od Architecta s fotkou
odesílatele a 64znakovým hexem `3ed117a8…7020` — tedy SYROVÝ nodeId v notifikaci
a v chatu (+1 nepřečtená). Vypadá to jako únik dat a děsí to uživatele.
Screenshot: `screenshots/Snímek obrazovky z 2026-08-05 20-36-06.png`.
- **Příčina (dohledáno v kódu):** šlo o SERVISNÍ zprávu spamu (`spam_clear` /
`block_report` — payload je nodeId cíle). Příjem má pro známé technické druhy
vlastní větve, které je zpracují a NEukládají; jenže když druh zprávy tenhle build
nezná (jiná verze klienta na druhé straně), spadne do poslední větve „běžná zpráva",
uloží se do chatu a `msgPreviewText` ji vypíše syrovou (`else -> msg.text`).
- **Dopad:** cizí identifikátor v UI (memory: „NIKDY syrové nodeId do UI"), falešná
nepřečtená zpráva, ztráta důvěry uživatele v bezpečnost appky.
- **Oprava:** `` — dvě vrstvy: (1) do chatu se ukládají jen zprávy
bez `kind` a druhy ze seznamu `CHAT_VISIBLE_KINDS`; cokoli jiného se zpracuje a
zahodí (s logem), (2) `msgPreviewText` u zprávy s jakýmkoli `kind` nikdy nevypíše
payload — neznámý servisní druh nemá v náhledu text vůbec.
- **Pravidlo:** payload technických zpráv se do UI nesmí dostat ani při neznámém druhu.
Nové wire druhy vždy doplnit do whitelistu `CHAT_VISIBLE_KINDS`, jinak zůstanou
neviditelné — což je bezpečný default.

Provenance in the project's git history

- record key: `2026-08-05 20:36`
- first committed: `2026-08-05T20:41:47+02:00`
- first commit: `b12fc81f1d81`
- stored versions of this record: 2
- 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 ai-incidents.md and the related provenance in ia-sabotages/ai-incidents.md and tool-sabotages/ai-incidents.md, then verify whether the reported behavior exists in this public repository. The record names no implementation file or test; done would require confirming that unknown service-message payloads cannot reach chat storage or UI previews.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin
Domain
desktop, security
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.