HBMM200_모듈 레지스트리 목록
(Hereby) Module Manager > 모듈 레지스트리 목록
| 앱 | Module Manager (HBMM) |
| 대상 사용자 | 조건1 [Module Manager 조회 권한] |
| 프로토타입 | TBU |
| 관련 정책 | [[POL_급여정본경계]] · [[POL_AI안전경계]] |
| Status | review |
| Owner | 카나 (PM) |
개요
- 좌측 module list다. moduleRegistry.list 응답의 9개 calculator를 카드로 노출한다: 근로계약 / 초과근무 / 고정인센티브 / 교육비보조 / 연말정산 / 퇴사정산 (allowance) · 4대보험 / 소득세 (deduction) · 수동입력 (manual).
- 각 카드는 module.name · module.type("allowance"/"deduction") · "calculator" 배지 · config 상태 배지("No Configs" 또는 "Manual")를 표시한다. 9개 모두 calculator 구현(미구현: 0).
- 카드 클릭 시 URL hash가 module.key로 변경되고 (예 #payroll_rate_config) 우측에 상세가 render된다 ([[HBMM210_모듈 상세 (Output Keys)]]). 선택은 client hash 변경, mutation 없음.
- 각 module의 outputKeys는 HR 시트 ƒ column / AI tool output schema이며, sourceTables → targetTables는 계산 I/O 계약이다. 보조표에 9모듈 I/O 카탈로그를 census 원문으로 정리한다.
문서 히스토리
| 날짜 | 작성자 | 팀 | 변경 내용 |
|---|---|---|---|
| 2026-07-06 | 카나 | PM | 최초 작성 |
| 2026-07-10 | 카나 | PM | 라이브 기능 검토 반영 |
| 2026-07-13 | 카나 | PM | 버튼 행동 명세 보강 |
| 2026-07-21 | 카나 | PM | GC700 깊이 재작성 + 확정 스타일 (메타/Data I/O 분리) |
Data I/O
Server → Client
| 변수 | 엔티티.컬럼 | 값 없을 때 | 비고 |
|---|---|---|---|
| $ | moduleRegistry.list → CalculatorModule[] | empty | 카드 9개 |
| $ | module 표시명 | - | 예 "근로계약 (Employment Contract)" |
| $ | allowance / deduction | - | 카드 유형 배지 |
| $ | calculator 구현 여부 | - | 9개 모두 true (미구현 0) |
| $ | configured / manual | - | config 배지 "No Configs" / "Manual" |
| ${module.sourceTables} / $ | I/O 카탈로그 원천·기록 | [] | source 없는 모듈 존재 |
| $ | calculator 반환 키 | [] | HR 시트 ƒ column |
Client → Server
| 액션 | 전달 값 | tRPC procedure | 권한 토큰 |
|---|---|---|---|
| module 선택 | module.key | URL hash 변경 (예 #payroll_rate_config), mutation 없음 | client (권한 없음) |
화면 플로우
모듈 레지스트리 목록 사양표
| 번호 | 항목/기능명 | 타입 | 사양 및 기능 설명 | 연관/영향 범위 | 비고 |
|---|---|---|---|---|---|
| 00 | 노출 조건 | - | • moduleRegistry.list 응답 후 좌측 list 노출 (9 calculator). 순서 고정 • 카드(10~90) 클릭 시: 우측 상세 패널 전환(Output Keys 테이블, [[HBMM210_모듈 상세 (Output Keys)]]) · URL hash = module.key (client, mutation 없음) | CalculatorModule[] | |
| 10 | 근로계약 | Button/Card | • allowance calculator 카드. 표시 "근로계약 (Employment Contract)" · "No Configs" · allowance · calculator • 클릭 시: #employment_contract 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: baseSalary, hobongAmount, hobongAllowance, totalSalary, longevityAmount, longevityAllowance, meal, housing, transportation, childcare, annualSalary | employment_contract · employment_contracts → allowance_records | 호봉/장기근속/계약수당 |
| 20 | 초과근무 | Button/Card | • allowance calculator 카드. 표시 "초과근무 (Overtime Record)" · "No Configs" · allowance · calculator • 클릭 시: #overtime_record 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: weekday_hours/base, night_hours/base, holiday_hours/base, weekend_hours/base, weekend_days, night_days, holiday_days, type_hours, type_amount, total_hours, total_base | overtime_record · overtime_records → allowance_records · HBTM source | |
| 30 | 고정인센티브 | Button/Card | • allowance calculator 카드. 표시 "고정인센티브 (Fixed Incentive)" · "No Configs" · allowance · calculator • 클릭 시: #fixed_incentive 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: total_amount, count, rehabilitation_total/count, nursing_total/count, sports_medicine_total/count, home_visit_total/count, assessment_total/count, on_call_total/count, other_total/count | fixed_incentive · fixed_incentives → allowance_records · HBMD taxonomy | TBU: MD live enum과 taxonomy 차이 |
| 40 | 교육비보조 | Button/Card | • allowance calculator 카드. 표시 "교육비보조 (Education Subsidy)" · "No Configs" · allowance · calculator • 클릭 시: #education_subsidy 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: count | education_subsidy · education_subsidies → allowance_records | TBU: 금액 산식 |
| 50 | 연말정산 | Button/Card | • allowance calculator 카드. 표시 "연말정산 (Year-End Settlement)" · "No Configs" · allowance · calculator • 클릭 시: #year_end_settlement 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: adjustment_amount, refund_amount, additional_tax | year_end_settlement · year_end_settlements → allowance_records | 환급/추징 조정 |
| 60 | 퇴사정산 | Button/Card | • allowance calculator 카드. 표시 "퇴사정산 (Resignation)" · "No Configs" · allowance · calculator • 클릭 시: #resignation_record 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: pro_rata_salary, unused_leave_payout, unused_leave_days, severance_pay, pro_rata_days | resignation_record · resignation_records/employment_contracts/leave_requests → allowance_records | 퇴직금 key |
| 70 | 4대보험 | Button/Card | • deduction calculator 카드. 표시 "4대보험 (Social Insurance)" · "No Configs" · deduction · calculator. source 없음 (요율 코드 내장) • 클릭 시: #payroll_rate_config 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: national_pension, health_insurance, long_term_care, employment_insurance, total | payroll_rate_config → deduction_records | No Configs지만 default parameter 존재 |
| 80 | 소득세 | Button/Card | • deduction calculator 카드. 표시 "소득세 (Tax Bracket)" · "No Configs" · deduction · calculator • 클릭 시: #tax_bracket_config 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: income_tax, local_income_tax | tax_bracket_config · tax_bracket_configs → deduction_records | 소득세/지방소득세 |
| 90 | 수동입력 | Button/Card | • allowance calculator 카드(수동). 표시 "수동입력 (Manual)" · "Manual" · allowance · calculator. source 없음 • 클릭 시: #manual 전환 → [[HBMM210_모듈 상세 (Output Keys)]] - output: fixed_amount, unit_1 | manual → allowance_records/deduction_records | status manual, audit 중요 |
9모듈 I/O 카탈로그 (보조)
| module.key | type / status | source → target | 주요 output keys |
|---|---|---|---|
| employment_contract | allowance / configured | employment_contracts → allowance_records | baseSalary, hobongAmount, totalSalary, longevityAmount, meal/housing/transportation/childcare, annualSalary |
| overtime_record | allowance / configured | overtime_records → allowance_records | weekday/night/holiday/weekend_hours·base, *_days, type_hours/amount, total_hours/base |
| fixed_incentive | allowance / configured | fixed_incentives → allowance_records | total_amount, count, rehabilitation/nursing/sports_medicine/home_visit/assessment/on_call/other_total·count |
| education_subsidy | allowance / configured | education_subsidies → allowance_records | count |
| year_end_settlement | allowance / configured | year_end_settlements → allowance_records | adjustment_amount, refund_amount, additional_tax |
| resignation_record | allowance / configured | resignation_records, employment_contracts, leave_requests → allowance_records | pro_rata_salary, unused_leave_payout, unused_leave_days, severance_pay, pro_rata_days |
| payroll_rate_config | deduction / configured | source 없음 → deduction_records | national_pension, health_insurance, long_term_care, employment_insurance, total |
| tax_bracket_config | deduction / configured | tax_bracket_configs → deduction_records | income_tax, local_income_tax |
| manual | allowance / manual | source 없음 → allowance_records, deduction_records | fixed_amount, unit_1 |
Open Question
- 카드 config 배지("No Configs"/"Manual")와 tenant config 연결 상태 = TBU
- 인센티브 taxonomy 정렬: fixed_incentive output keys와 HBMD live enum·HBTM 카테고리 정본 매핑 = TBU
- list 필터/검색/정렬 UI 존재 여부 = TBU