Skip to content

fix: WAITING_WORKER 데모 업무카드에 승인 이력 추가 - #147

Merged
hywznn merged 6 commits into
mainfrom
fix/demo-waiting-worker-approval-seed
Aug 12, 2026
Merged

fix: WAITING_WORKER 데모 업무카드에 승인 이력 추가#147
hywznn merged 6 commits into
mainfrom
fix/demo-waiting-worker-approval-seed

Conversation

@BcKmini

@BcKmini BcKmini commented Aug 12, 2026

Copy link
Copy Markdown
Member

문제

라이브 시나리오 테스트 중 "여권 사본 제출 대기"(94000000-...003) 등 WAITING_WORKER 상태 업무카드에서 "근로자 보안 링크 발급·재발급"이 항상 422 TASK_NOT_APPROVED로 실패하는 걸 발견했다 (#146).

원인

데모 시드가 업무 3, 8(retired), 10, 11번을 NEEDS_INFO → DRAFT → WAITING_WORKER 경로로 직접 WAITING_WORKER 상태로 만들어, READY_FOR_REVIEW/APPROVED 단계를 건너뛰었다. 그래서 대응하는 ApprovalRequest가 없다. 실제 앱 로직(WorkerLinkService.issue())에서는 APPROVED 상태 + 유효한 ApprovalRequest 없이는 절대 WAITING_WORKER로 갈 수 없으므로, 이 데모 데이터는 실제 애플리케이션이 만들 수 없는 상태 조합이었다.

수정

  • DemoTaskWorkflowSeedCatalog.transitionPath(): 3/8/10/11번 업무에 READY_FOR_REVIEW, APPROVED 단계 추가
  • DemoTaskWorkflowSeedCatalog.demoApprovals(): 3/10/11번 업무(실제 노출되는 3개, 8번은 golden-flow 데모에서 이미 retired 처리되어 제외)에 APPROVED 승인 이력 추가
  • DemoOperationalSeedCatalog: 늘어난 approval_request/task_transition_history/audit_event 카운트 및 actor_type·status 분포 assertion 갱신, retired golden-flow audit id 목록 갱신
  • DemoOperationalSeedCatalogTest, DemoAuthSeedIntegrationTest: 동일하게 카운트/분포 기댓값 갱신

검증

  • ./gradlew test 전체 통과 확인 (기존 574개 + 관련 테스트 모두 green)
  • 로컬 서버 기동 후 브라우저로 "여권 사본 제출 대기" 업무에서 보안 링크 재발급 성공 재확인 예정 (머지 후 재검증)

Test plan

  • ./gradlew test 전체 통과
  • 로컬 데모 환경에서 근로자 보안 링크 재발급 실제 클릭 재확인

Closes #146

여권 사본 제출 대기 등 WAITING_WORKER 상태로 시딩된 업무카드가 실제로는
APPROVED 단계를 거치지 않아 대응하는 ApprovalRequest가 없었고, 그 결과
근로자 보안 링크 발급·재발급이 항상 422(TASK_NOT_APPROVED)로 실패했다.

transitionPath에 READY_FOR_REVIEW/APPROVED 단계를 추가하고 해당 업무들의
APPROVED 승인 이력을 시딩해 실제 애플리케이션 흐름과 일치시켰다.

Fixes #146
WAITING_WORKER 업무 승인 이력 추가로 늘어난 approval_request/
task_transition_history/audit_event 카운트를 반영.
hywznn
hywznn previously approved these changes Aug 12, 2026
@hywznn

hywznn commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

감사합니다

WorkerLinkViewController·WorkerLinkDocumentController·WorkerResponseController가
다른 모든 컨트롤러와 달리 /api/v1 접두사 없이 매핑되어 있어, 클라이언트가 실제로
호출하는 /api/v1/public/worker-links/** 경로에서는 SecurityConfig의 permitAll
규칙이 매칭되지 않고 인증이 필요한 규칙으로 떨어졌다. 근로자가 링크로 안내를
조회하거나 서류를 제출하는 흐름 전체가 실제 배포 환경에서 항상 실패하는 상태였다.

세 컨트롤러 매핑과 SecurityConfig의 permitAll 매처에 /api/v1 접두사를 추가하고,
같은 버그를 잡아내지 못했던 통합 테스트의 경로도 실제 API와 일치시켰다.

Fixes #148
hywznn
hywznn previously approved these changes Aug 12, 2026
@hywznn
hywznn merged commit a868a03 into main Aug 12, 2026
4 checks passed
@hywznn
hywznn deleted the fix/demo-waiting-worker-approval-seed branch August 12, 2026 08:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

데모 시드의 WAITING_WORKER 업무카드에 승인 이력이 없어 근로자 보안 링크 재발급이 항상 실패함

2 participants