ワンクリックで
incident-distiller
Convert raw incidents into canonical events, experience units, and failure genomes with family-level classification
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Convert raw incidents into canonical events, experience units, and failure genomes with family-level classification
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Extracting key findings from AI/ML research papers.
Auditing frontend components for WCAG AA compliance.
Guide users through resolving 4xx and 5xx API errors.
Diagnosing failed GitHub Action or GitLab CI runs.
Framework to analyze and summarize competitor features and market positioning.
Walk new users through the initial setup and configuration.
SOC 職業分類に基づく
| name | incident-distiller |
| description | Convert raw incidents into canonical events, experience units, and failure genomes with family-level classification |
Converts incidents into structured learning units. V4: includes Failure Genome distillation with family classification and utility scoring.
After any bug fix, deployment failure, or near-miss — when you need to create structured memory from the event.
Three files (+ index update):
.evolution/incidents/INC-YYYYMMDD-NNN.json.evolution/experience_units/EU-YYYYMMDD-NNN.json.evolution/failure_genomes/FG-NNNNNN.jsonFAMILY_INDEX.jsonValidate against schemas/incident-event.schema.json:
{
"incident_id": "INC-YYYYMMDD-NNN",
"created_at": "ISO8601",
"title": "Short title (5+ chars)",
"type": "Regression | Gap | Process | Near-miss | Documentation Drift",
"severity": 7,
"category": "Preventive | Reactive | Structural | Paradigm Shift",
"what_happened": "What broke and what the user/system experienced",
"why_it_happened": "Root cause — WHY, not just WHAT",
"fix_applied": "Exact change made to fix it",
"pattern_extracted": "PAT-NNN: One sentence learning",
"anti_pattern": "AP-NNN: What to never do again",
"related_incidents": [],
"verified": true,
"evidence": "How verification was done"
}
Validate against schemas/experience-unit.schema.json:
{
"eu_id": "EU-YYYYMMDD-NNN",
"source_incident": "INC-YYYYMMDD-NNN",
"pattern": "Reusable pattern name",
"anti_pattern": "Anti-pattern name",
"repair_operator": "Smallest reusable fix action",
"applicability": ["tag1", "tag2", "tag3"],
"impact": 7,
"xp_awarded": 13
}
Validate against schemas/failure-genome.schema.json.
Describe the environment, NOT the specific bug:
"context_fingerprint": {
"stack_tags": ["python", "node", "supabase", "cloud-run", "gemini"],
"surface_tags": ["deploy", "ui", "cli", "data-contract", "docs", "auth"],
"environment_tags": ["windows-powershell", "linux", "gcp", "local"],
"repo_maturity": "greenfield | legacy | hybrid | unknown"
}
Only include tags that are relevant. Don't tag everything.
Check existing families first: Read .evolution/failure_genomes/FAMILY_INDEX.json.
Matching rules — a genome belongs to an existing family if it overlaps on:
Known families (seed from NVE journal):
| Family | Invariant | Typical Repair |
|---|---|---|
credential-drift-after-refactor | deploy_requires_all_env_vars_verified | strip-and-verify-env-vars |
verification-skipped-before-done | done_means_verified_on_production | add-production-verification-step |
silent-fallback-introduced | no_silent_fallbacks | remove-fallback-fix-extraction |
data-quality-gate-bypass | presence_does_not_equal_quality | add-resolvability-check |
write-read-contract-mismatch | write_format_must_match_read_format | add-dual-path-lookup |
llm-output-structural-bias | never_trust_single_llm_number | compute-structural-composite |
command-shell-mismatch | check_os_before_shell_commands | replace-with-ps-safe-command |
Creating a new family: Use pattern {noun}-{noun}-{action}:
stale-docs-after-changeephemeral-state-assumptionimport-omission-in-partial-fixThe rule that should NEVER have been broken. Format: snake_case.
Good invariants:
done_means_verifiedno_silent_fallbackswrite_format_must_match_read_formatexternal_state_must_be_persistentdocs_follow_architectureBad invariants (too vague):
code_should_workbe_carefultest_everythingThe smallest reusable action. Format: verb-noun-phrase.
Good operators:
strip-and-verify-all-env-vars-before-deployadd-resolvability-check-to-fidelity-gatecompute-structural-composite-from-sub-metricsBad operators (too broad):
fix-the-bugbe-more-careful"verifier_evidence": [
{
"kind": "test | command_output | screenshot | healthcheck | diff | replay_report | other",
"ref": "path or command that produced proof",
"summary": "one sentence describing what was verified"
}
]
At least ONE evidence item is required for promoted genomes.
Format: applies_to=<scope> and risk=<level>:
"transferability_tags": [
"applies_to=cloud-run",
"applies_to=env-var-management",
"risk=high"
]
"utility": {
"score": severity / 10,
"reuse_count": 0,
"prevention_count": 0,
"negative_transfer_count": 0,
"last_used_at": null
}
Utility score starts at severity / 10 and decays if not used:
Initially:
"replay": {
"status": "not_run",
"family_sample_size": 0,
"holdout_sample_size": 0
}
After replay:
"replay": {
"status": "passed | failed | partial",
"family_sample_size": 5,
"holdout_sample_size": 2,
"pass_rate": 0.8,
"notes": "4/5 family members would have been prevented"
}
After creating a genome, update .evolution/failure_genomes/FAMILY_INDEX.json:
genomes arraymember_countavg_utility| Impact | XP |
|---|---|
| 1-2 | +3 |
| 3-4 | +5 |
| 5-6 | +8 |
| 7-8 | +13 |
| 9-10 | +21 |
INC-YYYYMMDD-NNN (e.g., INC-20260318-001)EU-YYYYMMDD-NNNFG-NNNNNN (6-digit sequential, zero-padded)