Skip to content

feat: GitHub 레포지토리 목록 조회 및 등록#18

Merged
i3months merged 14 commits into
feature/us-05-06-resumefrom
feature/us-07-github-repository
May 19, 2026
Merged

feat: GitHub 레포지토리 목록 조회 및 등록#18
i3months merged 14 commits into
feature/us-05-06-resumefrom
feature/us-07-github-repository

Conversation

@csh1668

@csh1668 csh1668 commented May 15, 2026

Copy link
Copy Markdown
Contributor

변경 사항

코어 서버를 개선했습니다.

코어 서버에 GitHub 레포지토리 관련 CRUD를 추가했습니다.

GitHub 레포지토리 등록 직후 RabbitMQ analyze.repository 메시지를 발행해 AI 분석 파이프라인을 트리거합니다.

범위가 아닌 것

실제로 GitHub에 요청을 날리며 repo 정보를 받아오는 것 <- 이건 AI 서버쪽이라 생각해서 후속 PR로 진행되어야 한다고 생각했습니다.

@vercel

vercel Bot commented May 15, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
stackup Ready Ready Preview, Comment May 16, 2026 2:06pm

this.properties = properties;
}

@TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFTER_COMMIT은 디비 트랜잭션은 이미 커밋됐다는거네요
여기서 mq 발행 실패 시 warn만 띄우고 마무리 될듯합니다.

retry 로직이 필요합니다

this(githubOAuthProperties, RestClient.builder());
}

public GithubApiClient(GithubOAuthProperties githubOAuthProperties, RestClient.Builder builder) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

외부 api 호출 시 스프링 6버전에서 도입된 HTTP Interface를 도입하면 훨씬 깔끔합니다

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오 이거 깔끔해서 좋네요 교체하겠습니다


private final RestClient restClient;

@Autowired

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Autowired 생략해도 됩니다
Lombok 쓰면 생성자도 생략할 수 있구요


@Autowired
public GithubApiClient(GithubOAuthProperties githubOAuthProperties) {
this.restClient = RestClient.builder()

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

추가로 생성자가 섞여있네요
테스트용으로 빌더를 주입받는걸까요?

}

@Transactional
public com.stackup.stackup.github.application.dto.GithubRepositoryResult register(

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

import 도 제대로 해둡시다. 풀네임으로 쓰는건 지양합시다.
읽기 힘드네요

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

클로드 혼내고 오겠습니다

return existing;
})
.orElseGet(() -> repoRepository.save(GithubRepository.create(
userRepository.getReferenceById(userId),

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이미 userid 를 들고있는데 또 가져오네요

@i3months i3months merged commit d5e5be2 into feature/us-05-06-resume May 19, 2026
2 checks passed
i3months added a commit to i3months/stackup that referenced this pull request Jun 30, 2026
UX 감사 후속(보류했던 중간 규모 6건).

- [Team-StackUp#9 데이터유실] 라이브 텍스트 답변 낙관적 업데이트 롤백: 답변은 WS fire-and-forget
  (ack 없음)이라 tempId별 10s 타임아웃 도입 — 시간 내 서버 반영(pendingAnswers
  content 매칭 소진)이 없으면 stuck 낙관적 메시지 제거 + 입력 복원(restoreDraft) +
  실패 토스트. 낙관적 상태를 COMPLETED→CREATED('전송 중')로. 해피패스(서버 COMPLETED
  대체)·dedup 보존, 언마운트 시 타이머 정리.
- [Team-StackUp#17] 세션 생성: maxQuestions >= generalQuestionCount 교차검증 + 인라인 안내,
  라벨 명료화('한 주제를 얼마나 파고들지', '꼬리질문 포함 전체 질문 최대 개수').
- [Team-StackUp#18] 피드백 리포트: 강점/개선/키워드/학습방향을 점수 직후로 끌어올림,
  직무적합도·이해도·첫인상을 '추가 평가' 그룹으로 묶어 '종합 점수 미반영' 면책 1회.
- [Team-StackUp#16] 세션 생성 페이지 '워크스페이스로' 복귀 링크 추가.
- [Team-StackUp#22] 터치 타깃: Stepper ± 및 DeliveryModeToggle min-h-11(>=44px).
- [Team-StackUp#12] 공용 ListSkeleton 도입, 5개 목록의 '불러오는 중…' 한 줄 → 고정높이 골격(CLS↓).

build 통과, lint 신규 에러 없음. 프론트 전용.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.

2 participants