--- name: hwpx-form-fill description: HWPX 양식에서 요청한 항목을 찾아 입력하거나 필요한 정보를 질문할 때 사용합니다. --- # 양식 채우기 - 사용자 요청과 제공된 정보를 먼저 사용합니다. 모르는 값은 그대로 두고 꼭 필요한 정보만 묻습니다. - 전체 작성을 요청했을 때만 관련 항목을 나눠 질문합니다. 고정된 5개 배치나 전체 필드 인터뷰는 필수가 아닙니다. - 먼저 `analyze_document`를 호출하고 반환된 `next_action`을 따릅니다. `next_action`이 `confirm_visual_candidates`이면 `confirm_visual_candidates(path, candidates=[])`를 호출한 뒤 `list_document_fields`로 실제 field_id, target_id, current_text와 선택지를 확인합니다. 필요하면 cursor/limit으로 나눕니다. - `preview_field_section`의 `current_field_id`와 `field_ids`에는 반드시 `list_document_fields`가 반환한 `field_id`만 사용합니다. `section0.table…` 원시 셀 ID나 `target_id`를 대신 넣지 않습니다. - 전체 작성·테스트값 자동 입력은 사용자가 값을 모두 제공했어도 위치 확인부터 시작합니다. 최초 요청에 포함된 값은 위치 승인이 아닙니다. - 요청 항목을 가까운 2~4개씩 묶고, 각 묶음마다 편집 전에 `preview_field_section(path, current_field_id, field_ids)`을 호출합니다. 신청 종류처럼 한 질문에 여러 선택지가 속하면 개수 제한 없이 그 선택지를 모두 `field_ids`에 넣습니다. 반환된 `preview_path` 문자열을 축약하거나 `~`로 바꾸거나 새 파일명을 만들지 말고, 도구가 반환한 실제 절대경로 값으로 `![현재 질문 위치](/Users/.../실제-preview.png)`를 만들어 답변에 넣습니다. 문자 그대로 `(preview_path)`라고 쓰지 않습니다. “파란 박스 위치들이 맞나요?”라고 물은 뒤 답변을 기다립니다. 미리보기를 본 뒤 사용자가 맞다고 답한 경우만 위치 승인으로 인정하며, 이미 받은 값은 다시 묻지 않습니다. - 요청한 모든 묶음의 위치를 확인받기 전에는 `create_edit_plan`을 호출하지 않습니다. 위치가 틀렸다는 답을 받으면 해당 묶음만 바로잡아 다시 보여줍니다. - 도구 작업 내역에 이미지가 보인다고 가정하지 않습니다. 사용자 답변 본문에 `preview_path` 이미지를 넣지 않았다면 미리보기를 보여준 것이 아닙니다. - 사용자가 한 번에 여러 값을 답하면 받은 값을 함께 반영하고 이미 답한 질문은 다시 묻지 않습니다. - 사용자가 파란 박스가 빠졌거나 잘못됐다고 하면 그 미리보기는 거절된 것입니다. 값 저장과 문서 편집을 멈추고, 기존 필드 중 잘못 고른 경우 `list_document_fields`로 대상들을 다시 확인한 뒤 올바른 `current_field_id`와 질문에 포함된 모든 `field_ids`로 미리보기를 다시 보여줍니다. 사용자가 “오른쪽이 아니라 아래”처럼 방향을 명확히 교정하면 다시 묻지 말고 `correct_field_mapping(path, field_id, relation="below"|"right")`을 호출한 뒤 `preview_field_section`으로 수정된 위치를 보여줍니다. 어느 칸인지 모호하거나 도구가 해당 방향에서 빈 칸을 찾지 못한 경우에만 항목명이나 문서상 위치를 짧게 묻습니다. 수정된 미리보기를 확인받은 뒤에만 해당 답을 저장합니다. - 시각 위치가 없는 필드는 미리보기 실패 때문에 인터뷰 전체를 중단하지 말고 항목명과 문서 위치를 글로 설명합니다. 전체 A4 이미지는 사용자가 요청하거나 최종 결과를 확인할 때만 보여줍니다. - 전체 양식 인터뷰 중에는 받은 값을 `update_field_interview`에 저장하고, 사용자가 요청한 질문이 끝날 때까지 `create_edit_plan`·승인·적용을 시작하지 않습니다. 단일 필드의 즉시 수정이나 사용자가 중간 결과 파일을 명시적으로 요청한 경우에도 그 필드의 파란 박스 위치 확인은 먼저 받습니다. - 편집 목록에는 변경할 항목만 넣습니다. 미지정 항목은 그대로입니다. 공란 유지와 기존 값 삭제는 다르므로 삭제를 요청했을 때만 빈 값 편집을 추가합니다. - dispositions는 선택 사항입니다. 편집 대상은 기본 provided입니다. 공용란·서명란·해당 없는 항목은 보존하며, 각각 상태를 기록하느라 호출을 반복하지 않습니다. - 체크박스는 도구가 받는 선택값을 사용합니다. 라벨 전체를 체크 기호로 바꾸지 않습니다. - 테스트/데모에는 가상 값을 사용할 수 있습니다. 테스트용임을 분명히 하고 실제 제출 정보로 표현하지 않습니다. 서명·사진은 사용자가 제공하거나 명시한 자산만 사용합니다. - 계획의 실제 operations와 설명한 변경 목록을 대조합니다. 한 항목 계획으로 전체 작성 승인을 요청하지 않습니다. - 수정 범위가 명확히 요청됐다면 `approve_edit_plan(user_confirmed=True)`로 채팅 승인을 기록하고 적용합니다. - 이 경로에서 `register_document`, workflow용 상태 조회·재시도 도구를 섞지 않습니다. 별도 workflow_id 오류를 해결하려고 현재 `local_path` 양식 작업을 버리지 않습니다.