Concurrency Review

Przegląda współbieżny kod Java pod kątem wyścigów, zakleszczeń, widoczności i wzorców wirtualnych wątków

Autor: decebals · decebals/claude-code-java

Testowano · Działa ★ 8.0/10

Concurrency Review — Przegląda współbieżny kod Java pod kątem wyścigów, zakleszczeń, widoczności i wzorców wirtualnych wątków

Co robi ten skill

Umiejętność wiedzy i listy kontrolnej, która przegląda wielowątkowy kod Java pod kątem bezpieczeństwa wątków: wyścigi typu check-then-act, brak volatile/widoczności, uszkodzone podwójne sprawdzanie blokady, kolejność blokad prowadząca do zakleszczeń, niebezpieczne kolekcje, pułapki proxy Spring @Async, obsługa błędów CompletableFuture oraz wzorce wirtualnych wątków i strukturalnej współbieżności z Java 21/25. Uruchamia się, gdy użytkownik prosi o przegląd współbieżności, sprawdzenie bezpieczeństwa wątków lub asynchroniczny przegląd kodu, lub podczas przeglądania kodu używającego synchronized, volatile, ExecutorService lub @Async.

Raport z testu

Pobrano SKILL.md i README raw z repozytorium; frontmatter parsowany z prawidłowym name+description, a treść jest samodzielna (tylko polecenia analizy grep, brak odwołujących się skryptów/plików do uszkodzenia, brak zagrożeń bezpieczeństwa). Wyzwalacz: oceniono 3 frazy aktywujące („przeprowadź przegląd współbieżności mojego kodu ExecutorService”, „sprawdź bezpieczeństwo wątków tego współdzielonego licznika”, „przejrzyj moją usługę Spring @Async pod kątem warunków wyścigu” — wszystkie TAK) i 2 sąsiednie nieaktywujące („przejrzyj tę klasę Java pod kątem czystego kodu i nazewnictwa”, „zoptymalizuj wydajność zapytania SQL” — oba NIE); 5/5 poprawnie. Wynik: napisano 28-liniowy, błędny BankService.java, a następnie wygenerowano baseline_review.md (bez umiejętności) i skill_review.md (zgodnie z listą kontrolną). Bazowe wykryło te same 5 podstawowych błędów (nieatomowy long, brak volatile, DCL, wyścig HashMap, zakleszczenie); artefakt umiejętności dodał kategorie priorytetyzacji, konkretną poprawkę zakleszczenia order-by-getId w porównaniu z niejasnym „możliwym zakleszczeniem” z bazowego, sekcję dotyczącą nowoczesnej Javy i polecenia przeszukiwania grep — rzeczywista, ale umiarkowana poprawa, stąd 6.

Testowano: 2026-07-21 · Claude Code 2.x (agent harness)

Instalacja

git clone --depth 1 https://github.com/decebals/claude-code-java.git /tmp/concurrency-review-src
mkdir -p ~/.claude/skills
cp -R /tmp/concurrency-review-src/.claude/skills/concurrency-review ~/.claude/skills/concurrency-review
# Self-contained knowledge skill: SKILL.md + README.md only, no scripts, no external deps.
# Body uses plain grep commands for analysis; nothing to install or configure.

Komendy i przykładowe prompty

  • /concurrency-reviewPrzegląda współbieżny kod Java pod kątem wyścigów, zakleszczeń, widoczności i wzorców wirtualnych wątków

Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):

  • Check this code for thread safety issues
  • Review this CompletableFuture chain for deadlocks
  • Audit this @Async method for race conditions