HBMM000_Module Manager (앱 개요)
(Hereby) Module Manager > 앱 개요
| 앱 | Module Manager (HBMM) |
| 대상 사용자 | 조건1 [Module Manager 조회 권한] |
| 프로토타입 | TBU |
| 관련 정책 | [[POL_급여정본경계]] · [[POL_AI안전경계]] |
| Status | review |
| Owner | 카나 (PM) |
개요
- Module Manager는 일반 운영앱이 아니라 급여 계산기의 등록 상태와 I/O 계약을 보여주는 Calculator I/O Registry다. 라이브 앱명 "Module Manager", 운영 URL https://okbest.dev.hereby.me/module-manager/.
- 9개 calculator가 모두 구현 상태이며, 각 module의 source table · target table · output key · parameter schema · default parameter를 확인할 수 있다. Donue 관점에서는 급여 계산 엔진 + AI tool 카탈로그의 SoT다.
- 각 calculator의 outputKeys + parameterSchema + sourceTables + targetTables가 HR 시트 ƒ 수식 · 급여 calculator · AI tool catalog의 backbone이 된다. module.key ≒ tool id 등 6종 field→tool 매핑으로 tRPC procedure ≒ 권한토큰 ≒ AI tool 라인을 registry 수준에서 실체화한다.
- 핵심 경계: Module Manager는 현재 read-only registry다. calculator/config/rule 변경 UI는 미확인이며, AI 또는 사용자 action이 바로 allowance/deduction records · payroll ledger를 변경하면 안 된다 ([[POL_급여정본경계]] · [[POL_AI안전경계]]). 변경이 생기면 preview → approval → audit → versioned deploy 흐름이 필요하다.
문서 히스토리
| 날짜 | 작성자 | 팀 | 변경 내용 |
|---|---|---|---|
| 2026-07-06 | 카나 | PM | 최초 작성 |
| 2026-07-10 | 카나 | PM | 라이브 기능 검토 반영 |
| 2026-07-21 | 카나 | PM | GC700 깊이 재작성 + 확정 스타일 (메타/Data I/O 분리 · mermaid 복원) |
Data I/O
Server → Client
| 변수 | 엔티티.컬럼 | 값 없을 때 | 비고 |
|---|---|---|---|
| $ | moduleRegistry.list → CalculatorModule[] | empty | calculator module 배열 (9) |
| $ | 구현 calculator 수 | 0 | Summary 배지 "Calculator: 9" |
| $ | 미구현 module 수 | 0 | Summary 배지 "미구현: 0" |
| $ | allowance tenant config 수 | 0 | Summary 배지 "수당설정: 0" |
| $ | deduction tenant config 수 | 0 | Summary 배지 "공제설정: 0" |
| ${module.key} / ${module.name} / $ | module 식별/명칭/유형 | - | 예 employment_contract · 근로계약 (Employment Contract) · allowance/deduction |
| ${module.sourceTables} / $ | I/O 계약 원천·기록 테이블 | [] | 없으면 [] |
| $ | calculator.calculate() 반환 키 | [] | HR 시트 ƒ column · tool output schema |
| ${module.parameterSchema} / $ | 계산 파라미터 스키마·기본값 | {} | 요율 코드 내장 |
| ${module.allowanceConfigs} / $ | tenant config binding | 0 (현재) | 미사용 |
| $ | module 상태 | - | configured / manual |
Client → Server
| 액션 | 전달 값 | tRPC procedure | 권한 토큰 |
|---|---|---|---|
| registry 조회 / 새로고침 | null | sdk.moduleRegistry.list() (read-only) | Module Manager 조회 (추정) |
| module 선택 | module.key | URL hash 변경 (예 #payroll_rate_config), mutation 없음 | client (권한 없음) |
| calculator/config 수정 | TBU | TBU (live 미확인) | TBU |
외부 통합 (cross-app)
| 외부 시스템 | 데이터 | 동기/비동기 |
|---|---|---|
| HR 급여 관리 ([[HBHR200_급여대장 시트]]) | 컬럼 ƒ 수식 ↔ calculator output key 참조 (9 calculator) | 참조 (동기) |
| Time Management (HBTM) | 연장/야간/휴일 근무 → overtime_record source | source 공급 |
| Medical (HBMD) | 치료일 인센티브 · fixed_incentive taxonomy source | source 공급 |
| AI Interface | calculator I/O 계약이 self-describing tool 정의로 파생 (toolCatalogGen 등) | 파생 (메타) |
화면 플로우
Module Manager는 read-only registry — I/O 계약·파라미터·output key metadata의 SoT. Calculator compute·commit·Ledger 변경은 항상 사람이 실행한다.
앱 개요 사양표
| 번호 | 항목/기능명 | 타입 | 사양 및 기능 설명 | 연관/영향 범위 | 비고 |
|---|---|---|---|---|---|
| 00 | 화면 진입 조건 | - | • 조건1 [Module Manager 조회 권한] 시 노출• 미인증/무권한 시: "AccessDenied" 전환 (내부 key TBU) | Module Manager 권한 | TBU: AccessDenied 내부 key |
| 10 | 정체성 | - | • 급여 계산기의 등록 상태와 I/O 계약을 보여주는 Calculator I/O Registry • 급여 계산 엔진 + AI tool 카탈로그 SoT | - | 라이브명 "Module Manager" |
| 20 | field→tool 매핑 | - | • registry field를 AI tool 요소로 매핑하는 6종 계약 - module.key ≒ tool id - sourceTables ≒ tool input source - parameterSchema ≒ tool args schema - defaultParameters ≒ default config - outputKeys ≒ HR 시트 ƒ column · tool output schema - targetTables ≒ mutation/commit target | 전 calculator | self-describing tool |
| 30 | tool safety 3단 | - | • calculator/tool을 3단으로 분류해 AI 호출 허용 surface 결정. 전 앱 AI 안전경계 SoT - read-safe [조회·설명·추적] - preview-only [dry-run·시뮬레이션] - payroll-mutating [급여 record 생성·commit] | 전 AI 앱 | [[POL_AI안전경계]] |
| 40 | 요율 코드 내장 | - | • 4대보험(payroll_rate_config)·소득세 요율이 default parameter로 코드 내장 • 우측 상세 "사용 Config = 미사용"이 이를 노출 • config 동적변경 미연동 → 요율 config화 Donue P1 | [[HBMM210_모듈 상세 (Output Keys)]] | P1 |
| 50 | AI 접점 요약 | - | • calculator registry 한 곳에서 self-describing tool 자동 파생. AI는 read/explain/trace/diagnose/preview까지만 - toolCatalogGen [카탈로그 자동생성] - calc.tracePayrollKey [explain/trace] - calc.explainModule [모듈 설명] - calc.findMissingConfig [config 진단] - calc.compareRuleVersion / calc.simulatePayrollImpact [dry-run] - toolSafetyClassify [안전 분류] | AI Interface | backbone |
| 60 | 화면 목록 (I.A.) | - | • Module Manager 하위 화면 4종 - [[HBMM100_Shell·Summary]] - [[HBMM200_모듈 레지스트리 목록]] - [[HBMM210_모듈 상세 (Output Keys)]] - [[HBMM220_Test Calculator]] | 앱 하위 화면 | |
| 70 | cross-app 연결 | - | • 외부 앱과의 데이터 연결 - HR 급여 관리 [ƒ 수식 ↔ output key] - HBTM [overtime source] - HBMD [치료일 인센티브·fixed_incentive taxonomy] - AI Interface [tool 카탈로그] | Data I/O 외부 통합 참조 |
정본 계층 / 안전 경계
| 계층 | 역할 | 정본성 |
|---|---|---|
| Module Registry | 계산기 I/O 계약·파라미터·output key metadata | metadata SoT |
| Calculator | source table + parameter로 output 계산 | deterministic compute |
| Allowance / Deduction Records | commit으로 생성되는 계산 결과 record | payroll component SoT |
| Payroll Sheet | 계산/검토 workspace, ƒ column 표시 | 작업공간 |
| Payroll Ledger | 확정/회계 export 기준 | 법정/회계 정본 |
Open Question
- 인센티브 taxonomy 정렬: fixed_incentive output keys(rehabilitation/nursing/sports_medicine/home_visit/assessment/on_call/other)와 HBMD live enum·HBTM 카테고리의 정본 매핑 = TBU
- 4대보험 요율의 법정 적용시점/버전관리 위치, allowanceConfigs/deductionConfigs 0개가 정상인지 tenant config 미연결인지 = TBU
- output key registry → AI tool catalog 자동생성의 P1 범위, tool safety 분류 기준 정본화 = TBU
- calculator 신규 추가/노코드 룰빌더 가능 여부, calculator registry 변경 권한과 배포 승인 workflow = TBU