Curated library of AI agent skills for Ruby on Rails development. Covers code review, architecture, security, testing (RSpec), engines, service objects, DDD patterns, and workflow automation.
98
99%
Does it follow best practices?
Impact
98%
1.38xAverage score across 26 eval scenarios
Passed
No known issues
An e-commerce platform's operations team uploads a CSV of product inventory updates once a day. Each row contains a SKU and a new stock level. The import sometimes contains rows with missing SKUs, negative quantities, or SKUs that don't exist in the database. The team wants a service they can call from a background job, an admin controller, or a one-off Rake task. Critically, the service must handle bad rows gracefully: a single bad row should not prevent the remaining rows from being processed, and the caller must always receive a structured result — never a raw exception.
Your job is to write a Ruby service that accepts a list of inventory update hashes (each with :sku and :quantity keys), processes each one, and returns a result that distinguishes successes from failures. The service must validate each item before attempting any database change, and must handle both expected failures (record not found, negative quantity) and unexpected ones (database connectivity issues) in a controlled way.
Produce the following files:
app/services/<choose_appropriate_module>/<choose_appropriate_name>.rb — the service implementationspec/services/<mirrored_path>_spec.rb — RSpec spec covering: all items valid, some items invalid, all items invalid, and an unexpected exception during processingDo not create a full Rails application. Use stub comments where real ActiveRecord calls would go (e.g. # TODO: Product.find_by!(sku: sku)) so the service structure is clear without a running database.
api-rest-collection
create-prd
ddd-boundaries-review
ddd-rails-modeling
ddd-ubiquitous-language
docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
scenario-26
generate-tasks
mcp_server
rails-architecture-review
rails-background-jobs
rails-bug-triage
rails-code-conventions
rails-code-review
rails-engine-compatibility
rails-engine-docs
rails-engine-extraction
rails-engine-installers
rails-engine-release
rails-engine-reviewer
rails-engine-testing
rails-graphql-best-practices
rails-migration-safety
rails-review-response
rails-security-review
rails-skills-orchestrator
rails-stack-conventions
rails-tdd-slices
refactor-safely
rspec-best-practices
rspec-service-testing
ruby-service-objects
strategy-factory-null-calculator
ticket-planning
yard-documentation