From ddfcdbb68a1fe0f0b67839fbafbab2711b10aaba Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Fri, 24 Apr 2026 09:20:21 +0900 Subject: [PATCH] =?UTF-8?q?fix(documents):=20frontend=20=EC=97=90=20catego?= =?UTF-8?q?ry=20URL=20param=20=EC=A7=80=EC=9B=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `/documents?category=law` 같은 URL 이 프론트에서 무시되던 버그 — `+page.svelte` 의 filter state 에 `category` 가 빠져 있어 API 호출 시 `?category=` 가 서버로 전달 안 됐음. 결과적으로 default 목록 (news/law 만 제외한 전체) 이 반환됐다. Sidebar '법령 알림' 버튼 (e88640d) + API `category` 필터 (§§2A) 는 이미 반영됨 — 프론트 middleware 만 추가. Co-Authored-By: Claude Opus 4.7 (1M context) --- frontend/src/routes/documents/+page.svelte | 3 +++ 1 file changed, 3 insertions(+) diff --git a/frontend/src/routes/documents/+page.svelte b/frontend/src/routes/documents/+page.svelte index 7662f78..567708c 100644 --- a/frontend/src/routes/documents/+page.svelte +++ b/frontend/src/routes/documents/+page.svelte @@ -141,6 +141,7 @@ let filterTag = $derived($page.url.searchParams.get('tag') || ''); let filterSource = $derived($page.url.searchParams.get('source') || ''); let filterFormat = $derived($page.url.searchParams.get('format') || ''); + let filterCategory = $derived($page.url.searchParams.get('category') || ''); // D.2: 필터 칩 popover 상태 let tagPopoverOpen = $state(false); @@ -188,6 +189,7 @@ const _t = filterTag; const _src = filterSource; const _f = filterFormat; + const _c = filterCategory; const urlQ = $page.url.searchParams.get('q') || ''; const urlMode = $page.url.searchParams.get('mode') || 'hybrid'; @@ -218,6 +220,7 @@ if (filterTag) params.set('tag', filterTag); if (filterSource) params.set('source', filterSource); if (filterFormat) params.set('format', filterFormat); + if (filterCategory) params.set('category', filterCategory); const data = await api(`/documents/?${params}`); documents = data.items;