원클릭으로
service-object
Create service objects in app/services/ using module namespaces for encapsulation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Create service objects in app/services/ using module namespaces for encapsulation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Create and manage Solid Queue background jobs with perform_now vs perform_later patterns
Perform deep critical analysis of changes with focus on performance vs sustainability trade-offs
Add controllers and routes following project patterns for organizer namespaces, strong params, and Turbo
Build Rails forms with Tailwind CSS, Turbo integration, and strong params validation
Write database migrations for PostgreSQL with PostGIS, UUID primary keys, enums, and counter caches
Create and modify Rails models following project conventions for STI, enums, validations, counter caches, and scopes
| name | service-object |
| description | Create service objects in app/services/ using module namespaces for encapsulation |
| license | MIT |
test/services/ directoriesapp/services/
tournaments/
player_sorter.rb
uneven_pod_generator.rb
strategies/
swiss_matcher.rb
spread_matcher.rb
scoring/
point_wager.rb
circuits/
calculate_points.rb
# frozen_string_literal: true
module Namespace
class ClassName
def initialize(dependency_one, dependency_two)
@dependency_one = dependency_one
@dependency_two = dependency_two
end
def public_method!(arg1, arg2:)
# Public API — bang method for operations with side effects
end
private
attr_reader :dependency_one, :dependency_two
def helper_method(arg)
# Private implementation
end
end
end
CalculatePoints, UnevenPodGenerator)#method! for mutating operations, #method for read-onlymodule Tournaments, module Scoring)test/services/namespaced/ matching directory structureassert_not_raise { service.public_method! }app/services/scoring/point_wager.rb — Example: full recalculation, multiple private helpersapp/services/circuits/calculate_points.rb — Example: iteration with find_or_initializeapp/services/tournaments/uneven_pod_generator.rb — Example: calculate + build pattern