-
Notifications
You must be signed in to change notification settings - Fork 3
๐ ์คํฌ ๋ฌธ์๋ฅผ .claude/skills๋ก ์น๊ฒฉํ๊ณ university-web ๋ฆฌ๋ผ์ดํธ ์ฃผ์์ฌํญ ์คํฌ ์ถ๊ฐ #611
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
4dd3f32
8982278
d6cc73d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,55 @@ | ||||||||||||||||||||||||||
| --- | ||||||||||||||||||||||||||
| name: univ-extends-bruno-sync | ||||||||||||||||||||||||||
| description: Rebase the feat/univ-extends branch and keep the generated Bruno TypeScript API client in sync. Use only when working on the feat/univ-extends branch or asked to rebase it against develop/main. | ||||||||||||||||||||||||||
| --- | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| # feat/univ-extends ๋ฆฌ๋ฒ ์ด์ค + Bruno ๋ช ์ธ ๋๊ธฐํ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## ๋ชฉ์ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| - `feat/univ-extends`๋ฅผ ์ต์ ๊ธฐ์ค ๋ธ๋์น์ ๋ฆฌ๋ฒ ์ด์คํ๋ค. | ||||||||||||||||||||||||||
| - Bruno ๋ช ์ธ ๋ณ๊ฒฝ์ด ์๊ฒจ๋ TypeScript API ์ฝ๋๋ฅผ ์ฌ์์ฑํ ์ ์๋ ๊ตฌ์กฐ๋ฅผ ์ ์งํ๋ค. | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## ๋ฆฌ๋ฒ ์ด์ค ์ ์ฐจ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| 1. ๊ธฐ์ค ๋ธ๋์น fetch | ||||||||||||||||||||||||||
| - `git fetch --all --prune` | ||||||||||||||||||||||||||
| 2. ๊ธฐ์ค ๋ธ๋์น ํ์ธ | ||||||||||||||||||||||||||
| - `git ls-remote --heads origin develop`์ผ๋ก ์๊ฒฉ `develop` ์กด์ฌ ์ฌ๋ถ๋ฅผ ๋จผ์ ํ์ธํ๋ค. | ||||||||||||||||||||||||||
| - ์กด์ฌํ๋ฉด: ๋ก์ปฌ `develop`์ ์ต์ `origin/develop`์ผ๋ก ๋ง์ถ ๋ค(`git checkout develop && git reset --hard origin/develop`, ๋ก์ปฌ์ ์์ผ๋ฉด `git checkout -b develop origin/develop`) ๊ทธ ๋ธ๋์น๋ก ๋ฆฌ๋ฒ ์ด์คํ๋ค. | ||||||||||||||||||||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ๐๏ธ Data Integrity & Integration | ๐ Major | โก Quick win 2. Line 19์ ๋ช
๋ น์ ์ถ์ ์ค์ธ ๋ฏธ์ปค๋ฐ ๋ณ๊ฒฝ์ฌํญ๋ฟ ์๋๋ผ ์๊ฒฉ์ ์๋ ๋ก์ปฌ ๐งฐ Tools๐ช SkillSpector (2.3.11)[error] 19: [TM1] Tool Parameter Abuse: Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns). Remediation: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults. (Tool Misuse (TM1)) ๐ค Prompt for AI AgentsSource: Linters/SAST tools |
||||||||||||||||||||||||||
| - ์กด์ฌํ์ง ์์ผ๋ฉด(์ด ์ ์ฅ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก `develop`์ด ์๋ค): `origin/main`์ ๊ธฐ์ค์ผ๋ก ์ง์ ๋ฆฌ๋ฒ ์ด์คํ๋ค. ๋ก์ปฌ `develop`์ ๋ง๋ค์ด์ ์ฐํํ์ง ์๋๋ค. | ||||||||||||||||||||||||||
| 3. ๋ฆฌ๋ฒ ์ด์ค ์คํ | ||||||||||||||||||||||||||
| - `origin/develop`์ด ์๋ ๊ฒฝ์ฐ: `git rebase develop` | ||||||||||||||||||||||||||
| - ์๋ ๊ฒฝ์ฐ: `git rebase origin/main` | ||||||||||||||||||||||||||
|
Comment on lines
+18
to
+23
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ๐ฏ Functional Correctness | ๐ Major | โก Quick win 1. ๋ฆฌ๋ฒ ์ด์ค ์ ์ ์์ ๋ธ๋์น๋ก ๋์์ค๋ ๋จ๊ณ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค. Line 19์์ ์์ ์์ - ์กด์ฌํ๋ฉด: ๋ก์ปฌ `develop`์ ์ต์ `origin/develop`์ผ๋ก ๋ง์ถ๋ค.
+ - ๋๊ธฐํ๊ฐ ๋๋๋ฉด `git checkout feat/univ-extends`๋ก ์์
๋ธ๋์น๋ก ๋์๊ฐ๋ค.
- `origin/develop`์ด ์๋ ๊ฒฝ์ฐ: `git rebase develop`๐ Committable suggestion
Suggested change
๐งฐ Tools๐ช SkillSpector (2.3.11)[error] 19: [TM1] Tool Parameter Abuse: Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns). Remediation: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults. (Tool Misuse (TM1)) ๐ค Prompt for AI Agents |
||||||||||||||||||||||||||
| 4. ์ถฉ๋ ์ฒ๋ฆฌ ์์น | ||||||||||||||||||||||||||
| - ์๋ ์์ฑ API ์ถฉ๋์ ์๋ฏธ ์๋ ๋๋ ์ถฉ๋์ด๋ฉด ํด๋น ์ปค๋ฐ `git rebase --skip` | ||||||||||||||||||||||||||
| - ๊ธฐ๋ฅ ์ฝ๋ ์ถฉ๋์ ์๋ ๋ณํฉ ํ `git add` + `git rebase --continue` | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## Bruno ๋๊ธฐํ ์ ์ฐจ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| 1. ๊ธฐ๋ณธ ์คํ | ||||||||||||||||||||||||||
| - `pnpm run sync:bruno` | ||||||||||||||||||||||||||
| 2. ์๊ฒฉ ๋ช ์ธ ๊ฐ์ ๋๊ธฐํ (๊ธฐ๋ณธ๊ณผ ๋์ผ ๋์ ๋ช ์) | ||||||||||||||||||||||||||
| - `pnpm --filter @solid-connect/api-schema run sync:bruno:remote` | ||||||||||||||||||||||||||
| 3. ๋ชจ๋ ์ ์ด | ||||||||||||||||||||||||||
| - `BRUNO_SOURCE_MODE=local|remote|auto` (๊ธฐ๋ณธ: `remote`) | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## ํ๊ฒฝ ๋ณ์ ๊ท์น | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| - `BRUNO_COLLECTION_DIR`: ๋ก์ปฌ ๋ช ์ธ ํด๋๋ฅผ ์ง์ ์ง์ | ||||||||||||||||||||||||||
| - `BRUNO_REPO_URL`: ์๊ฒฉ Bruno ์ ์ฅ์ URL | ||||||||||||||||||||||||||
| - `BRUNO_REPO_REF`: ์๊ฒฉ ๋ธ๋์น/ํ๊ทธ (๊ธฐ๋ณธ `main`) | ||||||||||||||||||||||||||
| - `BRUNO_COLLECTION_PATH`: ์ ์ฅ์ ๋ด๋ถ ๋ช ์ธ ํด๋ (๊ธฐ๋ณธ `Solid Connection`) | ||||||||||||||||||||||||||
| - ๊ถ์ฅ ํ์ผ: `packages/api-schema/.env` | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## ๊ฒ์ฆ ์ฒดํฌ๋ฆฌ์คํธ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| 1. `pnpm --filter @solid-connect/api-schema run sync:bruno` | ||||||||||||||||||||||||||
| 2. `pnpm typecheck` | ||||||||||||||||||||||||||
| 3. `pnpm build` | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## ์คํจ ๋์ | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| - `BRUNO_COLLECTION_DIR`์ด ์ค์ ๋์ด ์์ผ๋ฉด `BRUNO_SOURCE_MODE` ๊ฐ๊ณผ ๋ฌด๊ดํ๊ฒ ๊ทธ ๋ก์ปฌ ๊ฒฝ๋ก๊ฐ ํญ์ ์ฐ์ ์ฌ์ฉ๋๋ค(`packages/api-schema/scripts/sync-bruno.mjs`์ `resolveCollectionDir()` ์ฐธ๊ณ ). ์ด ๊ฒฝ์ฐ `BRUNO_REPO_URL`์ ํ์ ์๋ค. | ||||||||||||||||||||||||||
| - `BRUNO_COLLECTION_DIR`์ด ์๊ณ , `BRUNO_SOURCE_MODE=remote`์ด๊ฑฐ๋(`auto` ๋ชจ๋์์ ๋ก์ปฌ ๊ธฐ๋ณธ ๊ฒฝ๋ก๋ ์์ด) ์๊ฒฉ ๊ฒฝ๋ก๋ฅผ resolveํด์ผ ํ๋ ์ํฉ์์ `BRUNO_REPO_URL`์ด ์์ผ๋ฉด ์ฆ์ ์คํจํ๋ค. | ||||||||||||||||||||||||||
| - ์๊ฒฉ clone ์ฑ๊ณต ํ `BRUNO_COLLECTION_PATH` ๊ฒฝ๋ก๊ฐ ์์ผ๋ฉด ์ฆ์ ์คํจํ๋ค. | ||||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,67 @@ | ||
| --- | ||
| name: university-web-rewrite-caution | ||
| description: Safety checklist before touching apps/university-web โ it is a separately deployed Next.js Multi-Zone SSG app that is CURRENTLY MID-REWRITE (desktop "skyscanner-style" layout redesign) with parallel work happening in git worktrees. Use whenever a task touches apps/university-web, the /university/* routes, packages/ui shared layout primitives, or anything under docs/screenshots/*-poc. | ||
| --- | ||
|
|
||
| # University Web: ๋ฆฌ๋ผ์ดํธ ์ค ์ฃผ์์ฌํญ | ||
|
|
||
| ## ์ ์ด ์คํฌ์ด ํ์ํ๊ฐ | ||
|
|
||
| `apps/university-web`์ ๋จ์ํ ํ์ ๋ผ์ฐํธ๊ฐ ์๋๋ผ **๋ณ๋๋ก ๋ฐฐํฌ๋๋ ๋ ๋ฆฝ Next.js ์ฑ**์ด๊ณ , ์ง๊ธ **๋ฐ์คํฌํฑ ๋ ์ด์์ ์ ๋ฉด ๋ฆฌ๋ผ์ดํธ("skyscanner-layout" ์คํ์ผ)๊ฐ ์งํ ์ค**์ด๋ค. ๋ค๋ฅธ ์ฑ(`apps/web`, `apps/admin`)๊ณผ ๊ฐ์ ๊ฐ๊ฐ์ผ๋ก ์์ ํ๋ฉด ๋ค์์ด ์ฝ๊ฒ ๊นจ์ง๋ค: | ||
|
|
||
| - ์ด๋ฏธ ์งํ ์ค์ธ ๋ฆฌ๋ผ์ดํธ ์์ ๊ณผ ์ถฉ๋ํ๋ ์ค๋ณต/์ญํ ์์ | ||
| - SSG ๋น๋ ์คํจ(๋น ์นดํ๋ก๊ทธ๋ก ์กฐ์ฉํ ๋์ด๊ฐ์ง ์๊ณ ๋น๋ ์์ฒด๊ฐ ์คํจํ๋๋ก ์ค๊ณ๋จ) | ||
| - `apps/web` โ `apps/university-web` ๊ฐ ๋ผ์ฐํธ ์์ ๊ถ ๊ฒฝ๊ณ ์๋ฐ | ||
| - `apps/web`๊ณผ `apps/university-web`์ **๋์ผ ๋ด์ฉ์ผ๋ก ์ค๋ณต ๋ณด๊ด๋** `AUTHENTICATION.md`/`COMPONENTS.md` ๋๋ฆฌํํธ | ||
|
|
||
| ## ์์ ์ ์ฒดํฌ๋ฆฌ์คํธ (์์๋๋ก) | ||
|
|
||
| 1. **์งํ ์ค์ธ ๋ฆฌ๋ผ์ดํธ์ ์ถฉ๋ํ๋์ง ๋จผ์ ํ์ธํ๋ค.** | ||
| ```bash | ||
| git worktree list | ||
| git branch -a --list "*skyscanner*" "*university*" | ||
| ``` | ||
| university ๊ด๋ จ worktree/๋ธ๋์น๊ฐ ์ด๋ฏธ ๋ ์๋ค๋ฉด(์: `feat/skyscanner-layout-poc`, `fix/university-*`), ๊ฐ์ ํ๋ฉด์ ๊ฑด๋๋ฆฌ๊ธฐ ์ ์ ํด๋น ๋ธ๋์น์ ์ต์ diff๋ฅผ ํ์ธํด ์ค๋ณต ์์ ์ ํผํ๋ค. | ||
|
|
||
| 2. **`docs/screenshots/`์ ์ด๋ฏธ ์๋ POC ์๋ฃ๋ฅผ ํ์ธํ๋ค.** | ||
| - `docs/screenshots/skyscanner-layout-poc/`, `docs/screenshots/university-skyscanner-layout-poc/`์ ๋ฐ์คํฌํฑ(1440x1000)/๋ชจ๋ฐ์ผ(390x844) contact sheet๊ฐ ์๋ค. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When an agent follows this mandatory university-web checklist, neither referenced POC directory exists in the reviewed tree; a repo-wide inspection of AGENTS.md reference: AGENTS.md:L62-L62 Useful? React with ๐ย / ๐. |
||
| - ์ด๋ฏธ ๋ฆฌ๋ทฐ๋ ๋ ์ด์์ ๊ฒฐ์ (์: ๋ํ ๋ชฉ๋ก ๊ฐ์ํ, ๋ชจ๋ฐ์ผ ํ๋จ ๋ค๋น ์ ์ง, ๋ฐ์คํฌํฑ nav ์จ๊น)์ ์์๋ก ๋๋๋ฆฌ์ง ์๋๋ค. | ||
|
|
||
| 3. **๋ผ์ฐํธ ์์ ๊ถ์ `docs/university-multizone-deployment.md` ๊ธฐ์ค์ผ๋ก ์งํจ๋ค.** | ||
| - `/university`, `/university/search`, `/university/:homeUniversity`, `/university/:homeUniversity/:id`, `/university-static/*` โ `apps/university-web` ์์ (SSG) | ||
| - `/university/score/*`, `/university/application/*` โ `apps/web` ์์ (์ธ์ฆ/์์ ํ๋ก์ฐ, ์ฌ๊ธฐ๋ ๊ทธ๋๋ก ๋๋ค) | ||
| - `/university/list/:homeUniversity`๋ legacy URL์ด๋ฉฐ child route๋ฅผ ์๋ก ๋ง๋ค์ง ์๋๋ค. redirect๋ง ์ ์ง. | ||
| - ์นดํ๋ก๊ทธ ์ฑ๊ฒฉ์ ์ university ๋ผ์ฐํธ๋ฅผ ์ค์๋ก `apps/web`์ ์ถ๊ฐํ์ง ์๋๋ค. | ||
|
|
||
| 4. **๊ณต์ ๋ฌธ์ ๋๊ธฐํ: `AUTHENTICATION.md` / `COMPONENTS.md`** | ||
| - `apps/web/AUTHENTICATION.md` โก `apps/university-web/AUTHENTICATION.md` | ||
| - `apps/web/COMPONENTS.md` โก `apps/university-web/COMPONENTS.md` | ||
| - ๋์ ํ์ฌ ์์ ํ ๋์ผํ ๋ด์ฉ์ด๋ค. ํ์ชฝ๋ง ๊ณ ์น๋ฉด drift๊ฐ ์๊ธฐ๋ฏ๋ก, ์ปจ๋ฒค์ ์ ๋ฐ๊ฟ ๋๋ **๋ ํ์ผ์ ํจ๊ป ์์ **ํ๋ค(diff๋ก ํ์ธ: `diff apps/web/COMPONENTS.md apps/university-web/COMPONENTS.md`). | ||
|
|
||
| 5. **๋ ์ด์์ ๊ณตํตํ๋ `packages/ui`๋ก.** | ||
| - ๋ฆฌ๋ผ์ดํธ ๊ณผ์ ์์ ๊ณตํต ๋ ์ด์์ ํ๋ฆฌ๋ฏธํฐ๋ธ๊ฐ `packages/ui`๋ก ์ถ์ถ๋๊ณ ์๋ค (์: `packages/ui/src/mobile-hero-detail-shell.tsx`). | ||
| - university ์ ์ฉ ํ๋ฉด์ด๋ผ๋ web/admin๊ณผ ๊ฒน์น๋ ๋ ์ด์์ ํจํด์ด๋ฉด `apps/university-web` ๋ด๋ถ์ ์๋ก ๋ง๋ค์ง ๋ง๊ณ `packages/ui`์ ์๋์ง ๋จผ์ ํ์ธํ๊ณ , ์์ผ๋ฉด ๊ทธ์ชฝ์ ์ถ๊ฐํ๋ ๊ฒ์ ์ฐ์ ๊ณ ๋ คํ๋ค. | ||
|
|
||
| 6. **SSG ๋ฐ์ดํฐ ํ์นญ์ ์คํจ๋ฅผ ์ผํค์ง ์๋๋ค.** | ||
| - university-web์ ์นดํ๋ก๊ทธ SSG๋ "๋ฐ์ดํฐ fetch ์คํจ ์ ๋น ์นดํ๋ก๊ทธ๋ก ์กฐ์ฉํ ๋น๋ ์ฑ๊ณต" ๋์ **๋น๋ ์์ฒด๊ฐ ์คํจ**ํ๋๋ก ๋์ด ์๋ค. ์ด ํน์ฑ์ ์ ์งํ๋ค (์๋ฌ๋ฅผ try/catch๋ก ์ผ์ผ ๋น ๋ฐฐ์ด fallback์ ๋ง๋ค์ง ์๋๋ค). | ||
| - ๋ฐ์ดํฐ ๊ฐฑ์ ์ ์๋ DB ๊ฐฑ์ ํ university zone ์ฌ๋ฐฐํฌ๋ก ์ฒ๋ฆฌํ๋ค(`/university/revalidate` ์ฐธ๊ณ ). | ||
|
|
||
| 7. **ํ๊ฒฝ๋ณ์ ์์กด์ฑ ํ์ธ.** | ||
| - `apps/web`์ ๋น๋ ์ `UNIVERSITY_WEB_DOMAIN`์ด ์์ผ๋ฉด ์คํจํ๋๋ก ๋์ด ์๋ค(`/university` rewrite ๋์์ด ์์ผ๋ฉด catalog๊ฐ 404๊ฐ ๋๊ธฐ ๋๋ฌธ). ์ด ๊ฐ๋๋ฅผ ์ฐํ/์ญ์ ํ์ง ์๋๋ค. | ||
|
|
||
| ## ๊ฒ์ฆ | ||
|
|
||
| ```bash | ||
| pnpm --filter @solid-connect/university-web run lint:check | ||
| pnpm --filter @solid-connect/university-web run typecheck:ci | ||
| pnpm --filter @solid-connect/university-web run build | ||
| pnpm --filter @solid-connect/web run build # UNIVERSITY_WEB_DOMAIN ํ์ | ||
| ``` | ||
|
|
||
| ๋ ์ด์์์ ๋ณ๊ฒฝํ๋ค๋ฉด, ๊ธฐ์กด POC์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ฐ์คํฌํฑ 1440x1000 / ๋ชจ๋ฐ์ผ 390x844 ์คํฌ๋ฆฐ์ท์ `docs/screenshots/<์์ ๋ช >/`์ ๋จ๊ธฐ๊ณ PR์ ์ฒจ๋ถํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค (๊ธฐ์กด ์ฌ๋ก: `docs/screenshots/university-skyscanner-layout-poc/README.md`). | ||
|
|
||
| ## ์ฐธ๊ณ ๋ฌธ์ | ||
|
|
||
| - `docs/university-multizone-deployment.md` โ ๋ผ์ฐํธ ์์ ๊ถ, Vercel ํ๋ก์ ํธ ๋ถ๋ฆฌ, ๋ฐฐํฌ ์ ์ฐจ | ||
| - `docs/screenshots/university-skyscanner-layout-poc/` โ ์งํ ์ค์ธ ๋ฆฌ๋ผ์ดํธ์ ์ต์ ์๊ฐ QA ๊ธฐ์ค | ||
| - `.claude/skills/bruno-codegen-react-query/SKILL.md` โ university-web๋ ๊ฐ์ Bruno codegen์ ๊ณต์ ํ๋ฏ๋ก API ๋ณ๊ฒฝ ์ ํจ๊ป ์ฐธ๊ณ | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
๐ Maintainability & Code Quality | ๐ Major | โก Quick win
1. ํธ์ ์ ํ์ ๊ฒ์ฌ๋ฅผ ์คํํ๋๋ก ์ ์ฐจ๋ฅผ ๋ณด๊ฐํด ์ฃผ์ธ์.
ํ์ฌ ์คํ ๋จ๊ณ์๋ ๋ธ๋์นยท์ํ ํ์ธ๊ณผ ์ปค๋ฐ/ํธ์๋ง ์๊ณ ,
pnpm typecheck๋ฐ ๋ณ๊ฒฝ๋ ์ฑ์ ๊ด๋ จ ๊ฒ์ฌ๊ฐ ์์ต๋๋ค. ์ด ์คํฌ์ ๋ฐ๋ฅด๋ ์์ด์ ํธ๊ฐ ๊ฒ์ฆ ์์ด ํธ์ํ์ง ์๋๋กgit add์ ์ ํด๋น ๊ฒ์ฌ ๋จ๊ณ๋ฅผ ๋ช ์ํด ์ฃผ์ธ์.As per coding guidelines, ํธ์ ์ ์
pnpm typecheck์ ๊ด๋ จ ์ฑ ๊ฒ์ฌ๋ฅผ ์คํํด์ผ ํฉ๋๋ค.์ ์๋ ์์
+pnpm typecheck
+# ๋ณ๊ฒฝ๋ ์ฑ์ ๊ด๋ จ ๊ฒ์ฌ ์คํ
+
git add
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.claude/skills/commit-push-pr/SKILL.md around lines 26 - 31, Update the
Execution Steps in the commit-push-PR skill documentation to run pnpm typecheck
and the relevant checks for changed applications before git add. Keep the
existing commit and push commands unchanged, and explicitly require these
validations before proceeding with the push.