{"running":null,"status":"tracked","retry":null,"issue_id":"dd65b543-7068-4caf-b21f-5cb0e2eccad4","workspace":{"path":"/Users/julian/.codex/worktrees/symphony/TEC-39","host":null},"attempts":{"current_retry_attempt":0,"restart_count":0},"issue_identifier":"TEC-39","last_error":null,"logs":{"codex_session_logs":[]},"recent_events":[],"tracked":{"priority":"Low","state":"Ready for Verify","title":"입고계획 다운로드 컬럼 표시 방식 개선","url":"https://linear.app/tonextchapter/issue/TEC-39/입고계획-다운로드-컬럼-표시-방식-개선","updated_at":"2026-04-09 02:09 UTC","detail":{"ready_for_verify":"### 2026-04-09\n\nself-review result summary\n현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 건 없었어요. 다운로드 조립부에서만 값 표시를 보강해서 화면 컬럼 가시성과 무관하게 요청한 3개 항목은 고정해서 내려가요.\n\ntest urls\n\n* `/inbound-plans-list`\n\nverify focus\n\n* 컬럼 설정에서 `Supplier code`, `구매담당자`를 숨긴 뒤 메인 `다운로드`를 눌러도 엑셀에 `공급처명`, `공급처코드`, `구매담당자`가 계속 들어가는지 봐주세요.\n* 엑셀의 `BLK|PLT` 값이 숫자 `1`, `2` 대신 `BLK`, `PLT`로 내려가는지 봐주세요.\n* 공급처는 이름/코드가 분리 컬럼으로 내려가고, 구매담당자는 이름 우선으로 보이는지 확인해주시면 됩니다.\n\n참고: `biome lint`와 `pnpm typecheck`는 통과했고, 로컬 브라우저 검증은 worktree `web/node_modules` symlink 문제로 `pnpm dev`가 Turbopack panic 나서 여기서는 못 봤어요.","agent_analysis":"### 요청 요약\n\n* 메인 입고계획 다운로드 파일에서 `BLK|PLT`, 구매담당자, 공급처 표시값을 사람이 바로 읽을 수 있게 정리하는 요청입니다.\n* 숫자/코드 위주로 내려가는 값을 `이름` 또는 `이름+코드` 형태로 맞추는 게 핵심입니다.\n\n### 기대 동작\n\n* `BLK|PLT` 컬럼은 `1`, `2` 대신 각각 `BLK`, `PLT`로 내려갑니다.\n* 구매담당자는 코드만 내려가지 않도록 이름 기준으로 표기하고, 이름 매핑이 없는 경우에만 기존 ID fallback을 유지합니다.\n* 공급처는 PO 기준으로 공급처명과 공급처코드가 같이 내려갑니다.\n* 위 3개 항목은 다운로드 파일 계약으로 고정해서, 화면 컬럼 표시 여부와 무관하게 기대 결과가 나오도록 맞춥니다.\n\n### 관련 화면/경로\n\n* 화면: `/inbound-plans-list`\n* 메인 다운로드 조립: `web/src/app/(pages)/(nextcentury)/(century)/inbound-plans-list/ui/InboundPlansListPageClient.tsx`\n* 조회 스키마: `web/src/lib/schema/nextcentury/century/inbound-plans-list.schema.ts`\n* 조회 리포지토리: `web/src/server/services/nextcentury/century/century-inbound-plans-list.repo.server.ts`\n\n### 재현 방법 또는 근거\n\n* 메인 툴바의 `다운로드` 버튼은 `handleDownload`에서 전체 데이터를 다시 조회한 뒤 엑셀 컬럼을 조립합니다.\n* 현재 `blkOrPlt` 컬럼은 `exportValue`가 없어 원본값 `1`, `2`가 그대로 파일에 들어갈 수 있습니다.\n* 현재 공급처는 `supplierCode` 컬럼 묶음으로만 export에 들어가는데, 이 컬럼이 기본 숨김이라 파일에서도 빠질 수 있습니다.\n* 구매담당자는 이미 bootstrap의 `sourcingUsers`를 써서 이름 우선 export가 가능하게 되어 있어서, 별도 DB/권한 변경 없이 프론트 조립 범위에서 해결 가능합니다.\n\n### 완료 조건\n\n* 메인 입고계획 다운로드 파일에서 `BLK|PLT`가 숫자 대신 `BLK`/`PLT`로 나온다.\n* 구매담당자가 이름 기준으로 보인다.\n* 공급처명과 공급처코드가 같이 나온다.\n* 공통 UI, 권한, DB 스키마 변경 없이 해당 화면 다운로드 범위에서 해결된다.\n\n### 애매한 지점\n\n* 같은 화면에 `주간 입고 계획` 다운로드도 있어서 범위를 어디까지 볼지 판단 포인트가 있었는데, 이번 요청의 컬럼 내용과 현재 메인 다운로드 구현이 정확히 맞물려 있어서 메인 `다운로드` 플로우만 수정하는 게 가장 합당하다고 봤어요. 주간 다운로드는 컬럼 구조 자체가 다르고 이번 요청 필드들과도 직접 대응되지 않아서 이번 범위에선 제외해도 충분합니다.\n* 또 현재 메인 다운로드가 화면의 가시 컬럼을 따라가는 구조라서 공급처 컬럼을 단순히 기본 표시로만 바꿀지 판단 포인트가 있었는데, 이번 이슈는 화면 표시가 아니라 파일 계약 개선 요청이라 export 조립부에서 필요한 컬럼을 명시적으로 보강하는 쪽이 더 안전합니다. 이렇게 하면 사용자가 컬럼 설정을 바꿔도 요청한 다운로드 결과는 안정적으로 유지됩니다.","decision_needed":"없음","human_notes":"없음","human_review_entry":null,"ready_for_verify_test_urls":["* `/inbound-plans-list`"],"release":"없음","review_updates":"### 2026-04-09\n\n* 이번 리뷰에서는 크게 손볼 건 없어서 그대로 마무리했어요.","rework_request":"없음","slack_request":"입고계획 파일 다운로드 시 표시 정보 개선이 필요합니다.\n\n* BLK/PLT 값이 숫자 `1`, `2`로 내려가고 있어 각각 `BLK`, `PLT`로 표기되도록 변경\n* 구매담당자가 코드로만 표시되고 있어 이름 컬럼을 추가하거나 구매담당자명을 직접 표기하도록 변경\n* PO 기준으로 공급처명(발주처)과 공급처 코드를 함께 표시하도록 추가\n\n![image.png](https://uploads.linear.app/7c52ab50-7609-4512-9c46-3c8e24ee8e67/1861449d-e909-499f-9603-9f3826f47847/cf29f899-ac1a-45be-8ec6-e0206b2e6130?signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXRoIjoiLzdjNTJhYjUwLTc2MDktNDUxMi05YzQ2LTNjOGUyNGVlOGU2Ny8xODYxNDQ5ZC1lOTA5LTQ5OWYtOTYwMy05ZjM4MjZmNDc4NDcvY2YyOWY4OTktYWMxYS00NWJlLThlYzYtZTAyMDZiMmU2MTMwIiwiaWF0IjoxNzc1NzAwMDUzLCJleHAiOjE3NzU3MDAzNTN9.cQ1wDihnpmSku7jvO530szwH3fLZcd65vYh2ixHCHco)\n\n![image.png](https://uploads.linear.app/7c52ab50-7609-4512-9c46-3c8e24ee8e67/b17630fb-1268-4d52-924f-9209187d6931/98ee6d0a-dbdc-443a-9fa2-05eac583fbfd?signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXRoIjoiLzdjNTJhYjUwLTc2MDktNDUxMi05YzQ2LTNjOGUyNGVlOGU2Ny9iMTc2MzBmYi0xMjY4LTRkNTItOTI0Zi05MjA5MTg3ZDY5MzEvOThlZTZkMGEtZGJkYy00NDNhLTlmYTItMDVlYWM1ODNmYmZkIiwiaWF0IjoxNzc1NzAwMDUzLCJleHAiOjE3NzU3MDAzNTN9.Mz0rJQDR5l1xjV9sOn8cjoMLn8I2n9KEZa8hvnMifE8)\n\n![image.png](https://uploads.linear.app/7c52ab50-7609-4512-9c46-3c8e24ee8e67/2a06c82c-62c3-4c6d-96ee-b23d3386efd6/d05b2dc3-4baf-4fb7-a9bb-b426d57071c9?signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXRoIjoiLzdjNTJhYjUwLTc2MDktNDUxMi05YzQ2LTNjOGUyNGVlOGU2Ny8yYTA2YzgyYy02MmMzLTRjNmQtOTZlZS1iMjNkMzM4NmVmZDYvZDA1YjJkYzMtNGJhZi00ZmI3LWE5YmItYjQyNmQ1NzA3MWM5IiwiaWF0IjoxNzc1NzAwMDUzLCJleHAiOjE3NzU3MDAzNTN9.SjjfkRS0j1odZl7r09dEcomjRbQFBw39aucKIQuLslg)\n\n## Agent Analysis\n\n### 요청 요약\n\n* 메인 입고계획 다운로드 파일에서 `BLK|PLT`, 구매담당자, 공급처 표시값을 사람이 바로 읽을 수 있게 정리하는 요청입니다.\n* 숫자/코드 위주로 내려가는 값을 `이름` 또는 `이름+코드` 형태로 맞추는 게 핵심입니다.\n\n### 기대 동작\n\n* `BLK|PLT` 컬럼은 `1`, `2` 대신 각각 `BLK`, `PLT`로 내려갑니다.\n* 구매담당자는 코드만 내려가지 않도록 이름 기준으로 표기하고, 이름 매핑이 없는 경우에만 기존 ID fallback을 유지합니다.\n* 공급처는 PO 기준으로 공급처명과 공급처코드가 같이 내려갑니다.\n* 위 3개 항목은 다운로드 파일 계약으로 고정해서, 화면 컬럼 표시 여부와 무관하게 기대 결과가 나오도록 맞춥니다.\n\n### 관련 화면/경로\n\n* 화면: `/inbound-plans-list`\n* 메인 다운로드 조립: `web/src/app/(pages)/(nextcentury)/(century)/inbound-plans-list/ui/InboundPlansListPageClient.tsx`\n* 조회 스키마: `web/src/lib/schema/nextcentury/century/inbound-plans-list.schema.ts`\n* 조회 리포지토리: `web/src/server/services/nextcentury/century/century-inbound-plans-list.repo.server.ts`\n\n### 재현 방법 또는 근거\n\n* 메인 툴바의 `다운로드` 버튼은 `handleDownload`에서 전체 데이터를 다시 조회한 뒤 엑셀 컬럼을 조립합니다.\n* 현재 `blkOrPlt` 컬럼은 `exportValue`가 없어 원본값 `1`, `2`가 그대로 파일에 들어갈 수 있습니다.\n* 현재 공급처는 `supplierCode` 컬럼 묶음으로만 export에 들어가는데, 이 컬럼이 기본 숨김이라 파일에서도 빠질 수 있습니다.\n* 구매담당자는 이미 bootstrap의 `sourcingUsers`를 써서 이름 우선 export가 가능하게 되어 있어서, 별도 DB/권한 변경 없이 프론트 조립 범위에서 해결 가능합니다.\n\n### 완료 조건\n\n* 메인 입고계획 다운로드 파일에서 `BLK|PLT`가 숫자 대신 `BLK`/`PLT`로 나온다.\n* 구매담당자가 이름 기준으로 보인다.\n* 공급처명과 공급처코드가 같이 나온다.\n* 공통 UI, 권한, DB 스키마 변경 없이 해당 화면 다운로드 범위에서 해결된다.\n\n### 애매한 지점\n\n* 같은 화면에 `주간 입고 계획` 다운로드도 있어서 범위를 어디까지 볼지 판단 포인트가 있었는데, 이번 요청의 컬럼 내용과 현재 메인 다운로드 구현이 정확히 맞물려 있어서 메인 `다운로드` 플로우만 수정하는 게 가장 합당하다고 봤어요. 주간 다운로드는 컬럼 구조 자체가 다르고 이번 요청 필드들과도 직접 대응되지 않아서 이번 범위에선 제외해도 충분합니다.\n* 또 현재 메인 다운로드가 화면의 가시 컬럼을 따라가는 구조라서 공급처 컬럼을 단순히 기본 표시로만 바꿀지 판단 포인트가 있었는데, 이번 이슈는 화면 표시가 아니라 파일 계약 개선 요청이라 export 조립부에서 필요한 컬럼을 명시적으로 보강하는 쪽이 더 안전합니다. 이렇게 하면 사용자가 컬럼 설정을 바꿔도 요청한 다운로드 결과는 안정적으로 유지됩니다.\n\n## Decision Needed\n\n없음\n\n## Rework 요청\n\n없음\n\n## 리뷰에서 반영한 것\n\n### 2026-04-09\n\n* 이번 리뷰에서는 크게 손볼 건 없어서 그대로 마무리했어요.\n\n## Ready for Verify\n\n### 2026-04-09\n\nself-review result summary\n현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 건 없었어요. 다운로드 조립부에서만 값 표시를 보강해서 화면 컬럼 가시성과 무관하게 요청한 3개 항목은 고정해서 내려가요.\n\ntest urls\n\n* `/inbound-plans-list`\n\nverify focus\n\n* 컬럼 설정에서 `Supplier code`, `구매담당자`를 숨긴 뒤 메인 `다운로드`를 눌러도 엑셀에 `공급처명`, `공급처코드`, `구매담당자`가 계속 들어가는지 봐주세요.\n* 엑셀의 `BLK|PLT` 값이 숫자 `1`, `2` 대신 `BLK`, `PLT`로 내려가는지 봐주세요.\n* 공급처는 이름/코드가 분리 컬럼으로 내려가고, 구매담당자는 이름 우선으로 보이는지 확인해주시면 됩니다.\n\n참고: `biome lint`와 `pnpm typecheck`는 통과했고, 로컬 브라우저 검증은 worktree `web/node_modules` symlink 문제로 `pnpm dev`가 Turbopack panic 나서 여기서는 못 봤어요.\n\n## 검증 히스토리\n\n### 2026-04-09 11:08\n\n* 리뷰에서 반영한 것: 이번 리뷰에서는 크게 손볼 건 없어서 그대로 마무리했어요.\n* Ready for Verify: 현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 건 없었어요. `biome lint`와 `pnpm typecheck`는 통과했고, 로컬 브라우저 검증은 worktree `web/node_modules` symlink 문제로 `pnpm dev`가 Turbopack panic 나서 못 봤어요.","verify_history":"### 2026-04-09 11:08\n\n* 리뷰에서 반영한 것: 이번 리뷰에서는 크게 손볼 건 없어서 그대로 마무리했어요.\n* Ready for Verify: 현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 건 없었어요. `biome lint`와 `pnpm typecheck`는 통과했고, 로컬 브라우저 검증은 worktree `web/node_modules` symlink 문제로 `pnpm dev`가 Turbopack panic 나서 못 봤어요."}}}