Skip to content

Conversation

@toothlessdev
Copy link
Owner

📎 Related issues

📦 Scope

  • @patchlogr/core
  • @patchlogr/cli
  • @patchlogr/oas
  • @patchlogr/inspector
  • @patchlogr/types
  • docs, examples
  • tests
  • ci / cd / infra
  • other (아래에 명시)

📌 Summary

  • Canonical Spec 변경에 따른 version bump 와 reason 계산로직 구현 및 테스트 코드 작성

🧠 Context

  • api 변경사항에 대한 영향도를 파악하기 위함

⚠️ Impact

  • [] No Breaking Changes
  • Breaking Change
  • Versioning 영향 있음 (major)
  • 내부 리팩토링만 포함

✅ Checklist

  • 요구사항 명세 충족
  • 테스트 추가 / 수정
  • deterministic output 확인

@toothlessdev toothlessdev self-assigned this Jan 30, 2026
@toothlessdev toothlessdev added the enhancement New feature or request label Jan 30, 2026
@gemini-code-assist
Copy link

Summary of Changes

Hello @toothlessdev, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

이 풀 리퀘스트는 Canonical Spec 변경에 따른 API의 영향도를 파악하고, 이에 기반하여 적절한 버전 범프(Major, Minor, Patch)를 자동으로 제안하는 핵심 기능을 patchlogr-core 패키지에 도입합니다. 이를 통해 API 변경 사항이 기존 사용자에게 미치는 영향을 명확히 하고, 버전 관리를 자동화하여 개발 프로세스의 효율성을 높이는 것을 목표로 합니다.

Highlights

  • 버전 범프 감지 로직 구현: API 사양 변경에 따라 Major, Minor, Patch 버전 범프를 자동으로 감지하고, 각 범프의 이유를 제공하는 새로운 로직이 추가되었습니다. 이는 detectVersionBump 함수와 classifyChange 함수를 통해 구현됩니다.
  • 새로운 테스트 코드 추가: 버전 범프 감지 로직의 정확성을 보장하기 위해 다양한 시나리오를 커버하는 포괄적인 테스트 코드가 detectVersionBump.test.ts 파일에 추가되었습니다.
  • 타입 파일명 리팩토링: packages/patchlogr-core/src/partition/types 디렉토리 내의 타입 파일명들이 hashNode.ts에서 HashNode.ts와 같이 파스칼 케이스(PascalCase)로 변경되었습니다. 이와 함께 관련 파일들의 임포트 경로도 업데이트되었습니다.
  • ContentAddressableStorage 인터페이스 추가: 콘텐츠 주소 지정 가능 스토리지(ContentAddressableStorage)를 위한 새로운 인터페이스가 정의되어, 해시 기반 데이터 저장 및 검색 기능을 추상화합니다.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@github-actions
Copy link

github-actions bot commented Jan 30, 2026

Test Results

109 tests   109 ✅  2s ⏱️
 21 suites    0 💤
  3 files      0 ❌

Results for commit d6126e6.

♻️ This comment has been updated with latest results.

@codecov-commenter
Copy link

codecov-commenter commented Jan 30, 2026

Codecov Report

❌ Patch coverage is 95.45455% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...kages/patchlogr-core/src/diff/detectVersionBump.ts 92.85% 0 Missing and 1 partial ⚠️
Files with missing lines Coverage Δ
packages/patchlogr-core/src/diff/classifyChange.ts 100.00% <100.00%> (ø)
.../patchlogr-core/src/partition/partitionByMethod.ts 100.00% <ø> (ø)
...ges/patchlogr-core/src/partition/partitionByTag.ts 100.00% <ø> (ø)
...s/patchlogr-core/src/partition/utils/createNode.ts 22.22% <ø> (ø)
...kages/patchlogr-core/src/diff/detectVersionBump.ts 92.85% <92.85%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

안녕하세요. Canonical Spec 변경에 따른 버전 범프 및 사유 계산 로직 구현에 대한 PR을 잘 보았습니다. 전반적으로 깔끔하게 구현되었으며, 테스트 코드도 잘 작성되었습니다. 몇 가지 개선점을 제안드립니다. classifyChange 함수에서 reason 문자열을 생성하는 로직을 개선하여 가독성을 높일 수 있습니다. 또한, 테스트 코드에 reason에 대한 단언을 추가하여 테스트의 견고함을 높이는 것을 제안합니다. 자세한 내용은 각 파일의 주석을 참고해주세요.

@toothlessdev toothlessdev merged commit 89161fe into develop Jan 30, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Detect Version bump for api changes

3 participants