

### 1-2. 정렬 다음 항목은 별도의 정렬 기능 불필요 - 프로젝트명, 클라이언트, 서비스, 산업, 상태 ### 1-3. 목록 표시 개수 Show entries 기능 추가 - 10개, 20개, 50개 기본값은 10개로 설정 ### 1-4. 검색 단축키 - 검색창에 표시된 `⌘K` 단축키 안내 삭제 ### 1-5 필요 없는 문구 삭제 - 상단 `게시 상태는 바로 저장됩니다. 공개 홈페이지에 반영하려면 홈페이지 배포를 실행해야 합니다. …` 문구 삭제 - 하단 `98건 중 1–9 표시` 문구 삭제, Show entires로 대체


16:16 저장 안했으면 저장하고 1번부터 작업할 수 있게 워크트리 따주고, 지시 프롬프트 작성해줘 22:33 정리해둔건 좋은데, 내가 말하면 1개씩 꺼내서 작업진행하자. (…) 워크트리 딴 거 전체 지시프롬프트 넣어야 되는 거 합쳐서 하나로 복사할 수 있게 다시 만들어줘
| 작업 | 들어갈 것 | 크기 | 조건 |
|---|---|---|---|
| 1 목록 손질 | 정렬 제거 · 표시 개수 10/20/50 · ⌘K 삭제 · 안내 문구 삭제 | 0.5일 | 1-1 필터 중복 선택은 넣지 않음 |
| 2 저장 토스트 | "저장되었습니다." 공용 부품 | 0.25일 | 어워드 화면이 같은 부품을 쓴다 |
| 3 Goal 카드 | 순서 번호 · 설명 칸을 제목보다 길게 | 0.25일 | 3-2 드롭다운은 넣지 않음 |
| 4 상세 읽기 모드 | 행 클릭 → 잠근 화면 · '수정하기' → 수정 | 0.5-1일 | 별도 상세 화면을 만들지 않는다 |
| 5 이탈 경고 | "저장하지 않은 내용이 있습니다. …" | 0.5일 | 브라우저 닫기·목록으로·사이드바 셋만 |
AdminShell.tsx:158 같은 줄 번호는 Claude가 저장소를 뒤져 넣은 것입니다- 이 폴더는 git 워크트리 pixdine-wt-bo-list 다. (…) main 에 직접 작업하지 않는다. push·PR 은 하지 않는다. 커밋은 내가 화면을 확인하고 "커밋해" 라고 할 때만 한다.- 커밋 메시지는 한국어 (…) 작성자 표기 줄은 넣지 않는다.- 요청 원문은 (…)프로젝트 등록.md 다. 시작할 때 한 번 읽는다. 원문에 없는 기능을 보태지 않는다. 원문과 내 지시가 다르면 멈추고 묻는다.- 서버(server/)와 DB(supabase/)는 손대지 않는다. 필요해 보이면 멈추고 말한다.- apps/bo 밖의 파일은 손대지 않는다. 특히 apps/fo 는 이 작업과 무관하다.
- 문구는 원문 그대로 쓴다. 새 문구가 필요하면 짧은 한국어 평상어로, 영어 라벨은 쓰지 않는다.- (…) 고친 자리에는 "왜"를 한 줄 주석으로 남긴다(요청 항목 번호 포함. 예: `// 9/11 피드백 1-2: …`).- dev 서버(3000)와 로컬 API(8080)는 내가 따로 띄워 둔다. 직접 띄우지 않는다. 안 떠 있으면 말한다.- 한 단계 끝날 때마다 http://localhost:3000/projects/ 를 다시 열어 확인하고, 다 됐다고 하기 전에 (…) `npm run build` 가 통과해야 한다.- 답은 존댓말 한국어. 결과 보고는 "무엇을 어디에 고쳤고, 요청과 아직 다른 점" 두 줄로.
이 브랜치는 (…)projects/page.tsx, (…)AdminShell.tsx, (…)globals.css 세 파일만 고친다. 요청 원문의 1장 중 1-2·1-3·1-4·1-5 네 가지다. 1-1(…)은 이 브랜치에서 하지 않는다.1. 정렬 제거 (원문 1-2 · projects/page.tsx)2. 안내 문구 삭제 (원문 1-5 · projects/page.tsx)3. 표시 개수 (원문 1-3 · projects/page.tsx)4. ⌘K 안내 삭제 (원문 1-4 · AdminShell.tsx:158 · globals.css:157)5. 확인 - 정렬 안 되는 헤더에 커서·화살표가 없는지, (…) 처음 열면 10건인지, (…) 검색창에 ⌘K 가 없는지. - apps/bo 에서 `npm run build` 통과.커밋 단위: 커밋 1 = 1·2·4(지우는 것들) / 커밋 2 = 3(표시 개수). 각 커밋 전에 내가 화면을 본다.

git worktree add ../pixdine-wt-bo-list -b feat/bo-project-list-cleanup origin/main
| 작업 | 폴더 | 합친 시각 |
|---|---|---|
| 1 목록 손질 | pixdine-wt-bo-list | 9/13 00:17 |
| 2 저장 토스트 | pixdine-wt-bo-toast | 9/13 01:36 |
| 3 Goal 카드 | pixdine-wt-bo-goal | 9/13 11:55 |
| 4 상세 읽기 모드 | pixdine-wt-bo-view | 9/13 23:33 |
| 5 미저장 이탈 경고 | pixdine-wt-bo-leave | 9/14 01:00 |

| 시각 | 있었던 일 | 세션의 말 |
|---|---|---|
| 22:45 | 지시문 붙여 넣음 | "먼저 브랜치 확인과 요청 원문·대상 파일을 읽겠습니다." |
| 22:47 | 파악 끝 | "`.toggle-hint` CSS는 지시 범위 밖이라 손대지 않습니다." |
| 22:49 | 커밋 1 범위 보고, 멈춤 | 두 줄 보고 (다음 장) |
| 22:53 | 제가 "localhost가 안 열리는데?" | "규칙대로 제가 직접 띄우지 않고, 포트 상태만 확인하겠습니다." |
| 22:55 | 404 원인 찾음 | "지시서의 URL(`/projects/`)이 basePath를 빠뜨린 것" |
| 23:49 | 화면 확인 뒤 제가 "3번 진행해" | |
| 23:52 | 커밋 2 범위 보고 | "요청과 다른 점: 없습니다." |
커밋1 범위(1·2·4) 완료, `npm run build` 통과했습니다.
- 고친 곳: `apps/bo/src/app/projects/page.tsx`(정렬을 연도·등록일만 남기고 나머지 헤더의 sortable/화살표/클릭 제거·SortKey 2개로 축소·page-desc 문구 정정·상단 안내 블록과 IconInfo import 삭제·하단 "N건 중" 문구와 from/to 삭제), `AdminShell.tsx`(검색창 ⌘K 삭제), `globals.css`(안 쓰이게 된 `.topbar-search .kbd` 한 줄 삭제).
- 요청과 아직 다른 점: 표시 개수(1-3, 커밋2)는 아직 안 했습니다 — 지금 table-foot 왼쪽은 빈 자리이고 목록 개수는 서버 기본값 그대로입니다.
원인 찾았습니다. BO는 `basePath: '/admin'`(next.config.mjs)이라 루트가 아니라 `/admin` 아래에서 열립니다. 지시서의 URL(`/projects/`)이 basePath를 빠뜨린 것이고, 실제 주소는 이렇습니다:
- 프로젝트 목록: http://localhost:3000/admin/projects/
onKeyDown={(e) => e.key === 'Enter' && search.onSubmit?.()}
/>
- <span className="kbd">⌘K</span>
</div>
-type SortKey = 'name' | 'client' | 'year' | 'service' | 'industry' | 'status' | 'created_at';
+// 9/11 피드백 1-2: 정렬은 연도·등록일 두 헤더만. 나머지는 정렬 대상이 아니다.
+type SortKey = 'year' | 'created_at';

| 시각 | 칸 | 있었던 일 |
|---|---|---|
| 23:47 | 커밋 1 | 지우는 것 셋(1-2·1-4·1-5)을 한 묶음으로 저장 |
| 23:54 | 커밋 2 | 표시 개수(1-3)를 한 묶음으로 저장. 이어서 저장소에 올림 |
| 23:55 | 이슈 #83 | "이 일을 한다"는 카드를 GitHub에 등록 |
| 23:55 | PR #84 | "합쳐 달라"는 요청서를 열고 이슈 번호를 연결 |
| 00:10 | 검토 | codex가 검토 결과를 PR에 남김 |
| 00:16 | 결정 | 검토를 읽고 제가 한 말: "바로 머지해. codex 리뷰가 수정사항 없데." |
| 00:17 | 머지 | 본줄기에 합침. 이슈 #83이 자동으로 닫힘 |
Closes #83## 무엇을 했나9/11 구연재 주임 BO 1차 피드백(…) 1장 중 1-2·1-3·1-4·1-5.- 1-2 정렬 정리 · 연도·등록일 헤더만 클릭해서 정렬한다. (…)- 1-4 ⌘K 삭제 · 상단 검색창의 ⌘K 배지와 (…) 스타일을 지웠다.## 하지 않은 것- 1-1 필터 최대 2개 중복 선택은 뜻을 9/14 리뷰에서 확인한 뒤 따로 한다.- 서버는 손대지 않았다.## 확인- 로컬 BO에서 눈으로 확인: (…) 처음 열면 10건, (…) 검색창 ⌘K 없음.- `cd apps/bo && npm run build` 통과.
리뷰 완료했습니다.
- 목록 정렬 대상 축소와 표시 개수(10·20·50) 변경이 API 요청 및 페이지 수 계산에 일관되게 반영됐습니다.
- `apps/bo`: `npm run build` 통과
- `server`: `go test ./...` 통과
차단할 이슈는 발견하지 못했습니다.

name: Deploy Site to Staging (FO + BO /admin)
on:
push:
branches: [main]
paths:
- 'apps/fo/**'
- 'apps/bo/**'
- '.github/workflows/deploy-fo.yml'
workflow_dispatch: ← 사람이 버튼으로 직접 돌릴 수도 있다
Deploy to Cloudflare Pages — STAGING preview. 지금은 여기까지만 갑니다.| 합친 것 | 배포 시작 | 끝 |
|---|---|---|
| #84 목록 손질 | 9/13 00:17:12 | 00:19:15 |
| #86 저장 토스트 | 9/13 01:37:38 | 01:39:18 |
| #88 Goal 카드 | 9/13 11:55:38 | 11:57:42 |
| #90 상세 읽기 모드 | 9/13 23:33:05 | 23:34:54 |
| #92 미저장 이탈 경고 | 9/14 01:00:35 | 01:02:40 |
| 작업 | 무엇이 | 어디서 걸렸나 | 그다음 |
|---|---|---|---|
| 3 Goal 카드 | 대외비 폼 파일이 지시문에 없었다 | 화면 확인에서 대외비 폼이 안 바뀐 것을 봄 | 파일을 추가해 같은 커밋에 |
| 4 읽기 모드 | 지시에 없는 변경(게시 가능 조건)이 섞였다 | 관리 세션이 커밋 전 대조에서 골라냄 | 저에게 물은 뒤 따로 커밋 |
아래 요청 항목을 읽고, 코딩 세션에 그대로 붙여 넣을 지시문 한 장을 써 줘.- 공통 규칙은 작업지시_260912_BO1차피드백_PR별.md 의 공통 규칙 열 줄을 그대로 쓴다.- 작업 덩어리에는 손대는 파일 이름, 원문 항목 번호, 안 하는 것, 확인 목록, 커밋 단위를 넣는다.- 원문에 없는 것을 보태지 않는다. 두 갈래로 읽히는 줄이 있으면 지시문을 쓰지 말고 먼저 물어봐.- 저장소를 읽고 얼마나 걸릴지(0.25일 단위)와 다른 작업과 겹치는 파일이 있는지 같이 적어.
번호 : 어느 화면 : 지금 어떻게 나오나 : 어떻게 나와야 하나 : 이번에 안 해도 되는 것 : 언제까지, 그때까지 답이 없으면 어떻게 :