Skip to content

Improve RSS ingest: source full article body, enforce article-scrap conventions#336

Merged
boykush merged 1 commit into
mainfrom
claude/kind-bell-bf087b
Jul 4, 2026
Merged

Improve RSS ingest: source full article body, enforce article-scrap conventions#336
boykush merged 1 commit into
mainfrom
claude/kind-bell-bf087b

Conversation

@boykush

@boykush boykush commented Jul 4, 2026

Copy link
Copy Markdown
Owner

What

RSS ingest の品質を3点改善する。

① フィード本文を情報源にする(WebFetch 要約のバイパス)

fetch-rss は URL/title だけを出力し、記事本文は WebFetch 頼みだった。WebFetch はページを要約して返すため、Claude が記事全文を把握できず、記事に登場しない用語まで scrap リンク化する問題があった。

  • 新タスク mise-tasks/fetch-article-body: フィードの content:encoded / summary から本文を引き、Markdown 化して出力。create-scraparticle-body.md に保存し、Claude が Read で全文を読む。
  • 抜粋のみのフィード(<1500字)は空出力とし、Claude が WebFetch にフォールバック。

② 記事タイトルを維持 / ③ [[Blog]] への集約

prompt にローカル規約を追記:記事タイトルをそのまま使う・記事内容を概念 scrap に混ぜない・末尾に [[Blog|ブログ]]。タイトルは matrix.article.title を変数で渡し確定させ、WebFetch 取得のブレを回避。

Why

  • Securing CI-CD... は本文に「CNCF ブログ記事」と書きながら [[Blog]] 未リンク、GitHub Advisory Database は記事統計が概念 scrap に混入していた(後から手動分割 ed1b5e3)。
  • 根本原因は WebFetch の要約。フィード 4/6 は全文を持つため、本文を直接渡せる。

設計メモ(レビュー向け)

  • 本文取得は Actions の run: ステップで実行。.claude/settings.jsonpermissions.allowBash(scraps:*) のみで Claude に mise run させられないため。
  • list-articles は url/title のまま。全文は各 create-scrap ジョブが1記事分だけ取得し、job output 肥大を回避。
  • URL は env 経由で渡しインジェクションを回避。

検証

実フィードで fetch-article-body を実行:

  • 全文フィード(github/flatt/cncf/kubernetes)→ 本文 Markdown 6K〜25K字(要約でなく本文冒頭)
  • 抜粋フィード(otel/martinfowler)→ 空出力(WebFetch フォールバック)
  • ワークフロー YAML パース OK

🤖 Generated with Claude Code

…onventions

RSS ingest passed only the URL to Claude and relied on WebFetch, which
summarizes the page. Claude never saw the full article, so it linked
terms that don't appear in it, and had no rule to preserve the article
title or link to [[Blog]].

- Add mise-tasks/fetch-article-body: pull the entry's full body from the
  feed (content:encoded / summary), convert to Markdown. create-scrap
  saves it to article-body.md for Claude to Read, bypassing WebFetch's
  summary. Excerpt-only feeds (<1500 chars) emit nothing, so Claude falls
  back to WebFetch.
- rss-to-scrap.yml: add mise-action and a body-fetch step to create-scrap,
  and update the prompt to treat article-body.md as the source of truth.
- Prompt conventions: use the article title verbatim, keep article content
  in its own scrap rather than merging into concept scraps, and end with
  [[Blog|ブログ]].
- gitignore the transient article-body.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@boykush boykush merged commit 76fdacc into main Jul 4, 2026
1 check passed
@boykush boykush deleted the claude/kind-bell-bf087b branch July 4, 2026 06:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant