STEP 1599 の source_freshness は「file が新しいか」だけを測った (外部 API 呼出 0)。
本 STEP は外部真値 (external oracle)と照合し「fetcher が真の publisher より遅れているか」を測る。
これが Rei stack 初のコンパレータ素子 (rei-meta divergence-detection の汎用化)。
scripts/comparator/ ├── lib/ │ ├── oracle.ts — 抽象 Oracle contract (source-agnostic) │ └── oracle-arxiv.ts — arXiv Query API adapter + Atom parser ├── gauges/ │ └── harvest_lag.ts — delta-time verdict logic └── run-harvest-lag.ts — CLI runner (rate-limited ≥3.5s/call per arXiv ToU) test/step1601-harvest-lag-test.ts — 25/25 PASS (mock oracle、network 不要) data/comparator/harvest-lag-latest.json — live report (chat-Claude fetch 可能)
Delta = (oracle newest published) − (internal newest published)、単位時間。
| Verdict | 条件 | 意味 |
|---|---|---|
| TRUE | delta ≤ 6h | 健全 (lag ほぼゼロ) |
| NEITHER | 6h < delta ≤ 24h | aging (watch) |
| FALSE | 24h < delta ≤ 72h | lagging (action) |
| ZERO | delta > 72h または internal 0 papers | dead pipeline |
| FLOWING | oracle 到達不可 or 応答空 | 診断不可 (fetcher 失敗ではない) |
| Feed | Verdict | Delta | Oracle newest |
|---|---|---|---|
math.NT | TRUE | 0.0h | 2026-08-27T17:45:07Z |
math.LO | TRUE | 0.0h | 2026-08-27T13:15:12Z |
math.DG | TRUE | 0.0h | 2026-08-27T17:53:27Z |
cs.LO | TRUE | 0.0h | 2026-08-27T14:28:11Z |
cs.AI | TRUE | 0.0h | 2026-08-27T17:59:11Z |
cs.LG | TRUE | 0.0h | 2026-08-27T17:46:21Z |
cs.CL | TRUE | 0.0h | 2026-08-27T17:59:30Z |
physics.gen-ph | TRUE | 0.0h | 2026-08-24T12:22:20Z |
quant-ph | TRUE | 0.0h | 2026-08-27T17:59:51Z |
Round 011 検査票 (2026-08-26) は get_arxiv_papers / get_knowledge_stats の arxiv=0 / wikipedia=0 を「fetch pipeline gap」と診断した (daemon 側の話)。
本 STEP は別 pipeline (arxiv-recent cron)について「lag ゼロ、healthy」の evidence を独立に測った。
daemon 側の 0 rows は本 STEP の対象外だが、同じ手法で daemon DB を internal 側に差し替えれば daemon の harvest_lag が測れる (別 STEP 候補)。
Rei stack に初めて追加された「外部真値と内部を突合する」素子:
Oracle 契約は source-agnostic なので Zenodo / HuggingFace / OpenAlex / bioRxiv 等への extension は adapter 追加のみ (別 STEP)。
| # | 計器 | 状態 |
|---|---|---|
| 1 | source_freshness | ✅ STEP 1599 v0.1 (72 sources: fresh=17 / dead=42 / unknown=13) |
| 2 | harvest_lag | ✅ STEP 1601 v0.1 (arXiv 9 feeds: fresh=9 / lag=0h) |
| 3 | dedup_collision | ⏳ 次 STEP (arxiv-recent / arxiv-edu / research-radar/arxiv 3 経路 DOI 突合) |
chat-Claude 直 fetch URL:
https://rei-aios.pages.dev/tools/step-1601-harvest-lag-arxiv/https://rei-aios.pages.dev/data/comparator/harvest-lag-latest.jsonsource_freshness: /tools/step-1599-comparator-framework/https://info.arxiv.org/help/api/tou.html