Designing Distributed System Tests

Kravdrivna testplaner för distribuerade och tillståndskänsliga system, kopplade till felinjektionsscenarier

av shenli · shenli/distributed-system-testing

Testad · Fungerar ★ 9.2/10

Designing Distributed System Tests — Kravdrivna testplaner för distribuerade och tillståndskänsliga system, kopplade till felinjektionsscenarier

Vad den gör

Vägleder en agent att designa en kravdriven testplan för ett distribuerat eller tillståndskänsligt system: den extraherar de garantier systemet påstår (durability, linearizability, idempotency, isolation, ordering), genererar felmodushypoteser kopplade till varje krav, väljer tekniker från en katalog, och avger en strukturerad planfil med felinjektionsscenarier och maskinkontrollerbara orakel. Utlöses när man frågar vad som ska testas för en ändring, för en holistisk release-valideringsplan, eller hur man testar hållbarhet, partitioner, klientisolering eller rättvisa över shards eller klienter.

Testrapport

Hämtade SKILL.md via GitHub API/raw; frontmatter parsas med name+description; kontrollerade assets/plan-template.md, references/catalog-index.md, references/common-distributed-systems-pitfalls.md — alla HTTP 200. Inga säkerhetsbrister (inga curl|sh, base64, exfil). Utlösare: bedömde 5 fraser, alla 5 korrekta. Utdata: designade en ändringsspecifik uppgift och skrev två verkliga artefakter till scratchpad. Baslinjen gav en 7-punkters platt checklista vars kraschtest är "kill leader after ack, restart, value still there" med utgångskriterium "all tests pass in CI"; den färdighetsföljda planen namngav krav C1-C4 plus en sektion "missing claims", och scenario S1 injicerade SIGKILL "between value-WAL-fsync and dedup-WAL-fsync" med orakel "exactly ONE committed effect ... state comparison against model, not logs fine" — ett dubbel-commit-on-retry-fönster som baslinjen aldrig riktar sig mot.

Testad: 2026-07-31 · Claude Code 2.x (agent harness)

Installation

git clone --depth 1 https://github.com/shenli/distributed-system-testing.git /tmp/designing-distributed-system-tests-src
mkdir -p ~/.claude/skills
cp -R /tmp/designing-distributed-system-tests-src/skills/designing-distributed-system-tests ~/.claude/skills/designing-distributed-system-tests
# Companion skill in same repo: skills/executing-distributed-system-tests (runs the plan this one emits).
# Plugin marketplace alt: repo ships .claude-plugin/marketplace.json (plugin "distributed-testing-skills").
# No external deps to produce a plan; executing the plan needs docker/netem/etc. per the plan's env section.

Kommandon och exempelprompter

  • /designing-distributed-system-testsKravdrivna testplaner för distribuerade och tillståndskänsliga system, kopplade till felinjektionsscenarier

Skills triggas av vanliga förfrågningar — inga kommandon att memorera. Efter installationen aktiverar prompter som dessa skillen (på engelska):

  • Design a test plan for this replicated database
  • Write a fault matrix for this consensus system
  • Create a stability plan for our messaging service