k-skill/docs
Jeffrey (Dongkyu) Kim 4c7877a5c9 Add naver-news-search skill and /v1/naver-news/search proxy route
Closes #143. Proxies the official Naver Search Open API news endpoint
(openapi.naver.com/v1/search/news.json) through k-skill-proxy so users do
not need to issue their own Naver Client ID/Secret. Reuses the existing
NAVER_SEARCH_CLIENT_ID/NAVER_SEARCH_CLIENT_SECRET that naver-shopping already
consumes, since the Naver Developer application enables the 'Search' scope
covering both news and shopping.

Implementation details:
- src/naver-news.js normalizes q/display/start/sort, builds the official URL,
  calls upstream with X-Naver-Client-Id/Secret headers, and parses the JSON
  response into rank/title/description/link/original_link/pub_date items.
- Strips <b> highlight tags and decodes HTML entities in title/description
  using zero-width replacement so compound Korean words like '주식형' are
  preserved (not split into '주식 형').
- Parses RFC822 pubDate into pub_date_iso (ISO-8601 UTC) for clients.
- Deduplicates items by normalized link; drops entries missing title/link.
- Returns 503 upstream_not_configured when proxy keys are absent (no public
  BFF fallback exists for news like it does for shopping, so keys are
  required).
- Failure responses are not cached (failure-aware cache layer).
- Exposes naverNewsApiConfigured on /health.

14 new tests in test/naver-news.test.js cover query validation, URL
building, payload normalization (HTML stripping, entity decoding,
deduplication, missing-field tolerance), plus Fastify integration tests
for 200/400/401/429/500/503 paths, cache hit/miss, header wiring, and
the health flag.
2026-04-22 12:30:02 +09:00
..
assets Prepare k-skill for packaged releases and broader skill discovery 2026-03-25 23:57:53 +09:00
features Add naver-news-search skill and /v1/naver-news/search proxy route 2026-04-22 12:30:02 +09:00
adding-a-skill.md NEIS 급식·학교검색 프록시, k-schoollunch-menu 스킬 및 문서 2026-04-10 13:14:15 +09:00
install.md Document korean-privacy-terms skill across repo docs 2026-04-20 12:06:57 +09:00
releasing.md Align Changesets release flow with generated package changelogs 2026-03-30 22:27:07 +09:00
roadmap.md Add lh-notice-search skill and /v1/lh-notice/{search,detail} proxy routes 2026-04-22 10:58:03 +09:00
security-and-secrets.md Route MFDS drug-safety and food-safety lookups through k-skill-proxy 2026-04-14 00:07:18 +09:00
setup.md Add library book search skill 2026-04-18 21:24:04 +09:00
sources.md Add lh-notice-search skill and /v1/lh-notice/{search,detail} proxy routes 2026-04-22 10:58:03 +09:00