Skip to content

[Task][P1] 전체 Intent 업무 유형·사업장 공통 대상 확장 #85

Description

@hywznn

한 줄 목표

현재 세 가지 연장 Task만 가능한 구조를 보완해 문서 요청·입사·급여 설명·고용변동·업무지시를 표현하고, 근로자가 아직 정해지지 않은 사업장 공통 Task도 안전하게 처리합니다.

Intent와 Task를 구분합니다

  • EXPIRY_RENEWAL Intent는 재계약·취업활동기간 연장·체류기간 연장 Task 세 개로 분해합니다.
  • DOCUMENT_REQUEST, WORKER_ONBOARDING, PAYROLL_EXPLANATION, EMPLOYMENT_CHANGE, WORK_INSTRUCTION은 canonical Workflow와 대응 Task type으로 연결합니다.
  • OUT_OF_SCOPE는 Task를 만들지 않습니다.
  • AI Intent 이름을 Task 상태나 Workflow ID로 복사하지 않고, Server가 활성 Workflow Catalog와 허용 목록으로 검증합니다.

API 영향

새 endpoint를 만들지 않고 기존 Task API의 요청·응답과 filter를 확장했습니다.

  • GET /api/v1/tasks
  • POST /api/v1/tasks
  • GET /api/v1/tasks/{taskId}
  • PATCH /api/v1/tasks/{taskId}

구현 범위

  • Task type과 canonical Workflow ID 매핑을 확장했습니다.
  • target_type = WORKER | COMPANY 대상 모델을 도입했습니다.
  • WORKER 대상은 worker_id·case_id 필수, COMPANY 대상은 두 값이 없어야 한다는 DB CHECK를 추가했습니다.
  • nullable worker_id에서도 company_id tenant 격리를 유지합니다.
  • TaskSourceFILE_IMPORT, WORKER_RESPONSE를 추가했습니다.
  • 목록에서 task_type·source·target_type 필터를 지원합니다.
  • AI candidate 채택 시 활성 Workflow Catalog에 있는 허용된 Workflow만 Task로 생성합니다.
  • 기존 세 연장 Task와 API 호환성을 유지했습니다.

완료 조건

  • 대표 7 Intent 중 OUT_OF_SCOPE를 제외한 업무를 검증된 Task/Workflow로 표현할 수 있습니다.
  • EXPIRY_RENEWAL 후보 하나에서 필요한 세 Task가 같은 Case 아래 생성됩니다.
  • WORKER/COMPANY 대상 규칙을 DB와 Service가 모두 검증합니다.
  • 타 사업장 대상 연결과 존재하지 않는 Worker 연결이 차단됩니다.
  • 기존 Task·Approval·Worker Link 테스트가 깨지지 않습니다.
  • OpenAPI에 type·source·target 계약과 오류 규칙이 반영되어 있습니다.

이번 이슈에서 하지 않는 것

  • 새로운 Task 상태 추가
  • AI 결과 자동 승인·자동 발송
  • Workflow Catalog 원본 수정
  • Client 화면 구현

완료 검증

관계

Metadata

Metadata

Assignees

Labels

area:serverSpring Boot API·도메인·DB·tenant·Task Workflow 영역; Prompt·모델·Provider 구현 제외priority:P1핵심 작업 다음으로 처리할 중요 작업type:feature사용자 또는 Agent가 사용하는 기능 개발

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions