Designing Distributed System Tests

Anspruchsgesteuerte Testpläne für verteilte und zustandsbehaftete Systeme, verknüpft mit Fehlerinjektionsszenarien

von shenli · shenli/distributed-system-testing

Getestet · Funktioniert ★ 9.2/10

Designing Distributed System Tests — Anspruchsgesteuerte Testpläne für verteilte und zustandsbehaftete Systeme, verknüpft mit Fehlerinjektionsszenarien

Was es kann

Leitet einen Agenten an, einen anspruchsgesteuerten Testplan für ein verteiltes oder zustandsbehaftetes System zu entwerfen: Es extrahiert die vom System beanspruchten Garantien (Durability, Linearizability, Idempotency, Isolation, Ordering), generiert Fehlerhypothesen, die mit jeder Behauptung verknüpft sind, wählt Techniken aus einem Katalog aus und gibt eine strukturierte Plandatei mit Fehlerinjektionsszenarien und maschinell überprüfbaren Orakeln aus. Wird ausgelöst, wenn gefragt wird, was für eine Änderung zu testen ist, für einen ganzheitlichen Release-Validierungsplan oder wie Durability, Partitionen, Tenant-Isolation oder Fairness über Shards oder Tenants hinweg getestet werden können.

Testbericht

SKILL.md über GitHub API/raw abgerufen; Frontmatter parst mit name+description; assets/plan-template.md, references/catalog-index.md, references/common-distributed-systems-pitfalls.md stichprobenartig geprüft — alle HTTP 200. Keine Sicherheitslücken (kein curl|sh, base64, exfil). Trigger: 5 Formulierungen beurteilt, alle 5 korrekt. Output: eine änderungsbezogene Aufgabe entworfen und zwei reale Artefakte ins Scratchpad geschrieben. Baseline gab eine 7-Punkte-Checkliste, deren Crashtest „kill leader after ack, restart, value still there“ mit dem Exit-Kriterium „all tests pass in CI“ war; der Skill-gesteuerte Plan benannte Claims C1-C4 plus einen Abschnitt „missing claims“, und Szenario S1 injizierte SIGKILL „between value-WAL-fsync and dedup-WAL-fsync“ mit Orakel „exactly ONE committed effect ... state comparison against model, not logs fine“ — ein Double-Commit-on-Retry-Fenster, das die Baseline nie anvisiert.

Getestet am: 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.

Befehle & Beispiel-Prompts

  • /designing-distributed-system-testsAnspruchsgesteuerte Testpläne für verteilte und zustandsbehaftete Systeme, verknüpft mit Fehlerinjektionsszenarien

Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):

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