Skip to content

quick-fix

HARD GATE — ALL entry criteria must pass before invoking quick-fix. If any guardrail triggers during execution, abort immediately and fall back to investigate-bug. Do NOT use quick-fix for logic changes, multi-file edits, or diffs > 5 lines.

Fast-track for trivial data-only fixes that do not require the full bug-fix chain.

When a bug fix is purely data — an add-missing-key, a typo correction, a config value update — the standard 6-skill chain (investigate-bug → diagnose-root → develop-tdd → kickoff-branch → verify-work → release-branch) is wasteful overhead. Quick-fix collapses it to 2 skills: quick-fix then release-branch.

A Preflight, golden suite, or baseline red failure discovered during unrelated work is valid quick-fix entry when the root cause is a data-only gap (missing key, typo, stale config) — no user-reported bug required. If guardrails abort (logic change, >1 file, >5 lines), fall back to fix-bug instead of narrating and continuing.

Before invoking quick-fix, evaluate every item in this checklist:

  1. Purely data change — adding a missing key, fixing a typo, updating a config value, correcting a constant
  2. No logic change — no function signature, condition, loop, or control flow is modified
  3. No refactor risk — the change does not reorganize or rename existing structures
  4. No API surface change — no exported symbol, interface, or contract changes
  5. Verifiable with a single assertion — one test, one curl, one grep can prove it works
  6. Affects ≤ 1 file
  7. Affects ≤ 5 lines changed

If ANY guardrail triggers, abort immediately and suggest investigate-bug instead:

Guardrail Check
>1 file The fix touches more than one file
>5 lines The diff exceeds 5 lines
Logic change Any function signature, condition, or loop is modified
Complex verify The verify command is more than one pipeline
Test breakage Running npm test or equivalent breaks any existing test

Fallback: If any guardrail triggers, tell the user: “This fix exceeds quick-fix guardrails. Use investigate-bug for the full TDD bug-fix chain instead.”

Only 2 skills needed for eligible fixes:

quick-fix → apply change, run one-line verify, commit with fix:
release-branch → merge and ship (existing skill)

Skipped skills (with justification):

Skipped skill Why skipped
investigate-bug Root cause is obvious (data gap, not logic error)
diagnose-root No isolation needed — the data point is the root cause
develop-tdd No logic to test — single assertion proves correctness
kickoff-branch Change is so small it does not warrant a separate worktree

Justification is included in the fix: commit body so the audit trail is preserved.

Run the entry criteria checklist above. If any criterion fails → abort, suggest investigate-bug.

Make the data change — add the missing key, fix the typo, update the value. Keep it to ≤5 lines in 1 file.

Run the single-assertion verify command. Example:

Terminal window
grep -q "Bosnia" src/flags.js && echo "FIX VERIFIED" || echo "FIX FAILED"
Terminal window
git add <file>
git commit -m "fix(<scope>): <description>"
git commit --amend -m "fix(<scope>): <description>
Skipped skills (justified for data-only change):
- investigate-bug: root cause is a data gap, not a logic error
- diagnose-root: the missing data point is the root cause
- develop-tdd: single assertion proves correctness
- kickoff-branch: change is too small for a separate worktree"

Invoke release-branch to merge and ship.

Given a bug where FLAGS dictionary is missing entry "Bosnia"
And no logic depends on the missing entry (purely a data gap)
When the agent invokes quick-fix
Then the missing entry is added to the dictionary
And a one-line verify confirms the key exists: grep -q "Bosnia" src/flags.js
And a fix: commit is created with the skipped-skills rationale in the body
And the change is ready for release-branch