lablup / lablup/backend.ai

Move every manager entity error onto EntityError, into errors/, and drop the duplicates

Open
#14,396 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

2026-09-08: 이 이슈와 BA-7771 은 다른 담당자가 진행한다. 선행 BA-7769(EntityError 계약·ActionOperationType 매핑·errors/AGENTS.md 규칙·호환 표)가 머지된 뒤 그 규칙을 따른다. 작업 형태는 PR 1개, errors 모듈 하나당 커밋 하나, 커밋 메시지에 바뀌는 error_code 값 목록.

----

대상: manager의 엔티티 오류 전부(errors/ 33모듈 301클래스 + sokovan/scheduler·deployment·recorder, plugin/openid·totp, dependencies/errors.py, models/rbac/exceptions.py의 오류)를 EntityError 상속으로 바꾸고 manager/errors/ 아래로 모은다. 시스템 오류는 BackendAIError 유지.

같이 정리: ① entity_type이 실제와 다른 것(group→project, scaling-group→resource_group, endpoint→model_deployment, instance→agent, vfolder-invitation→entity_share, kernel/route처럼 필드인 것은 소유 엔티티로) ② 같은 뜻의 중복 정의(EndpointNotFound·UserNotFound 등 이름 중복과, 이름은 다르지만 error_code가 같은 것) ③ 쓰이지 않는 오류.

형태: PR 1개, 커밋은 도메인별(errors/ 하나 = 커밋 하나, 이관 모듈도 각각). 커밋마다 pants 통과 후 대기해 사용자가 커밋 단위로 리뷰. 각 커밋 메시지에 바뀌는 error_code 값 목록. PR 본문에 breaking 목록과 changelog.

완료 기준: manager/errors/ 밖에 BackendAIError 서브클래스가 없다. 엔티티 오류는 전부 EntityError다. 이름·코드 중복이 없다. WebUI 리터럴 2곳과 SDK 분기(첫 이슈의 표)가 깨지지 않는다.

JIRA Issue: BA-7770

Contributor guide

Open the contributing guide

Research direction

Start by reading the BA-7769 contract, the rules in errors/AGENTS.md, and the listed manager/errors/, sokovan/, plugin/, dependencies/errors.py, and models/rbac/exceptions.py locations. Inventory entity errors, duplicate error_code values, and unused definitions before making the domain-by-domain commits. Done means the stated EntityError, naming, duplicate, WebUI, SDK, pants, breaking-change, and changelog criteria are satisfied.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.