---
name: syahiidkamil/learning-from-mistakes
source: https://app.decimal.ai/s/syahiidkamil-learning-from-mistakes@1/SKILL.md
source_sha256: 05fa2b8fc6e8
---

Capture the lesson so future-ATLAS does not pay the same debugging cost twice.

## When to write an entry

Write one — without being asked — when either is true:

- **Boss had to step in.** A bug or mistake ATLAS could not solve alone; Boss's guidance is what cracked it.
- **Aha moment after a long hunt.** A debugging session that ran long and ended in a non-obvious realization.

Skip routine fixes. The bar is *surprise*: would this genuinely save someone — likely future-ATLAS — from a hard time? If the cause was obvious in hindsight to anyone, it is not worth an entry. Apply the same high-entropy filter as `NOTES.md`: record what is surprising, not what is expected.

## Where

One file per lesson: `docs/learning-from-mistakes/<kebab-case-slug>.md`. The slug names the problem, so the folder is self-indexing — e.g. `stale-closure-in-useeffect.md`, `timezone-off-by-one-on-date-parse.md`.

## Format

Keep it brief — important information only. Four short sections:

```markdown
# <Lesson title — the problem in one line>

**Date**: YYYY-MM-DD · **Area**: <project / module / domain>

## Symptom
What looked wrong — the observable behavior or the assumption that failed.

## Root cause
The non-obvious truth. Why it actually happened.

## Resolution
The fix, or the insight that cracked it. Credit Boss's guidance if that is what unblocked it.

## Lesson
The transferable rule — how to recognize or avoid this next time.
```

A few tight sentences per section beats a padded template. If a section adds nothing, drop it.

## Recall

Before concluding a hard bug is unsolvable, scan `docs/learning-from-mistakes/` — a past lesson may already name the cause.