Zurück zu Fähigkeiten

pre-mortem

avelikiy
Aktualisiert 2 days ago
1 Ansichten
30
6
30
Auf GitHub ansehen
Metaaidesign

Über

Die Pre-Mortem-Fähigkeit hilft Entwicklern, konkrete Risiken vor der Implementierung zu identifizieren, indem sie sich vorstellt, dass ein Projekt bereits katastrophal gescheitert ist, und rückwärts arbeitet, um wahrscheinliche Ursachen zu finden. Sie wird in Planungsphasen – wie Architekturprüfungen oder Threat Modeling – für irreversible oder hochwirksame Funktionen eingesetzt. Diese Methode erzwingt die spezifische Risikoidentifikation über generische Listen hinaus und verwendet einen strukturierten 5-Schritte-Prozess.

Schnellinstallation

Claude Code

Empfohlen
Primär
npx skills add avelikiy/great_cto -a claude-code
Plugin-BefehlAlternativ
/plugin add https://github.com/avelikiy/great_cto
Git CloneAlternativ
git clone https://github.com/avelikiy/great_cto.git ~/.claude/skills/pre-mortem

Kopieren Sie diesen Befehl und fügen Sie ihn in Claude Code ein, um diese Fähigkeit zu installieren

Dokumentation

Pre-mortem — fail-it-before-you-build-it

A retrospective for a project that hasn't happened yet. Surfaces real risks that "list every risk" prompts miss.

Originated in Gary Klein's research at MIT Sloan, now standard at AWS and other ops-mature orgs.

The 5-step pre-mortem

Step 1. Imagine you're 6 months in the future

The project shipped. It is a clear, public failure. There's a Reddit thread about it. The CEO is asking what went wrong.

Step 2. Write the post-mortem newspaper headline

One sentence. Concrete. Specific. Examples:

  • ❌ Bad: "We had some quality issues."
  • ✅ Good: "On 2026-09-12, the Stripe webhook handler deduplicated by raw body hash, so 30K customers were double-charged after Stripe retried delivery during a network blip."

The headline forces you to name the failure mode SPECIFICALLY.

Step 3. List every individual reason this exact failure happened

Brainstorm 10-15 reasons. Be specific. Each item should reference:

  • A real component / file
  • A real failure mode (race condition, schema mismatch, expired credential)
  • A real human factor (oncall didn't see alert, runbook was outdated)

Reject hand-waves like "testing was insufficient." Replace with "we didn't write a property-based test for the dedup-key collision case."

Step 4. Rank by likelihood × severity

For each cause, score:

  • Likelihood: 1-5 (1=once-in-a-decade, 5=monthly)
  • Severity: 1-5 (1=cosmetic, 5=data loss / regulatory breach)
  • Risk score: likelihood × severity

Top 3 by risk score → these are your highest-priority mitigations.

Step 5. For each top-3 cause, write a guardrail in the plan

Each guardrail is a concrete change to the plan:

  • A test that would have caught it
  • A circuit breaker / feature flag
  • A runbook entry
  • A monitoring alert with specific SLO

If a top-3 cause CANNOT be mitigated within the time/budget, escalate to the user: "This plan accepts the risk of X with no mitigation."

Template — add to PLAN-*.md

## Pre-mortem

Six months from now, this project failed. Headline:

> <one-sentence failure headline>

### Top reasons (likelihood × severity)

| Cause | L | S | Risk | Mitigation in plan |
|---|---|---|---|---|
| <specific cause> | 4 | 5 | 20 | <Task #N: write idempotency test> |
| ... | | | | |

### Accepted risks (no mitigation)

- <risk> — accepted because <budget/scope reason>. Owner: <name>.

Common failure modes by archetype

Quick start — most-common pre-mortem causes per archetype:

ArchetypeCommon failure
fintech / commerceIdempotency-key collision; double-charge during retry storm
healthcarePHI leak via debug log; BAA not signed with vendor
web3Oracle staleness; flash-loan exploit on bonding curve
mlopsTraining/serving skew; model drift undetected
iot-embeddedOTA bricks devices in a region with no recovery path
data-platformLate-arriving data overwrites correct values
ai-system / agent-productPrompt injection exfiltrates other users' data
enterprise-saasCross-tenant data leak via RLS gap
cli-toolDestructive flag with no confirmation (rm -rf equivalent)
libraryBreaking change in minor version bump

Anti-patterns in pre-mortems

Vague risks. "Performance might be a problem." Be specific: which operation, at what load, what's the SLO.

Cosmic risks. "AWS could go down." Yes, but that's not actionable. Focus on what you can mitigate.

Defensive list. Listing risks you've already mitigated to look thorough. Only list risks the current plan does NOT yet address.

Skip the headline. Without the headline, the team won't believe the failure scenario is real.

When to skip

  • nano project_size — pre-mortem is overhead.
  • Pure refactor with full test coverage — guardrails already exist.
  • Bug-fix with one-line repro — risk is well-bounded.

GitHub Repository

avelikiy/great_cto
Pfad: skills/pre-mortem
0
agentic-codingclaude-code-pluginclaude-code-skillsclaude-code-subagentscode-reviewcto

Verwandte Skills

content-collections

Meta

Diese Skill bietet eine produktionsgetestete Einrichtung für Content Collections – ein TypeScript-first-Tool, das Markdown/MDX-Dateien in typsichere Datensammlungen mit Zod-Validierung umwandelt. Verwenden Sie ihn beim Erstellen von Blogs, Dokumentationsseiten oder inhaltsstarken Vite + React-Anwendungen, um Typsicherheit und automatische Inhaltsvalidierung zu gewährleisten. Er behandelt alles von der Vite-Plugin-Konfiguration und MDX-Kompilierung bis hin zur Deployment-Optimierung und Schema-Validierung.

Skill ansehen

polymarket

Meta

Diese Fähigkeit ermöglicht es Entwicklern, Anwendungen mit der Polymarket-Prognosemärkte-Plattform zu erstellen, einschließlich API-Integration für Handel und Marktdaten. Sie bietet außerdem Echtzeit-Datenstreaming über WebSocket, um Live-Trades und Marktaktivitäten zu überwachen. Nutzen Sie sie zur Implementierung von Handelsstrategien oder zur Erstellung von Tools, die Live-Marktaktualisierungen verarbeiten.

Skill ansehen

creating-opencode-plugins

Meta

Diese Fähigkeit unterstützt Entwickler dabei, OpenCode-Plugins zu erstellen, die in über 25 Ereignistypen wie Befehle, Dateien und LSP-Operationen eingreifen. Sie bietet die Plugin-Struktur, Event-API-Spezifikationen und Implementierungsmuster für JavaScript/TypeScript-Module. Nutzen Sie sie, wenn Sie den Lebenszyklus des OpenCode KI-Assistenten mit benutzerdefinierter ereignisgesteuerter Logik abfangen, überwachen oder erweitern müssen.

Skill ansehen

sglang

Meta

SGLang ist ein hochperformantes LLM-Serving-Framework, das sich auf schnelle, strukturierte Generierung für JSON, Regex und agentenbasierte Workflows unter Verwendung seines RadixAttention-Prefix-Cachings spezialisiert. Es bietet deutlich schnellere Inferenz, insbesondere für Aufgaben mit wiederholten Präfixen, was es ideal für komplexe, strukturierte Ausgaben und Mehrfachdialoge macht. Wählen Sie SGLang gegenüber Alternativen wie vLLM, wenn Sie constrained decoding benötigen oder Anwendungen mit umfangreicher Präfix-Weitergabe entwickeln.

Skill ansehen