Unit 06 · lesson

Build a Failure Tree

You now have enough failure families to build a reusable diagnostic model.

Start with the symptom

SITE DOES NOT LOOK/WORK AS EXPECTED

Do not jump directly to a fix.

Branch by evidence.

Example failure tree

Does `bundle exec jekyll build` complete?
├─ NO
│  ├─ dependency/environment error?
│  ├─ YAML/config error?
│  ├─ Liquid/template error?
│  └─ plugin/build error?
└─ YES
   ├─ expected file in `_site`?
   │  ├─ NO → generation/content/permalink/config
   │  └─ YES
   ├─ generated HTML/URL correct?
   │  ├─ NO → template/data/path/config
   │  └─ YES
   └─ browser/deployment correct?
      ├─ asset/link 404 → addressing/deployment
      └─ visual/accessibility → HTML/CSS/browser

Make it yours

Add evidence commands/actions you actually use:

  • inspect file tree;
  • open generated HTML;
  • read terminal output;
  • inspect generated URL;
  • test browser request;
  • compare development/production build.

Avoid universal trees

A failure tree is a guide for narrowing evidence.

It should not become a ritual where you run every test even after the cause is obvious.

Checkpoint

Use your tree on one real historical failure from Units 1–5 and show where it would have saved random edits.