{"running":null,"status":"tracked","retry":null,"issue_id":"43cef10e-360d-490a-a825-91bef45fd676","workspace":{"path":"/Users/julian/.codex/worktrees/symphony/TEC-66","host":null},"attempts":{"current_retry_attempt":0,"restart_count":0},"issue_identifier":"TEC-66","last_error":null,"logs":{"codex_session_logs":[]},"recent_events":[],"tracked":{"priority":"Low","state":"Ready for Verify","title":"정산도구 상단 필터가 내역 조회에 적용됨","url":"https://linear.app/tonextchapter/issue/TEC-66/정산도구-상단-필터가-내역-조회에-적용됨","updated_at":"2026-04-08 09:26 UTC","detail":{"ready_for_verify":"### 2026-04-08\n\nself-review result summary\n현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 건 없었어요. 조회/다운로드 기준에서 상단 브랜드/구매담당자 필터가 빠지고, 화면에서는 행 단위 컬럼으로 확인하는 흐름으로 정리돼 있어요.\n로컬 페이지 오픈은 `pnpm -C web dev`가 `Symlink web/node_modules is invalid, it points out of the filesystem root` Turbopack panic으로 바로 죽어서 못 봤어요.\n\ntest urls\n\n* `http://localhost:3000/settlement-tools`\n* `http://localhost:3000/settlement-tools?brand=test&sourcingManagerId=99999&startDate=2026-03-01&endDate=2026-03-31`\n\nverify focus\n\n* `/settlement-tools` 상단에서 브랜드, 구매담당자 공통 필터가 더 이상 보이지 않는지 봐주세요.\n* 두 번째 URL처럼 `brand`, `sourcingManagerId`가 쿼리에 있어도 조회 결과와 적용 필터 칩이 공급처/기간 기준으로만 움직이는지 봐주세요.\n* 상세보기를 끈 기본 표에서도 각 섹션 행에 `브랜드`, `구매담당자` 컬럼이 바로 보이는지 봐주세요.","agent_analysis":"### 요청 요약\n\n* `NextCentury > 정산도구` 화면에서 Century 상단 공통 필터인 브랜드, 구매담당자 값이 정산도구 조회 API까지 같이 전달되고 있어서 거래내역이 의도치 않게 좁혀지고 있어요.\n* 요청은 상단 공통 필터는 이 화면 조회에서 제외하고, 필요한 브랜드/구매담당자 정보는 각 내역 행에서 바로 보이게 바꾸는 거예요.\n\n### 기대 동작\n\n* 정산도구 조회는 공급처, 기간, 페이지 크기, 상세보기 토글 기준으로만 동작해야 해요.\n* 상단 브랜드/구매담당자 선택값이 남아 있어도 정산도구 데이터 조회 결과와 다운로드 기준에는 영향이 없어야 해요.\n* 브랜드와 구매담당자 정보는 각 섹션 행에서 바로 확인할 수 있어야 해요.\n\n### 관련 화면/경로\n\n* 화면: `/settlement-tools`\n* 프론트: `web/src/app/(pages)/(nextcentury)/(century)/settlement-tools/ui/SettlementToolsPageClient.tsx`\n* 테이블 표시: `web/src/app/(pages)/(nextcentury)/(century)/settlement-tools/component/SectionTable.tsx`, `web/src/app/(pages)/(nextcentury)/(century)/settlement-tools/component/AppliedFilters.tsx`\n* 상단 공통 필터: `web/src/components/layouts/nextcentury/century/CenturyTopBar.tsx`\n* API/BFF: `web/src/app/api/nextcentury/screens/century/settlement-tools/route.ts`\n* 서비스/Repo: `web/src/server/services/nextcentury/century/century-settlement-tools.service.ts`, `web/src/server/services/nextcentury/century/century-settlement-tools.repo.server.ts`\n* SSOT/원본: `web/docs/domains/nextcentury/century/settlement-tools/prd.md`, `web/docs/domains/nextcentury/sources/NextCentury-retool/lib/querySPOItems.sql`, `web/docs/domains/nextcentury/sources/NextCentury-retool/lib/queryExtraPOItems.sql`, `web/docs/domains/nextcentury/sources/NextCentury-retool/lib/queryWMSCancelInboundItems.sql`\n\n### 재현 방법 또는 근거\n\n* Century 상단에서 브랜드나 구매담당자를 선택한 뒤 `/settlement-tools`로 이동해서 조회하면, 화면 상단 칩에 해당 값이 표시되고 결과 건수도 같이 좁혀져요.\n* 현재 프론트는 `qs.brand`, `qs.sourcingManagerId`를 query key와 GET 파라미터로 넘기고 있고, repo는 3개 섹션 SQL `WHERE`에 둘 다 적용하고 있어요.\n* 반면 Retool 원본 SQL 3개는 공급처/기간 조건만 쓰고 브랜드/구매담당자 조건은 없어서, 현재 NCOS 동작이 이 화면의 원본 동작보다 더 강하게 필터링하고 있어요.\n* 현재 row 데이터에는 `brandName`, `sourcingManagerId`, `sourcingManagerName`이 이미 내려오지만 기본 표에서는 숨김 처리돼 있어서, 상단 필터를 빼면 행 단위 컨텍스트가 바로 안 보여요.\n\n### 완료 조건\n\n* 정산도구 조회/다운로드에서 상단 브랜드, 구매담당자 값이 더 이상 결과를 좁히지 않아요.\n* 화면에서 브랜드와 구매담당자 정보를 행 단위로 바로 확인할 수 있어요.\n* 공급처/기간 필터, 섹션별 다운로드, 합계 계산은 기존대로 유지돼요.\n* 정산도구 감사 로그에는 실제 이 화면에서 적용된 조회 기준만 남아요.\n\n### 애매한 지점\n\n* 상단 공통 필터를 그냥 보이기만 하고 무시할지, 아예 이 화면에서 숨길지 판단 포인트가 있었는데 스크린샷처럼 지금은 사용자가 실제 필터로 이해할 수 있는 상태라서 숨기고 동시에 조회/다운로드 로직에서도 완전히 제외하는 쪽이 더 합당하다고 봤어요. 대신 브랜드/구매담당자 정보는 기본 표 컬럼으로 올려서 행 단위 컨텍스트를 바로 보이게 하면 요청 취지와 화면 사용성이 같이 맞습니다. 기존 row 데이터는 이미 내려오고 있어서 이번 수정은 여기까지면 충분하다고 판단했어요.","decision_needed":"없음","human_notes":"* 없음","human_review_entry":null,"ready_for_verify_test_urls":[],"release":"없음","review_updates":"### 2026-04-08\n\n* 현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 기능 이슈는 없었어요.\n* PRD까지 같이 바뀐 건이라 `Last verified` 날짜를 `2026-04-08`로 맞춰뒀어요.","rework_request":"없음","slack_request":"정산도구에서 맨 상단의 브랜드, 구매담당자 필터가 내역 조회에도 함께 적용되고 있습니다. 상단 필터는 정산도구에는 적용되지 않도록 변경하고, 브랜드와 담당자 정보는 내역별로 표시하는 방향으로 요청되었습니다.\n\n![image.png](https://uploads.linear.app/7c52ab50-7609-4512-9c46-3c8e24ee8e67/bc412b4c-7208-41f0-bdbe-c00bfe43aaaf/a2d3ae64-cdca-4ce9-b2cd-a2ac9c04289e?signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXRoIjoiLzdjNTJhYjUwLTc2MDktNDUxMi05YzQ2LTNjOGUyNGVlOGU2Ny9iYzQxMmI0Yy03MjA4LTQxZjAtYmRiZS1jMDBiZmU0M2FhYWYvYTJkM2FlNjQtY2RjYS00Y2U5LWIyY2QtYTJhYzljMDQyODllIiwiaWF0IjoxNzc1NDUyMzY4LCJleHAiOjE3NzU0NTI2Njh9.LVSMH6cSp0FLXf9MoXve_URbx29AIQb2vn6hSg6FYyc)\n\n* 요청자: Susan Sujeong Yoon\n* 요청일: 2026-03-31\n* Slack 링크: [https://nextchapter-inc.slack.com/archives/C04EFJG5MA7/p1774921500635069?thread_ts=1774921500.635069&cid=C04EFJG5MA7](<https://nextchapter-inc.slack.com/archives/C04EFJG5MA7/p1774921500635069?thread_ts=1774921500.635069&cid=C04EFJG5MA7>)","verify_history":"### 2026-04-08 18:25\n\n* 리뷰 반영: 현재 diff랑 주변 코드 같이 봤는데 이번 변경 범위에서 크게 걸리는 기능 이슈는 없었어요.\n* 리뷰 반영: PRD 메타데이터도 같이 바뀐 상태라 `Last verified`를 `2026-04-08`로 맞춰뒀어요.\n* Ready for Verify: `pnpm -C web exec biome lint ...`, `pnpm -C web typecheck` 통과했어요.\n* Ready for Verify: 로컬 `pnpm -C web dev`는 `Symlink web/node_modules is invalid, it points out of the filesystem root` Turbopack panic으로 페이지 오픈 검증은 못 했어요."}}}