Skip to content

시트 AI와 변경 검토 ​

제품 개발 기록 · 시트 사용 가이드 · 급여 시트 · 공통 AI 패널 · 시스템 운영

역할·진입·조건 ​

항목내용
사용자해당 시트와 조직의 AI 실행 권한을 가진 담당자
진입HR 급여 시트 오른쪽 아래 AI 버튼. 관리자에 포함된 시트도 HR의 시트 도우미를 사용합니다.
조건조직의 AI 및 시트 모듈 설정, 실행 권한, 제공자 설정과 사용 한도가 충족돼야 합니다. 쓰기에는 시트 편집 권한과 작업 단계 검사가 추가됩니다.
컨텍스트열어 둔 시트·월·선택 범위·열 정보. 질문 전에 실제 대상을 확인합니다.

질문과 답변 확인 ​

  1. 대상 월과 시트를 열고 필요한 행·셀을 선택합니다. AI 패널에서 최초 사용량 안내를 읽고 구체적인 질문을 전송합니다. 읽기 도구는 해당 조직의 허용된 시트와 업무 자료를 조회합니다.
  2. 선택 셀·수식·직원 연결을 설명하거나 시트 구조·급여 작업의 다음 단계를 물을 수 있습니다. 답변을 현재 화면 값과 비교합니다. 도구가 제공하는 급여 진행 정보가 반영·확정을 수행했다는 뜻은 아닙니다.
  3. 입력·출력 사용량과 한도 경고를 확인합니다. 80%·100% 구간의 안내와 전송 거절은 구분합니다. 최초 안내의 다시 표시하지 않기 설정과 새 대화·이전 대화는 공통 패널에 있습니다.
  4. 응답 실패나 부정확한 답변은 해당 카드의 「문제 신고」로 신고 창을 엽니다. 대화·메시지 문맥이 연결되며, 실제 전송 전에 내용과 첨부 화면을 검토합니다. 실패한 질문도 운영 모니터에서 조사할 수 있습니다.

변경 제안·적용·취소 ​

  1. 변경할 값이나 열 구성을 명시합니다. 제안 카드에서 대상 행·셀, 전후 값·합계, 추가·수정할 열과 수식, 위험 안내를 검토합니다. 미리보기의 일부 생략 표시는 전체 대상이 아니라 표시 제한입니다.
  2. 「취소」하면 제안을 거절하고 시트에는 적용하지 않습니다. 위험 확인이 필요한 제안은 「위험 항목을 확인했어요」를 체크한 뒤 「적용」합니다. 단순 질문·응답만으로 쓰기를 승인하지 않습니다.
  3. 적용 시 권한·조직·시트 단계·보호·기준 버전을 다시 검사합니다. 제안 뒤 다른 변경으로 기준이 달라지면 기존 카드에 반복 적용하지 말고 최신 시트에서 다시 검토합니다. 원천 자료까지 바꾸는 셀은 이 일괄 변경 경로에서 제한됩니다.
  4. 적용 뒤 시트의 값·열과 「히스토리」의 해당 변경을 확인합니다. 열 수식을 바꾸는 제안에서도 기존 수식 열의 종류가 유지됩니다. 적용된 AI 변경과 일반 셀 편집의 실행 취소 이력은 별개입니다.
  5. 카드나 히스토리에서 「되돌리기」합니다. 적용 뒤 다시 수정된 셀과 충돌하면 해당 셀은 유지될 수 있습니다. 충돌 안내와 남은 값을 확인합니다. 파일 가져오기 되돌리기는 시트 전체를 휴지통으로 이동하는 별도 결과입니다.

구현 관계 ​

  • HR 표시·컨텍스트: apps/hr-system/src/views/dashboard.html, sheets/workbook/ai-context.ts.
  • 공통 패널·위험 확인·실패 신고: packages/components/html/ai-assistant.html, packages/components/src/components/AiAssistant.ts.
  • 실행과 보관: packages/api/src/routers/ai.router.ts, 시트 변경 세트 라우터·서비스. 제안과 실제 적용을 분리하며 조직·시트 권한은 도구 실행과 변경 적용에서 각각 확인합니다.
  • 시트 재조회·히스토리·되돌림: apps/hr-system/src/sheets/workbook/change-sets.ts.

검토 근거와 남은 확인 ​

PR #810·#812·#815·#821·#822·#824·#827·#850·#853·#863·#872의 소스와 사용자 화면 정의를 대조했습니다. 이전 회차의 영상은 AI 진입·첫 안내·질문 초안·빈 대화 목록까지만 담았습니다.

이번 추가 촬영에서는 개인정보 없는 예제 조직에 사용자가 허용한 모델 설정을 연결했습니다. 실제 질문으로 단일 선택 열과 선택지 제안을 받고, 위험 확인 후 적용해 새 열에서 값을 선택·저장했습니다. 별도 제안을 취소한 뒤 열이 추가되지 않은 것도 확인했습니다. 샘플 응답이나 인위적인 성공 카드는 사용하지 않았습니다. 파일별 검증과 연결 대기는 추가 촬영 원장에 기록합니다.

충돌이 있는 되돌림, 예약 제안 승인·실행, 사용 한도 도달, 신고 전송은 이 영상들에 포함되지 않습니다. 기존 공개 영상의 URL·번호·시각은 새 촬영본의 최종 업로드 주소를 확인하기 전까지 유지합니다.

예약 제안·열 추가와 입력 ​

날짜를 정한 변경을 요청하면 즉시 적용 카드 대신 예약 변경의 제안을 받을 수 있습니다. 대상 직원·시트·칸, 시행일/시행월, 새 값, 승인 상태를 확인한 뒤 승인합니다. 제안 생성·승인·시행일 실행은 별도 단계이며 취소는 적용된 값을 되돌리지 않습니다.

열 추가 제안은 요청한 순서대로 새 열을 이어 넣고, 사용하지 않는 이름 없는 빈 열의 정리를 함께 제안할 수 있습니다. 삭제 개수와 위험 확인을 읽고 적용하세요. 값·수식·메모·참조가 있는 열까지 모두 빈 열로 보는 것은 아닙니다. 히스토리의 적용·되돌리기 후 실제 표·합계·칸 이력을 확인합니다.

질문은 Shift+Enter로 줄바꿈할 수 있고 붙여넣은 표·긴 글은 첨부가 될 수 있습니다. 일반 AI와 동일한 입력·복원·문제 신고 절차를 사용합니다. PR #983·#1019·#1025의 구현을 확인했습니다. 선택형 열 제안 카드의 생성·적용·취소는 추가 촬영했고, 예약 카드의 승인·시행일 실행과 충돌 복원은 별도 후속 검증 범위입니다.

선택지를 포함한 열 변경 제안 ​

열 이름과 단일·다중 선택 여부, 선택지를 함께 질문합니다. 예를 들어 「교육방식 열을 단일 선택으로 만들고 선택지는 대면, 온라인으로 해 줘」라고 입력합니다. 제안 카드의 종류와 선택지를 읽고 필요한 위험 확인 후 적용합니다. 실제 열의 칸을 열어 두 선택지가 보이는지, 고른 값이 저장되는지 확인합니다. 제안 취소는 열을 만들거나 기존 값을 바꾸지 않습니다.

선택지가 빠진 요청은 빈 목록인 열을 만드는 것으로 완료하지 않고 선택지를 보완해야 합니다. PR #1038는 도구 입력에 선택지를 전달하고 미리보기에 표시 형식과 선택지를 보여 줍니다. 계획기는 선택지 없는 선택형 전환을 거부하고 중복 선택지를 정리합니다. 적용은 기존 시트 권한·작업 단계 검사를 따릅니다.

구현 연결은 ai/tools/sheet-change.tools.ts, sheet-change-set.layout.ts, ai/prompts/sheet.ts입니다. 화면의 단일 선택과 같은 저장 형식으로 정규화하며, 질문만으로 실제 쓰기가 일어나지 않습니다.