Skip to content

HBMM220_Test Calculator

(Hereby) Module Manager > Test Calculator

Module Manager (HBMM)
대상 사용자조건1 [Module Manager 조회 권한]
프로토타입TBU
관련 정책[[POL_급여정본경계]] · [[POL_AI안전경계]]
Statusreview
Owner카나 (PM)

개요

  • 모듈 상세([[HBMM210_모듈 상세 (Output Keys)]]) 우측 하단에 노출되는 Test Calculator다. 특정 직원·연도·월로 calculator를 실제 실행해 계산 결과를 확인하는 e2e 검증 용도다.
  • 입력: 직원 검색(placeholder "이름, 이메일, 사번 검색...") → 후보 버튼(예 "최콸 FIRMA005") 선택 → 확인 카드(이름 / 사번 / 입사일) 노출 + 연도·월(number, 기본값 현재 연/월) · "실행". 동작: "직원 선택 → 급여 생성 → 계산 결과 확인". "실행"은 직원 선택 전 disabled다.
  • 실행 결과 뷰: "성공 {n}ms"(응답 소요 시간) + "Raw JSON" 토글 + items / totalRecords. 대상 직원에 계약 데이터가 없으면 items는 빈 배열, totalRecords 0으로 반환된다.
  • 핵심 경계: "실행"은 조회가 아니라 급여 record 생성 mutation이다. Registry 다른 화면(read-only)과 달리 유일한 mutation 접점이므로 사람이 실행하며, AI 자동 실행은 금지한다 ([[POL_급여정본경계]] · [[POL_AI안전경계]]).

문서 히스토리

날짜작성자변경 내용
2026-07-06카나PM최초 작성
2026-07-10카나PM라이브 기능 검토 반영
2026-07-12카나PM실행 검증 반영 (콸 승인)
2026-07-13카나PM버튼 행동 명세 보강
2026-07-21카나PMGC700 깊이 재작성 + 확정 스타일 (실행 검증 상세 반영)

Data I/O

Server → Client

변수엔티티.컬럼값 없을 때비고
$employees (이름/이메일/사번)후보 없음검색 결과 후보 버튼
$employees (이름/사번/입사일)미선택 시 hide확인 카드
$calculator.calculate() 반환실행 전 hide"성공 {n}ms" + Raw JSON 토글 + items / totalRecords. 계약 데이터 없으면 items empty · totalRecords 0

Client → Server

액션전달 값tRPC procedure권한 토큰
직원 검색검색어(이름/이메일/사번)employee search (추정)Module Manager 조회 (추정)
실행 (mutation, 사람 실행)employeeId, year(2026), month(7)급여 record 생성 (추정) · destructive — allowance/deduction record 생성 가능payroll-mutating (추정)

외부 통합 (cross-app)

외부 시스템데이터동기/비동기
HR 급여 관리 ([[HBHR200_급여대장 시트]])생성된 record가 급여 시트 ƒ / commit 대상과 동일 계층mutation 대상 공유

화면 플로우

Test Calculator 사양표

번호항목/기능명타입사양 및 기능 설명연관/영향 범위비고
00노출 조건-• 모듈 상세 detail render 후 우측 하단에 Test Calculator 노출[[HBMM210_모듈 상세 (Output Keys)]]
01초기 상태-• 안내 "직원 선택 → 급여 생성 → 계산 결과 확인". 직원 미선택 → "실행" disabled-
10직원 검색Input• 직원을 이름/이메일/사번으로 찾는 입력. placeholder "이름, 이메일, 사번 검색..."
• 입력 시: 후보 버튼 목록 노출
 - STEP1 후보 버튼(예 "최콸 FIRMA005") 선택
 - STEP2 대상 직원 확정 → 확인 카드(ㄴ11) 노출
employees
ㄴ11선택 직원 확인 카드Card• 선택 직원 신원 확인 카드
• 표시: 이름 / 사번 / 입사일
employees선택 확인
20연도Input(number)• 계산 대상 연도 입력. number, 기본값 현재 연도
• 입력 시: 대상 연도 갱신
-기본 현재
30Input(number)• 계산 대상 월 입력. number, 기본값 현재 월
• 입력 시: 대상 월 갱신
-기본 현재
40실행Button• 선택 직원·연/월로 calculator를 실제 실행하는 기능. 직원 선택 전 disabled
• 클릭 시: 급여 record 생성 → 계산 결과 확인(50)
 - CASE01 [계약 데이터 있음]: 결과 "성공 {n}ms" + items 존재 · totalRecords > 0
 - CASE02 [계약 데이터 없음]: 결과 "성공 {n}ms" + items empty · totalRecords 0
destructive · allowance_records/deduction_records선택 전 disabled · 사람 실행
50실행 결과Output• 실행 후 결과 뷰
 - STEP1 "성공 {n}ms" (응답 소요 시간)
 - STEP2 "Raw JSON" 토글 (원본 응답 펼침)
 - STEP3 items / totalRecords 표시. 계약 데이터 없으면 items empty · totalRecords 0
calc_result07-12 실행 검증 반영

권한·상태 분기 요약

시나리오트리거결과비고
CASE01 [실행·계약 있음]직원 선택(실행 활성) + "실행"급여 record 생성, 결과 "성공 {n}ms" + Raw JSON + items/totalRecords > 0destructive, 사람 실행
CASE02 [실행·계약 없음]계약 데이터 없는 직원 + "실행""성공 {n}ms" + items empty · totalRecords 007-12 검증 관찰
CASE03 [선택 전]직원 미선택"실행" disabled선택 전 비활성
CASE04 [AI 자동실행]AI 호출금지 (payroll-mutating)[[POL_AI안전경계]]

Open Question

  • "실행" 시 생성되는 급여 record의 정본성(테스트 record vs 실 record 구분), 롤백/삭제 경로 = TBU
  • Test Calculator 실행 권한 token 및 audit 기록 여부 = TBU
  • 테스트 조직/급여 파이프라인 검증 UI가 별도 존재하는지 = TBU