chore(repo): 케이퀵 전용 README 신규 작성 + BUSL-1.1 라이선스 도입#95
Conversation
기존 NestJS 스타터 README를 제거하고, 케이퀵 백엔드를 소개하는 전용 README로 교체. 헤더(로고/뱃지/태그라인), 기획 배경, 기술 스택(skillicons 대신 shields.io flat로 통일·카테고리별 분리·AWS 서브서비스는 self-host SVG 아이콘), 레이어/모듈 의존성 mermaid 아키텍처, 디렉터리 구조, 시작하기, GraphQL, 테스트, CI/CD, 팀, 라이선스 섹션 구성. - .github/assets/logo.png 헤더 로고 - .github/assets/aws/ AWS 4종 서비스 아이콘 SVG (gilbarbara/logos MIT) - package.json description/author 보강
상업 서비스 계획 + 케이크 가게 연동 비즈니스 모델 보호 차원에서 Business Source License 1.1 채택. 비상업/학습 사용은 자유롭게 허용하고, 경쟁 서비스 운영 시 별도 라이선스 협의가 필요하며, Change Date(2030-05-20) 이후 Apache License 2.0으로 자동 전환된다. - LICENSE: SPDX 정본 + 상단 Parameters 블록 (Licensor/Licensed Work/ Additional Use Grant/Change Date/Change License) + SPDX-License-Identifier 헤더로 의존성 스캐너 친화 - package.json: license UNLICENSED → SEE LICENSE IN ./LICENSE, description/author 보강 참고: GitHub UI는 BUSL을 "Other"로 표시함 (HashiCorp/CockroachDB/Sentry 동일). source-available 라이선스의 일반적 동작이며 README 뱃지로 보완.
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 Walkthrough검토 개요이 PR은 CaQuick 백엔드 프로젝트를 위한 Business Source License 1.1(BUSL-1.1)을 추가하고, 프로젝트 문서(README)와 패키지 메타데이터(package.json)를 CaQuick 정보에 맞춰 업데이트합니다. WalkthroughLICENSE에 BUSL-1.1 전문을 추가하고 README.md를 CaQuick 전용 한글 문서로 대체했으며, package.json의 description/author/license 필드를 프로젝트 값으로 갱신합니다. 변경 사항라이선싱 및 문서화 설정
예상 코드 검토 노력🎯 2 (단순) | ⏱️ ~10분 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@package.json`:
- Line 7: Update the package.json "license" field to use the conventional
filename-only format by replacing "SEE LICENSE IN ./LICENSE" with "SEE LICENSE
IN LICENSE"; locate the "license" property in package.json and change its value
accordingly so it follows npm convention (keep the same meaning, just remove the
"./" prefix).
In `@README.md`:
- Around line 396-398: The README's license summary text (the three bullet lines
including "비상업적 / 학습 / 평가 목적..." and "Change Date(`2030-05-20`) 이후 **Apache
License 2.0**으로 자동 전환됩니다") conflicts with the LICENSE file's "Additional Use
Grant: None" clause; update either the README wording to match the LICENSE's
restrictions (make the README explicitly state that no additional use grant is
provided and production/commercial use may be restricted) or, if the intent is
to allow the README's narrower restriction (only competing commercial services
require a separate license), modify the LICENSE parameters to reflect that
policy instead (adjust the "Additional Use Grant" and any related license
parameter entries so both documents convey identical permissions). Ensure
consistency between the README bullets, the Change Date text, and the LICENSE
"Additional Use Grant: None" entry so legal/QA can validate the final wording.
- Line 35: 목차의 깨진 링크 `[CI / CD](#%EF%B8%8F-ci--cd)`를 찾아 README.md의 해당 토큰을
GitHub(또는 CommonMark)에서 생성하는 헤더 슬러그와 일치하는 프래그먼트로 교체하세요; 즉 소스에서 링크 텍스트 `[CI /
CD](#%EF%B8%8F-ci--cd)`를 `[CI / CD](`#ci--cd`)`(또는 저장소에서 실제 렌더링으로 확인된 정확한 슬러그)로
바꾸고 변경 후 실제 렌더링에서 헤더 `CI / CD`로 정상적으로 이동하는지 확인하세요.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 4b828b70-669e-459a-9a2b-754d13389d9d
⛔ Files ignored due to path filters (5)
.github/assets/aws/aws-codedeploy.svgis excluded by!**/*.svg.github/assets/aws/aws-ec2.svgis excluded by!**/*.svg.github/assets/aws/aws-rds.svgis excluded by!**/*.svg.github/assets/aws/aws-s3.svgis excluded by!**/*.svg.github/assets/logo.pngis excluded by!**/*.png
📒 Files selected for processing (3)
LICENSEREADME.mdpackage.json
Coverage report
Test suite run success882 tests passing in 78 suites. Report generated by 🧪jest coverage report action from ecece59 |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
GitHub camo proxy(외부 이미지 prefetch)가 URL 길이 ~4KB 초과 요청을 거절하면서 AWS RDS(4360자) · AWS CodeDeploy(6079자) 뱃지가 렌더링되지 않는 문제 해결. - gilbarbara/logos 원본 SVG 4종을 SVGO multipass로 39~50% 축소 - 결과 URL 길이: EC2 3728→1947, RDS 4360→2671, S3 3571→1997, CodeDeploy 6079→3061 (모두 4KB 한도 내) - 시각 표현은 동일 (SVGO 기본 safe 프리셋, lossless)
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: aa8cd96e96
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| yarn install | ||
|
|
||
| # 2. 환경 변수 (루트에 .env 생성, 필요한 키는 .env.example 참고) | ||
| cp .env.example .env |
There was a problem hiding this comment.
Point setup command to an existing env template
The onboarding step cp .env.example .env is currently broken because this repository does not contain a .env.example file (I checked the tree and there are no .env* templates committed). Anyone following the README from a clean clone will fail at step 2 before they can run migrations or start the app, so the setup instructions are not executable as written.
Useful? React with 👍 / 👎.
- 카톡·DM "시각적 디자인 전달 불가" → 사실 오류. 카톡은 이미지 첨부 가능. 실제 문제는 정형 명세 양식 부재 + 비정형 반복으로 정정 - 네이버 "디자인 탐색이 난잡함" → 부분 부정확. 예약/스마트스토어로 주문 기능도 일부 제공됨. "디자인 카탈로그·탐색 UX 약함"으로 정정 - 인스타 "예약/주문 기능 없음" → DM 비공식 주문은 가능. "통합된 예약·주문·결제 흐름 부재"로 정정
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 986d8757bd
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
|
||
| Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support). | ||
| - 비상업적 / 학습 / 평가 목적의 사용은 자유롭게 허용됩니다 | ||
| - **케이크 주문 플랫폼과 경쟁하는 상업 서비스**로의 이용은 별도 라이선스 협의가 필요합니다 |
There was a problem hiding this comment.
Align BUSL usage summary with actual production restriction
The license summary says only competing commercial services need a separate license, but the committed LICENSE sets Additional Use Grant: None and grants only non-production use until the change date. This mismatch can cause users to rely on README guidance and make production use that is explicitly disallowed by the repository’s own license terms, creating immediate compliance risk.
Useful? React with 👍 / 👎.
| ``` | ||
|
|
||
| ## Deployment | ||
| 기본 GraphQL endpoint: `http://localhost:3000/graphql` |
There was a problem hiding this comment.
Fix default local GraphQL endpoint in quickstart
The quickstart advertises http://localhost:3000/graphql, but the app listens on port 4000 when PORT is unset (src/main.ts falls back to 4000), and the setup steps do not tell users to set PORT. Following the documented flow therefore points users to a non-working endpoint on a clean setup.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
♻️ Duplicate comments (1)
README.md (1)
35-35:⚠️ Potential issue | 🟡 Minor | ⚡ Quick win목차 CI/CD 앵커를 헤더 slug와 정확히 일치시켜 주세요.
현재 링크 fragment가 정적분석(MD051) 기준으로 유효하지 않습니다.
## ⚙️ CI / CD헤더 기준 실제 slug로 맞춰야 이동이 안정적으로 동작합니다.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@README.md` at line 35, 목차의 "CI / CD" 링크 fragment가 헤더의 실제 slug와 일치하지 않아 MD051 경고가 발생합니다; README의 목차 항목을 찾아 현재 "[CI / CD](`#-ci--cd`)"를 수정하여 실제 헤더 텍스트 "## ⚙️ CI / CD"에서 생성되는 slug(예: "#%EF%B9%A1-%EF%A7%80-ci--cd" 또는 단순화된 "`#-ci--cd`"가 아닌 프로젝트의 마크다운 렌더러가 생성하는 정확한 slug)로 바꾸세요; 대상 헤더 문자열(## ⚙️ CI / CD)을 기준으로 slug를 생성해 목차 링크를 정확하게 일치시키는 것이 핵심입니다.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Duplicate comments:
In `@README.md`:
- Line 35: 목차의 "CI / CD" 링크 fragment가 헤더의 실제 slug와 일치하지 않아 MD051 경고가 발생합니다;
README의 목차 항목을 찾아 현재 "[CI / CD](`#-ci--cd`)"를 수정하여 실제 헤더 텍스트 "## ⚙️ CI / CD"에서
생성되는 slug(예: "#%EF%B9%A1-%EF%A7%80-ci--cd" 또는 단순화된 "`#-ci--cd`"가 아닌 프로젝트의 마크다운
렌더러가 생성하는 정확한 slug)로 바꾸세요; 대상 헤더 문자열(## ⚙️ CI / CD)을 기준으로 slug를 생성해 목차 링크를 정확하게
일치시키는 것이 핵심입니다.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 8ed0dd59-4970-4819-9fa5-1353dc00ed72
⛔ Files ignored due to path filters (4)
.github/assets/aws/aws-codedeploy.svgis excluded by!**/*.svg.github/assets/aws/aws-ec2.svgis excluded by!**/*.svg.github/assets/aws/aws-rds.svgis excluded by!**/*.svg.github/assets/aws/aws-s3.svgis excluded by!**/*.svg
📒 Files selected for processing (3)
LICENSEREADME.mdpackage.json
✅ Files skipped from review due to trivial changes (1)
- LICENSE
- LICENSE Additional Use Grant를 None에서 "경쟁 케이크 주문/디자인 플랫폼이 아닌 한 production 사용 허용"으로 변경 (HashiCorp Terraform 패턴 축약). 기존 None 설정은 비-production만 자유로 해석돼 README 문구와 불일치했음 - README 환경 변수 섹션에서 cp .env.example .env 제거. .env.example은 보안상 레포에 포함 안 되므로 fresh clone 시 실패하던 문제. 대신 카테고리별 필요 환경 변수 표 추가 (서버/DB/JWT/OIDC×2/AWS/Docs) - package.json license 값을 "SEE LICENSE IN ./LICENSE"에서 "SEE LICENSE IN LICENSE"로 변경 (npm 관례, 둘 다 유효하지만 파일명만 표기가 표준) - README TOC CI/CD 앵커를 #%EF%B8%8F-ci--cd에서 #-ci--cd로 단순화 (다른 한글 anchor와 일관된 패턴)
890f7dc to
e35112c
Compare
- TOC의 [아키텍처](#-아키텍처)를 [아키텍처](#%EF%B8%8F-아키텍처)로 복원. 헤더 🏗️(U+1F3D7+U+FE0F)는 GitHub slug 생성 시 FE0F 변형 선택자를 보존하므로 단순화하면 anchor 매칭 실패 - TOC의 [CI / CD](#-ci--cd)를 [CI / CD](#%EF%B8%8F-ci--cd)로 복원 (이전 commit에서 잘못 단순화한 fix를 되돌림). ⚙️도 같은 FE0F compound - GraphQL endpoint 기본 포트를 3000에서 4000으로 정정. src/main.ts가 PORT 환경변수 미설정 시 4000으로 fallback하는 실제 동작과 일치시킴. README가 잘못된 endpoint를 안내하던 문제 (Codex P2 review) 검증 방법은 gh api POST /markdown으로 실제 GitHub 렌더링과 anchor slug 매칭 확인. markdownlint MD051 경고는 emoji slug 처리를 정확히 모방하지 못해서 뜨는 false positive로, 무시 가능.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ea28875a43
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| | **OIDC (Kakao)** | `OIDC_KAKAO_CLIENT_ID`, `OIDC_KAKAO_CLIENT_SECRET`, `OIDC_KAKAO_ISSUER_URL` | | ||
| | **OIDC (공통)** | `OIDC_TEMP_COOKIE_MAX_AGE_MS` | | ||
| | **AWS S3** | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION`, `AWS_S3_BUCKET`, `S3_PRESIGN_EXPIRES_SECONDS` | | ||
| | **Docs (선택)** | `DOCS_ACCESS_TOKEN` | |
There was a problem hiding this comment.
Mark DOCS_ACCESS_TOKEN as required in production
The env table labels DOCS_ACCESS_TOKEN as optional, but production boot fails when it is unset (src/config/docs.config.ts throws if NODE_ENV=production and the token is empty). This creates a deployment-breaking setup path for operators who follow the README literally and omit that key in production.
Useful? React with 👍 / 👎.
본문에 anchor URL이나 코드 인용으로 # 기호가 들어가면 conventional-commits 파서가 GitHub 이슈 번호(#123)로 오인하고, 그 줄부터를 footer로 분류해 "footer 앞에 빈 줄이 없다"는 false positive 경고를 띄운다. README 작업 중 anchor URL을 본문에서 자주 인용할 일이 많아 일관되게 비활성화한다. 이미 비활성된 subject-case, body/footer-max-line-length와 동일한 패턴.
Summary
기존 NestJS 스타터 README + UNLICENSED 상태를 케이퀵 프로젝트 전용으로 정비.
README 신규 작성 (commit 695aec4)
.github/assets/logo.png로고.github/assets/aws/AWS 서비스 아이콘 SVG 4종 (gilbarbara/logos · MIT)package.jsondescription/author 보강BUSL-1.1 라이선스 도입 (commit 4a6e129)
package.jsonlicense 필드 UNLICENSED → SEE LICENSE IN ./LICENSEmain 직행 배경
Test plan
Summary by CodeRabbit
Documentation
Chores