diff --git a/docs/superpowers/specs/2026-07-21-data-source-fusion-design.md b/docs/superpowers/specs/2026-07-21-data-source-fusion-design.md index aa66c9d..13f1578 100644 --- a/docs/superpowers/specs/2026-07-21-data-source-fusion-design.md +++ b/docs/superpowers/specs/2026-07-21-data-source-fusion-design.md @@ -705,6 +705,16 @@ T6 剩余=多日累积后验收 1-4(5 股抽查/600519 2001 起/news 硬顶/PDF 目录日初清(274 绿)。教训: **增量型 marker 必须带日期维度,且要在「首个完整周期结束 前」推演第二天行为**——同日幂等测试全绿掩盖了跨日语义。 +**首班实录(2026-09-08, 第六修正的实战验证)**: DSM 06:00:01 自动起(功能确认)。 +①day-2 修复生效: ann/news 增量真实拉窗, 新 marker 全落 `dt=2026-09-08/` 下, 昨日平铺 +marker 日初清理零残留; ②news 6168/6168 全量扫完(含北交 920 尾段); 全文段 +985 篇 +(article 域静默无逐篇日志, 进度信号=marker 数); ③ann 2564/6168+150 失败=**巨潮 cninfo +连续第二日服务端抖动**(昨 502 连击/今 504×150), 触发域冷却 fail-closed, PDF 段随之 +跳过; daily rc=1 → backfill 让路(设计内)。**零永久丢失双兜底**: 未标 done unit 明晨 +重拉, 窗内漏掉的公告由 backfill ①(股,年) 全年扫终会收; ④同晨 dmsk(07:33)与 corpus +(06:00-10:14)并行无扰=东财端点分域假设实证。观察项: 巨潮抖动若持续数日→升级源端 +健康度问题(备选: ann 增量段错峰避开其故障高峰)。 + ## 19. 增补 2026-09-07:财务数据域(财务136)——存量搬运+同步增量架构(本节为最新,覆盖本节初版「全 NAS 自采」方向) ### 19.0 背景与方向修正 @@ -841,8 +851,8 @@ valuation 今日刚同步/三表 09-06 全量),七域覆盖≡VPS(沪深 5215 静默空跑标 done。 - **profit/dupont「断更」系误诊,09-08 晨撤回**: 09-07 深夜读到 NAS 副本止于 2023Q4 判为「一次性回补从未接日喂」——错。实况=bs_fundamentals.py P2 按季回灌 - **在行军中**(state next_quarter 逐夜推进至 2024Q3 指针, NAS 副本随 04:00 链 - 日同步滞后一拍),剩 2024Q3→2026Q2 共 10 季 ≈5 晚(≈09-13)自愈,之后 P1 增量 + **在行军中**(state next_quarter 逐夜推进,昨夜至 2024Q3 指针, NAS 副本随 04:00 + 链日同步滞后一拍),剩 2024Q3→2026Q2 共 10 季 ≈5 晚(≈09-13)自愈,之后 P1 增量 (当季+上一季每晚 sweep, 幂等 keep-last)自动接管。**教训: 判「断更」前必须先读 生产脚本的续喂设计与 state 文件 mtime——「数据末端=快照」≠「管线已死」**。 原批「5.2 万发季度追赶」取消(重复采集+并发撞 baostock 双连接红线,有害无益)。 @@ -856,7 +866,27 @@ NOTICE_DATE 5569/5569 非空最新至当日。**已知边界**: 2009 年前退 000003, 2002 年退)dmsk(2009 起)与 F10(拉老退市也空)双源皆无=源头缺失, 无免费方案,如实记档。翻页坑: 东财 datacenter 用 `pageNumber`(cninfo 才是 pageNum),误用被静默忽略=12 页全回第一页,冒烟 +500/6000 实锤后修(d71ee55)。 -DSM `sanguo-fundamentals-daily` 07:10 待用户 GUI 注册(注册后每日新鲜度自走)。 +DSM `sanguo-fundamentals-daily` 07:10 已由用户 GUI 注册(09-08 晨)并手动首跑验证: +07:33 start → daily `units=0 rc=0`(昨夜 00:42 手动 wrapper 已采过当日, 按日幂等跳过 +语义正确)→ backfill `units=0 rc=0`(210 期 marker 全 done 纯 no-op)→ 容器干净退出。 +明起 07:10 自动班。 + +### 19.9 基本面数据链运行节律总览(2026-09-08 终态速查,细节见各节) + +| 层 | 源/接口 | 下载方式 | 增量机制 | 新鲜度 | 自愈/兜底 | +|---|---|---|---|---|---| +| 三表基线层
§19.1/19.3 | akshare f10(emweb)按股全史
(319/203/254 列,沪深 5215) | VPS `ak-monthly` 首个周六全量洗库(55h 跑道) | 月度整文件重写;phase3 04:00 链按 mtime 增量同步 NAS 镜像树 | 季频≤5 周(验证场景可接受) | 洗库失败返 None 不写不标(09-01 事故根治);valuation/abstract 另有 ak-daily 19:00 日更 | +| 三表补缺/新鲜层
§19.4 | 东财 datacenter `RPT_DMSK_FN_*` 按期全市场(57 列含 NOTICE_DATE,含退市+北交) | NAS 一次性 backfill≈2200 发(**09-08 完成**:210 unit/1771 发/零失败) | daily(07:10):近 3 期重扫+`NOTICE_DATE>=T-7` 客户端过滤,账本键幂等 | **披露次日** | marker 按日折叠(daily)/一次永逸(backfill 期);批内去重;次新期金丝雀防契约漂移(都回 result=None 不分) | +| forecast/express | datacenter 按期 | 26 期按期文件(2020Q1 起) | 随 ak-monthly 洗库 | 同三表 | 2020 前历史=可选 backlog(dmsk 族同接口可补) | +| profit/dupont
(baostock) | bs `query_profit/dupont_data` 按股按季 | VPS `bs-daily` 18:05 fund 腿:P2 按季回灌(state 逐夜推进,~2 季/晚,**≈09-13 跑完**)→P1 接管 | P1=每晚拉当季+上一季 sweep;幂等键 (code,pubDate,statDate) keep-last(重述后写胜) | 季频次日 | DAILY_CAP=30000(与 eod 合计≤41k<48k 铁律);P3 forecast/express 月首周日全区间 | +| valuation_baostock
§19.7 第 8 域 | bs 日频估值(peTTM/psTTM/pcf/pbMRQ/turn/isST,1990 起**含退市**) | bs-daily fund 腿日喂 | 每日追加当年按年 parquet | T-1 | **2026 文件 08-13 起**(日喂起点,H1 缺口由基线层 valuation 覆盖;回补列可选) | +| 语料库
§18 | 巨潮公告+东财新闻 | 首跑+backfill 四段(ann 43 万/news 88 万/PDF 六类) | daily 四段:ann T-1~T 窗/news recent-100/全文(当日新稿)/PDF(五服务端码+快报标题谓词) | 当日/次日 | 按日 marker+域冷却 fail-closed 其他域继续+backfill (股,年) 全年扫终兜;flock 单实例 | + +**层间读法(双层口径, §19.7 写死)**: 回测全历史=基线层为主(全列)+dmsk 补退市/北交段; +季频选股要新鲜=dmsk 层近 3 期优先,基线层兜全列。**已知边界**: 2009 年前退市股(000003 等) +三表 dmsk 与 F10 双源皆无=源头缺失(其日频估值仍被 baostock 树覆盖)。**采集纪律**: +东财 datacenter 1.5s/巨潮 1.0s/东财 search 1.0s/article 2.0s 慢爬,直连不走代理, +日间带 00:30-17:30 语义,baostock 同 IP 单连接 48000 次/天。 ## 参考(调查来源)