第 5 视角门户 · DATA · 2026-06-09 时间锚

处理了哪些数据,
跑到第几步了?

把 Satellite Agent 当前在吃 / 已经吃过 / 还没吃的数据,逐一摊开。 8 条 Source 实现 + 1 层 wiki 种子层 → 6 条 skill know-how → 7 步处理流水线 → 沉淀进 agent.db / samples / wiki 三大产物。 每条都标了实测量、跑通状态、剩余缺口,直接对应"下次开发挑哪条"。

看 8 数据源 → 7 步处理链 跑通状态矩阵 缺口与下一步
数据源实现
8
+1 wiki 种子层 · 续 23 +wiki-timeline
入库 events
995
续 18 P3.2 +8 SpaceX briefing Kimi Coding LLM · 命中率 73.2% · operator 本机库;本环境 real-run.db 658(含 wiki-timeline 487)
X 推文池
3,138
95 账号 · 78 在抓
corpus 总量
185
96 validation + 89 其他
skill 数量
6
5 know-how + 1 process
cron 在岗
1
x-ingest-daily 03:00
1处理了哪些数据源

8 条 Source 实现 + 1 层 wiki 种子

每条 Source 都实现 fetch() → Iterable[RawEvent] 协议(sources/base.py), 通过 load_source(name) 工厂注册。下面是 9 条数据通路的现状摊开 — 5 条 live(含 HarnessFarm / ShockEvents / 续 14 InvestorManifest 3 schema 通杀)、1 条受阻、1 条本地友好、1 条批量回灌(续 23 WikiTimeline)、1 条种子层已灌完。 想看每条源的 9 维质量评分 + 暗坑清单, 跳第 7 视角门户 sources.html →

RSS · SpaceNews

sources/rss.py · RssSource
● live
英文行业 RSS 抓取。配置在 agent/config/rss_feeds.json。 标题/正文按 shared_keywords(starlink/kuiper/NTN/D2C/LEO/FCC/ITU 等 25 词)过滤后入库,关键词命中 ≥1 即收。
1/2
活跃源 / 配置
~24
items/抓
~40%
关键词命中
✅ SpaceNews 实测稳定 ⚠️ Satellite Today 403 (Fastly) ❌ 工信部/通信世界 RSS 已下架
实测证据 首轮入库 11 条 SpaceNews(commit b8e3xxx);现网 satagent fetch --source rss --config config/rss_feeds.json 每次抓回 ~24 条,关键词过滤后 ~10 条入 events 表。

X · SQLite

sources/x_sqlite.py · XSqliteSource
● live · cron
read-only 打开 expert/X/data/x.sqlite3(macOS WAL 用 mode=ro&immutable=1), 按 first_seen_at > since 增量,9 大账号分类白名单可选,翻译表 translations 自动拼中文。
3,138
推文
95
X 账号
3,123
zh 翻译
✅ launchd 03:00 daily 在岗 ✅ source 标签可反查 ⚠️ 06-09 ingested=0 (scrape 1-2 天没新)
实测证据 launchd com.invesresearch.satagent-x-ingest 03:00 daily;首跑 357 推文入 events / 25 命中主线。最新一次 (06-09 03:00) ingested=0 / duplicates=355 — scrape 上游 1-2 天没新数据,符合 runbook。

JSONL · 本地投喂

sources/jsonl.py · JsonlSource
● live
每行一个 JSON 对象,字段对齐 RawEvent schema。 用于本地手写事件、回测样本投喂、corpus 注入。无网络依赖,跑测试用最多。
185
labeled 条
96
validation
26
real(真实集)
✅ 单测覆盖 schema 校验 ✅ corpus 注入主路径 ✅ 真实集 25 条 macro F1=0.857
实测证据 agent/samples/ 4 份 jsonl: labeled_validation.jsonl 96 条 (P0-C 3/4 扩) · labeled_real.jsonl 26 条 · labeled_regression.jsonl 31 条 · labeled_global_satellite_internet_202606.jsonl 31 条。

Text · 本地文本

sources/text.py · TextFileSource
● live
按段或按文件读纯文本,适合手贴公司公告 / 工信部红头文件 / 微信公众号导出。 无 schema 强约束,extract.py 负责后续结构化。"应急通路",日常很少用。
~3
events 来自
无定时
频率
✅ 公司公告 3 条已入 events ⚪ 工信部新闻 2 条 / 媒体报道 1 条 ⚪ 无 cron,需手 trigger
实测证据 events 表 source 字段反查:"公司公告"3 条 / "工信部新闻"2 条 / "媒体报道"1 条 / "投资者关系"1 条 — 数据少但有用,作为中文产业事件的应急投喂。

HarnessFarm · 双胞胎产线

sources/harnessfarm.py · HarnessFarmSource
● live · NEW
public/HarnessFarm-satellite-agent/ 是另一个并行实现的 4 主线 agent (有 LeadResearchAgent / LLMFactExtractionAgent / 5 类决策事实)。它的 205 条 source-backed 回归集自带 expected_analysis ground truth, 英文枚举 (core_network/strengthen) 在 source 层映射成中文 (核心网/增强)。
205
case 总数
194
in_domain
+125
已入 events
✅ source 注册 + load_source('hf') 别名 ✅ job action 'harnessfarm-ingest' 注册 ✅ 10 单测覆盖 (out_of_domain skip / since_case_id 游标 / bad json 不阻塞)
实测证据 A 路 灌后 events 376→501 (+125), 5 主线全充实:核心网 +69 / 终端 +79 / 运营支撑 +49 / 芯片 +18 / 运载发射 +3。 B 路 跨产线 ADVICE baseline: threads 30% (partial→60%) / impact 43%, 暴露 HarnessFarm 偏强 (94% strengthen) vs 我们规则版保守判中性的哲学差异。

ShockEvents · 策展冲击事件

sources/shock_events.py · ShockEventsSource
● live · NEW
public/HarnessFarm-skills/commercial-space-satellite-internet-shock-events/events.csv 人工策展的近 5 年(2021-2026)21 条商业航天与卫星互联网重大事故/冲击事件 (爆炸 / 入错轨 / 在轨异常 / 监管停飞 / 供给中断)。category 关键词推主线, impact 源层硬编码 削弱(全负面)。
21
策展事件
20
in-mainline emit
+20
已入 events
✅ source 注册 + 4 别名 (shock-events / shock_events / shocks / se) ✅ job action 'shock-events-ingest' 注册 ✅ 10 单测覆盖 (date 退化 / since_id 游标 / unknown mainline skip)
实测证据 CLI satagent fetch --source shock-events 首次 ingested=20, 重跑 duplicates=20; 覆盖 5 主线核心冲击(NG-3 入错轨 / NG-4 静态点火爆炸 / Starlink G9-3 上面级异常 / Virgin Orbit 破产 / OneWeb Soyuz 停发 / ViaSat-3 反射器异常 / Intelsat 33e 碎裂等)。

InvestorManifest · 投资者材料

sources/investor_manifest.py · 280 行 · 3 schema auto-detect (续 14)
● live · NEW
1 个 Source 通杀 3 schema 的 manifest.csv (commit 44a63a6): A 投资者会议 (CRS/MDA/VOYG-inv 355 行) / B 客户情报 (VOYG-cust 296 行) / C unified-source (mda-voyg-crs 165 行)。 时间策略 3 档:event_date 主路 / source_date 含年-月退化 / fiscal_year+period 推季末 (Q1→-03-31 / FY→-12-31)。
5
manifest 通杀
+334
已入 events
13
单测全过
✅ 4 别名 (investor-manifest / investor_manifest / manifest / im) ✅ job action 'investor-manifest-ingest' 注册 ✅ Smoke 真跑 5 manifest 全 OK
实测证据 · 5 manifest smoke CRS 92 / MDA 94 (3 dup) / VOYG-inv 41 / mda-voyg-crs 107 / VOYG-cust 0 ⚠ (295 行 source_date 全空) → events 521 → 855 (+334)。✅ 2026-06-10 P1 已修:扩 SEED 加 13 家境外卫星公司 (MDA / VOYG / CRS / Iridium / Viasat / SES / Eutelsat 等)、ontology 加 25 英文 thread 关键词、company_threads 加 alias-fallback、DB sync 20→60、446 events reclassify;InvestorManifest 命中率 0% → 100%,整体 mainline 命中率 20% → 68.8%

WikiTimeline · 大事年表

sources/wiki_timeline.py · WikiTimelineSource (续 23)
● live · NEW
expert/wiki/timeline/all.md 大事年表 725 bullet,解析成 RawEvent 回灌 events 库 (commit 90f582d)。skip_planned / skip_future 双闸 过滤"计划中 / 未来时态"行,只入已发生事实;行级 sha1 进判重 key,同文复跑 0 重复。
725
timeline bullet
+487
已入 events
43.5%
主线命中率
✅ skip_planned / skip_future 双闸 ✅ 行级 sha1 判重 · 复跑 0 重复 ⚪ 命中率 43.5%(年表含大量产业背景行,低于 manifest 类是预期)
实测证据 本环境 real-run.db 真跑:725 bullet → ingested +487,events 库合计 658(含 wiki-timeline 487); wiki 词典同轮反哺 L2:SEED_COMPANIES 62 → 76(+14 境外,47ee2aa)。

Wiki · 种子层(非运行时)

expert/wiki/ → agent/{seed.py, ontology.py, samples/}
▲ build-time
不在运行时被 decide() 查询 — 是构建期素材库,通过 importer 脚本一次性灌进 agent 的 3 个位置: (1) SEED_COMPANIES 公司种子 (2) ontology.py 词典 (3) samples/labeled_validation.jsonl 验证 corpus。 来源是商业航天 117 份异构素材经 7-agent 并行抽取的知识库。
425
entities
392
concepts
64
people
103
reports
931
timeline 行
✅ P0-C 1/4 · entities → seed 47 家公司 ✅ P0-C 2/4 · concepts → ontology +15 词 ✅ P0-C 3/4 · timeline → validation 10→96 ⏳ P0-C 4/4 · people → NER 词表(ROI 低留长尾)
实测证据 已灌完成 3/4:SEED_COMPANIES 20→33→47(commit a55745d + 4bdc4a8ontology.py +15 词 + 第 5 主线 LAUNCH_VEHICLE +103 词(83c56b6 + 4bdc4a8labeled_validation.jsonl 10→96 sub-agent 标注(2c2f631)。
27 步处理链 · 数据怎么从 Source 跑到决策

fetch → ingest → decide → notify

每步都有对应的代码入口和 skill know-how。状态徽章对应当前 baseline:✅ 跑通 · ◐ 部分(stub 占位)· ⚠ 需要 LLM key。

fetch
Source
7 实现
extract
主线 + scenario
+ dimension
classify
规则版 60% / LLM
96 corpus 27%
ingest
events + threads
+ companies 表
decide()
CEO + Investor
双视角 + 5 层
debate
Bull/Bear/Judge
Stub or LiteLLM
notify
飞书卡片
+ disclaimer
跑通 · 真实数据回归
部分 · baseline 27% 待 LLM 兜底
stub · 等真 LLM key
36 条 skill · 处理 know-how

5 条 分析师 + 1 条 流水线

Skill = 把 agent 内部的隐藏判断逻辑显式化的产品可见 know-how。5 条 know-how skillagent/skills/, 覆盖产业总览 / 5 级策略 / 论点影响 / 触发器设计 / WYHTB 写法;1 条 process skill 在仓库根 skills/expert-wiki-ingest/,沉淀 wiki 增量入库流水线。

know-how · 产业 ontologytier-1

satellite_internet_research

agent/skills/satellite_internet_research.md
5 主线产业链总览 + 6 维度事件影响 + 主线公司种子表。decide() 的世界观底座。
沉淀产物5 Thread enum + 47 公司 SEED + 6 维度词典 + 第 5 主线 LAUNCH_VEHICLE
know-how · 决策tier-1

strategy_recommendation_5_levels

agent/skills/strategy_recommendation_5_levels.md
5 级策略建议(强烈看多/看多/中性/看空/强烈看空)的判定规则与边界条件。decide() _infer_strategy 的 know-how。
沉淀产物V1.1 启发式 (commit 65aa7f3) baseline 23%→57%
know-how · 决策tier-1

thesis_impact_judgment

agent/skills/thesis_impact_judgment.md
单事件 → 论点影响(看多/看空/中性)的判断维度与触发关键词。规则版 / LLM 兜底共用同套语义。
沉淀产物events.thesis_impact 字段 · 真实集 macro F1=0.857
know-how · FE 集成tier-2

trigger_design_patterns

agent/skills/trigger_design_patterns.md
证伪触发器设计模式 — Fundamental Edge 方法论沉淀。3 内置 check + cooldown 机制。
沉淀产物triggers.py · CLI satagent trigger set/check
know-how · FE 集成tier-2

wyhtb_writing_guide

agent/skills/wyhtb_writing_guide.md
"What You Have To Believe" 看多/看空条件的写法规范。CEO/Investor panel 的 WYHTB Status 段。
沉淀产物thesis_state.wyhtb_bull/bear + report.ceo.wyhtb_status
process · 流水线root

expert-wiki-ingest

skills/expert-wiki-ingest/SKILL.md
wiki 增量入库流水线 — 4 路 sub-agent 并行抽取 → 共享 slug 词典 → merge dedup → HTML 渲染。round-2 实测 entities 248→424。
沉淀产物commit 2eec025 · 67 新文件入 wiki · 7 wiki 脚本路径修
4处理结果是什么 · 数据沉淀产物

3 类产物 · agent.db / samples / wiki

所有 Source 抽取 + skill 加工的结果,最终落在 3 类产物里。agent.db 是运行时单一信息源, samples/ 是验证 / 回归 / corpus,wiki/ 是构建期素材库。

① agent.db · 运行时

SQLite · 588 KB · 8 张表 · 最新 03:00 cron
表名行数
events376
event_threads42 (4 主线分流)
companies47 (seed)
thesis_state0 (待挂)
market_model0
jobs / job_runs1 / 6
token_usage_log0 (待跑 LLM)

② samples · corpus

4 份 jsonl · 共 185 条标注 · ground truth
文件条数
labeled_validation96
labeled_real26
labeled_regression31
labeled_global_satellite31
规则版 baseline:real 60% · validation v2 27% → 留 LLM 兜底

③ wiki · 素材

expert/wiki/ · 5 维 · 1.89 MB index.html
维度条数
entities425
concepts392
people64
reports103
timeline (all.md)931 行
已灌 agent · 3/4 子项(seed/ontology/corpus)
5端到端能跑通吗

状态矩阵 · 每条都给 证据

每行一条数据通路 / skill / 决策步骤,给三态徽章: 跑通(有 cron / 真实回归 / 测试覆盖) · 部分(stub demo 跑通 / 等 LLM key) · 未做(明确排期但还没启动)。

组件状态证据 · 实测 · 测试 · commit
RSS · SpaceNews每次抓 ~24 items,关键词过滤后 ~10 入库;CLI satagent fetch --source rss 跑通
RSS · Satellite Today⚠ 403Fastly Varnish anti-bot,UA/cookies 都被 block;enabled=false 留存档
RSS · 中文产业站工信部 / 通信世界 / 通信产业网 2020 后 RSS 全部下架(404 或返 HTML)
X · SQLite ingest✅ cron · ISO 修launchd 03:00 daily · 368 events · 25 命中主线;15 单测 (test_x_sqlite_source.py);续 13 _to_iso() 修 occurred_at 非 ISO bug + 368 条历史回填 (8793810)
JSONL · 投喂4 份 jsonl 共 185 条;run_validation_compare 主路径;真实集 25 条 macro F1=0.857
Text · 本地events 反查 8 条来自 公司公告/工信部/媒体报道/IR;低频但通路 OK
HarnessFarm · jsonl✅ 续 7205 case → ingested 125 (A+C 路);expert/data/harnessfarm/ 续 12 vendor 自 public/;10 单测 (a4d57db)
ShockEvents · csv✅ 续 821 策展冲击事件 → ingested 20;expert/data/shock_events/ 续 12 vendor 自 public/;10 单测 (df917e0)
InvestorManifest · 3 schema✅ 续 14 / 续 16 命中率拉满5 manifest 通杀 → ingested +334 (CRS 92 / MDA 94+3dup / VOYG-inv 41 / VOYG-cust 0 / mda-voyg-crs 107);13 单测 (44a63a6);2026-06-10 P1 已修 — 扩 SEED + alias-fallback,InvestorManifest 命中率 0% → 100%
WikiTimeline · 大事年表✅ 续 23expert/wiki/timeline/all.md 725 bullet → ingested +487(本环境 real-run.db 合计 658);skip_planned / skip_future 双闸 + 行级 sha1 判重;主线命中率 43.5%(90f582d)
collectors · vendor 4 工具✅ 续 11sec/investor/intl-reports/customer 4 Codex skill 进 expert/collectors/;satagent collect <kind> 入口;11 单测 (8f041b7)
extract · 主线 + dimensionextract.py + ontology.py 103+ 关键词;5 主线全枚举(2026-06-08 加 LAUNCH_VEHICLE)
classify · 规则版◐ 29.2%v2.0 corpus 96 条 baseline overall_exact 29.2% (D V2 跑后凿实, 之前 27% 是粗算);strategy V1.1 已落 (65aa7f3)
classify · LLM 兜底✅ +13.5pp 🏆续 18 4 rounds D V2 (P3.3-P3.6 同 96 corpus): R1 -7.3pp ⚠ → R2 +2.0pp (union 路线 1) → R3 +8.3pp (路线 2 max_threads 3→4 + 路线 3 prompt 加运载发射) → R4 +13.5pp 🏆 智谱 GLM-4.6 + drop_params=True 跨 provider 重跑;rules 29.2% → +LLM 42.7% · thesis +24.0 / strategy +19.8 / fixed 16 / regressed 3 · 跨 4 rounds 20.8pp 净改善reports/d-v2-rounds-1-to-4-summary-2026-06-10.md
ingest · events 入库events 995 行 · event_threads 5 主线分流;728/995=73.2% 命中主线(续 16 P1 20%→68.8% + 续 17 +32 zip 拉到 69.9% + 续 18 P3.1 +100 xlsx 拉到 72.9% + 续 18 P3.2 +8 SpaceX briefing Kimi LLM 拉到 73.2%)
decide() · 双视角CEO + Investor panel · 5 层 emoji · 反方矛盾 · WYHTB Status;FE Round 1 三件套 (9566bda / 906478e / e239e44)
debate · LLM Bull/Bear/Judge◐ stub骨架就位 (Tier 1.2 LiteLLM)· 168 tests · 真 key 后切真 LLM 零改动
triggers · 证伪triggers.py · 3 内置 check · 24h cooldown · CLI satagent trigger set/check (906478e)
notify · 飞书notify.py · FeishuClient · render_decision_to_feishu_card · 12 单测 · disclaimer 强制(调用方无法绕过)
validation · 对比脚本run_validation_compare + diff 三视角 (b57598b) · stub demo 跑通 · 真 LLM 跑通后能拉回 50%+
EH-1 调度 · jobs 表jobs + job_runs 两表 · 7 subcommand CLI · 失败重试 · 自动 disable · token_budget_monthly (335db95)
EH-3 飞书 hookdecision-notify-feishu 单 action 串行;jobs 一行表达完整链路
cron · scrape→ingest 4 链⏳ AC1目前仅 x-ingest 单点;blueprint AC1 排 4-6h 扩 scrape→ingest→rss→validate→decide→notify
wiki · X → wiki 双向回写⏳ Tier 3NEXT-STEPS §3.1.X 排期 5-7 天 · 把 X 推文回写到 wiki/entities/<slug>.md 的 ## X 动态段
6当前到哪一步了

6 维进度 · 数据视角横切

把数据流程的 6 个维度切开看进度。整体加权 ≈ 72%(数据采集 / 处理 / 沉淀 / 验证 / 通知 / 自动化), 留 28% 集中在"LLM 兜底 + cron 4 链 + 中文源补救"三块。

数据采集 fetch4 source 实现 + cron 在岗
90%
数据处理 extract + classify规则版稳定 · LLM 兜底 stub
65%
数据沉淀 ingest + storage3 类产物全在(db / samples / wiki)
88%
数据验证 corpus + baselinev2.0 96 条扩完 · 真 LLM E2E 待跑
55%
数据通知 notify + disclaimer飞书单渠道 ✅ · 多渠道留长尾
82%
自动化 cron + monitor1 cron / 待扩 4 链
45%
7缺哪些步骤 · 下一步对应到候选

6 个 缺口 · 各自对应 NEXT-STEPS 一条

每个 gap 卡都标了"缺什么 / 为什么 / 下一步动作 / 工期估算 / 关联 NEXT-STEPS 候选"。 按 ROI 排:G1 真 LLM 跑通 → G2 cron 扩链 → G3 启发式调优 → 其余排长尾。

G1 · 真 LLM 兜底未跑通 (D V2 E2E)

2-4h
v2.0 corpus 27% baseline 暴露规则版盲点。LiteLLM 5-provider 路由就位、Stub demo 66.7% 已跑通、token budget 已挡。只差 user 填一个 key + 一行命令

G2 · cron 单点 → 4 链闭环 (AC1)

4-6h
launchd 只有 x-ingest 一条。blueprint §8 AC1 排:扩 scrape→ingest→rss→validate→decide→notify 完整闭环。运维价值,不在判断层。

G3 · strategy 启发式 V1.2

半天
v2.0 corpus 新暴露 18 条 strategy 维 mismatches。规则版单维拉回 → overall 也跟着涨。纯本地无 LLM 依赖。

G4 · 中文产业事件密度严重不足

2-3 天
中文 RSS 全下架,目前中文事件只剩 Text 通路手贴(events 表 7 条)。X 大头是国外账号,中国卫星/烽火/震有这些主线公司的真实事件抓不到。

G5 · thesis_state 表空(0 行)

半天
triggers 机制就位但没有真实公司挂论点。WYHTB Status 段空跑。FE Round 1 follow-up "真实 sample/decision.json 重生成"会顺手填上。

G6 · X scrape 上游 1-2 天 无新

运维
今早 cron ingested=0 / duplicates=355 — scrape 上游 1-2 天没新数据。06-08 已加 twikit 404 兜底 + run_x_scrape.sh wrapper。runbook 显式 1-2 天手动跑节奏。