lablup / lablup/backend.ai

Migrate idle checker CRUD to ops-backed actions and the ProcessorRegistry

Open
#13,600 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
17h 7m
Merged PRs (30d)
358

Description

Replace the legacy GlobalActionProcessor wiring of services/idle_checker (create/update/purge/admin_search) with ops-backed actions and ProcessorRegistry factories (global create/search ops), keeping the superadmin gate and API contracts unchanged. Delete services/idle_checker/service.py in favor of the generic services, and update adapter call sites from wait_for_complete to run. Reference migration: services/app_config_allow_list (commit 539ef859a). Out of scope: the 7 reconciler-only repository methods stay on repository.py.

## Success Criteria
- [ ] checker CRUD runs through ProcessorRegistry processors with unchanged REST/GQL contracts
- [ ] services/idle_checker/service.py removed; generic services execute the specs
- [ ] reconciler paths (judgment/sweep/assignment sync) untouched and passing
- [ ] pants test passes for affected packages

JIRA Issue: BA-7276

Contributor guide

Open the contributing guide

Research direction

Compare the services/idle_checker migration with services/app_config_allow_list at commit 539ef859, then trace the idle checker CRUD actions, ProcessorRegistry factories, and adapter call sites using wait_for_complete. Preserve the superadmin gate, REST/GQL contracts, and reconciler methods on repository.py; remove services/idle_checker/service.py and run pants test for affected packages.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.