CtrlK
BlogDocsLog inGet started
Tessl Logo

rails-bug-triage

Use when investigating a bug in a Ruby on Rails codebase and you need to turn the report into a reproducible failing spec and fix plan. Covers reproduction, scope narrowing, boundary selection, and TDD-first handoff.

80

1.49x
Quality

72%

Does it follow best practices?

Impact

91%

1.49x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./rails-bug-triage/SKILL.md
SKILL.md
Quality
Evals
Security

Rails Bug Triage

Use this skill when a bug report exists but the right reproduction path and fix sequence are not yet clear.

Core principle: Do not guess at fixes. Reproduce the bug, choose the right failing spec, then plan the smallest safe repair.

Quick Reference

StepGoal
ReproduceConfirm the bug is real and current
LocalizeFind the layer where the failure is observed
Choose specPick the highest-value failing spec
Plan fixDefine the smallest repair path

HARD-GATE

DO NOT propose a fix before the bug is reproduced or a failing spec is identified.
DO NOT accept "it probably lives in X" as evidence.
ALWAYS hand off to a failing spec before implementation begins.

When to Use

  • The user reports a bug and wants help investigating it.
  • A failing behavior is described, but the responsible Rails layer is unknown.
  • You need to convert a bug report into a TDD-ready fix plan.
  • Next step: Chain to rails-tdd-slices to choose the first spec, then rspec-best-practices and the implementation skill for the affected area.

Process

  1. Capture the report: Restate the expected behavior, actual behavior, and reproduction steps.
  2. Bound the scope: Identify whether the issue appears in request handling, domain logic, jobs, engine integration, or an external dependency.
  3. Gather current evidence: Logs, error messages, edge-case inputs, recent changes, or missing guards.
  4. Choose the first failing spec: Pick the boundary where the bug is visible to users or operators.
  5. Define the smallest fix path: Name the likely files and the narrowest behavior change that should make the spec pass.
  6. Hand off: Continue through rails-tdd-slices -> rspec-best-practices -> implementation skill.

Triage Output

Return findings in this shape:

  1. Observed behavior
  2. Expected behavior
  3. Likely boundary
  4. First failing spec to add
  5. Smallest safe fix path
  6. Follow-up skills

Boundary Guide

Bug shapeLikely first spec
Wrong status code, params handling, JSON payloadRequest spec
Invalid state transition, validation, calculationModel or service spec
Async side effect missing or duplicatedJob spec
Engine routing/install/generator regressionEngine spec
Third-party mapping/parsing issueIntegration or client-layer spec

Common Mistakes

MistakeReality
Jumping straight to the suspected fixSuspicion is not proof; reproduce first
Using a unit spec when the bug is visible at request levelStart where the failure is actually observed
Bundling reproduction, refactor, and new features togetherFix the bug in the smallest safe slice
Treating flaky evidence as a green light to patch blindlyStabilize reproduction before changing code

Red Flags

  • No one can state exact expected vs actual behavior
  • The first spec does not reproduce the reported issue
  • The proposed fix touches unrelated layers immediately
  • The explanation relies on "probably", "maybe", or "should"

Integration

SkillWhen to chain
rails-tdd-slicesTo choose the strongest first failing spec for the bug
rspec-best-practicesTo run the TDD loop correctly after the spec is chosen
refactor-safelyWhen the bug sits inside a risky refactor area and behavior must be preserved first
rails-code-reviewTo review the final bug fix for regressions and missing coverage
rails-architecture-reviewWhen the bug points to a deeper boundary or orchestration problem
Repository
igmarin/rails-agent-skills
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.