Skip to content

[DP-465] 채용 상세 부족 역량 추천 — 파싱 미완료 공고 빈 배열 반환 버그 수정#163

Merged
nYeonG4001 merged 1 commit into
developV2from
feature/DP-465-skill-gap-pending-fallback
May 7, 2026
Merged

[DP-465] 채용 상세 부족 역량 추천 — 파싱 미완료 공고 빈 배열 반환 버그 수정#163
nYeonG4001 merged 1 commit into
developV2from
feature/DP-465-skill-gap-pending-fallback

Conversation

@nYeonG4001
Copy link
Copy Markdown
Collaborator

Summary

  • parseStatus = PENDING/FAILED인 공고(requiredSkills = [])에서 skillGap() 호출 시 roadmap: [], contents: []가 반환되는 버그 수정
  • requiredSkills가 비어 있으면 techStack으로 폴백해 missing_skills 계산 후 FastAPI에 전달
  • missing이 비어 있는 경우(스킬 전부 보유)에도 techStack 기준으로 콘텐츠 추천 (기존에는 early return으로 빈 배열 반환)

변경 파일

파일 변경 내용
JobService.java skillGap()baseSkills 폴백 로직 추가, recommendContents() 파라미터 contentSkills로 분리
JobSkillGapServiceTest.java 신규 단위 테스트 4개 (PENDING 폴백, 스킬 전부 보유, 일부 미보유, 모두 비어있는 경우)

원인 요약

requiredSkills = []  →  missing = []  →  FastAPI missing_skills: []  →  roadmap: []
                                       →  recommendContents([]) early return  →  contents: []

수정 내용

// before
List<String> missing = p.getRequiredSkills().stream()
        .filter(s -> !skillMet(userSkills, s)).toList();
List<ContentPickResponse> picks = recommendContents(missing);

// after
List<String> baseSkills = p.getRequiredSkills().isEmpty() ? p.getTechStack() : p.getRequiredSkills();
List<String> missing = baseSkills.stream()
        .filter(s -> !skillMet(userSkills, s)).toList();
List<String> contentSkills = missing.isEmpty() ? p.getTechStack() : missing;
List<ContentPickResponse> picks = recommendContents(contentSkills);

Test plan

  • skillGap_pendingJob_usesTechStackForMissingSkills — PENDING 공고에서 techStack이 AI missing_skills로 전달됨
  • skillGap_allSkillsMet_recommendsContentByTechStack — 스킬 전부 보유 시 techStack으로 콘텐츠 추천
  • skillGap_partialMissing_usesMissingSkillsForAiAndContent — 일부 미보유 시 missing 스킬 기준 정상 동작
  • skillGap_emptyRequiredAndEmptyTechStack_returnsEmptyContent — 둘 다 비어있을 때 빈 배열 반환 (edge case)
  • ./gradlew build 전체 통과

- requiredSkills가 빈 경우(PENDING/FAILED) techStack으로 폴백해 missing 계산
- missing이 빈 경우(스킬 모두 보유) techStack 기준으로 콘텐츠 추천
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 7, 2026

@nYeonG4001 nYeonG4001 merged commit 82ad386 into developV2 May 7, 2026
4 checks passed
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.

1 participant