
Bugfix
- 1 installs
- Updated May 18, 2026
- engsimsoft/universal-agent-starter
Structured bugfix workflow - reproduce, read code before hypothesis, find the root cause, fix the cause not the symptom, and add a regression test.
About
Enforces a strict defect-handling sequence: reproduce, read implicated code, identify root cause, fix the cause, and validate with a test. A developer uses it for any reproducible bug, failing test, runtime error, or regression instead of patching and closing.
- Reproduce and read code before forming any hypothesis
- Fix the cause not the symptom; add a regression test that would have caught it
Bugfix by the numbers
- 1 all-time installs (skills.sh)
- Ranked #489 of 596 Debugging skills by installs in the Skillselion catalog
- Data as of Jul 24, 2026 (Skillselion catalog sync)
npx skills add https://github.com/engsimsoft/universal-agent-starter --skill bugfixAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1 |
|---|---|
| Last updated | May 18, 2026 |
| Repository | engsimsoft/universal-agent-starter ↗ |
What it does
Structured bugfix workflow - reproduce, read code before hypothesis, find the root cause, fix the cause not the symptom, and add a regression test.
Files
Bugfix workflow
When a bug, failing test, error, regression is reported — follow this exact sequence.
1. Reproduce
- Establish the smallest reliable repro path (test, command, sequence of clicks, payload).
- If you cannot reproduce — STOP and ask owner for repro steps. Do not "fix" what you cannot reproduce.
2. Read code BEFORE hypothesis (R1)
- Read the file(s) implicated in the failure. Do not skim — actually Read with the tool.
- If the issue touches an external SDK/API → trigger official-docs-first skill (R2).
- Cite specific file:line in your reasoning.
3. Identify root cause
- Walk the failing path from symptom backwards.
- Check git log of the failing file:
git log -p --follow <file>— recent changes? - Use Grep/Serena
find_referencesfor related call sites. - Hypothesis is OK only AFTER reading. Mark explicitly: "Hypothesis (unverified): X. Verifying via Y."
4. Fix the CAUSE not the symptom (R10 — No band-aids)
- Architecturally correct fix, not a try/catch wrapper.
- If correct fix is larger than the bug warrants — write ADR + propose follow-up TZ instead of patching.
5. Validate (R12)
- Add or update test that would have caught this bug.
- Run
pytest tests/test_X.pyor equivalent. Must PASS. - Run mypy/ruff on touched files. Must be CLEAN.
6. Update memory
- If issue partially resolved or revealed deeper problem → record in
docs/agent/06_known_issues.md. - If incident-worthy → start
docs/agent/08_postmortems.mdentry. - Append to
docs/agent/04_changelog.md.
7. ADR if architectural decision was made
- "Switched from X to Y to fix this" = architectural decision = needs ADR.
- "Patched edge case in Y" = not architectural, no ADR needed.
Anti-patterns (do NOT do these)
- ✗ Catch exception silently
- ✗ Add
try/except: pass - ✗ Add boolean flag to skip the broken path
- ✗ Wrap bug with comment "// FIXME: weird issue, working around"
- ✗ Mark task done without test that verifies the fix