From 0157094da261b1a6fd187789d4776db8840cfa96 Mon Sep 17 00:00:00 2001 From: claude_dev Date: Sun, 6 Sep 2026 19:52:37 +0800 Subject: [PATCH] =?UTF-8?q?docs(data):=20spec=C2=A718=E8=A1=A5admin?= =?UTF-8?q?=E4=B8=8E=E7=8B=AC=E7=AB=8B=E4=BB=BB=E5=8A=A1=E8=AE=BA=E8=AF=81?= =?UTF-8?q?=20[nas]=E2=80=94=E2=80=94=E5=BA=94=E7=94=A8=E6=88=B7=E9=97=AE?= =?UTF-8?q?=E3=80=8C=E4=B8=BA=E4=BD=95=E4=B8=8D=E7=BB=9F=E4=B8=80root/?= =?UTF-8?q?=E4=B8=BA=E4=BD=95=E5=8D=95=E7=8B=AC=E5=BB=BA=E5=AE=9A=E6=97=B6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E3=80=8D:admin=E4=B8=89=E7=90=86=E7=94=B1=3D?= =?UTF-8?q?03:00=E9=93=BEroot=E5=B1=9E=E4=B8=BB=E5=9D=91=E5=9C=A8=E6=A1=88?= =?UTF-8?q?(admin=E8=A6=86=E7=9B=96=E9=A1=BB=E5=85=88rm=E5=86=8D=E6=8B=89)?= =?UTF-8?q?+=E8=AF=AD=E6=96=99=E5=BA=93admin=E4=BE=A7=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E5=AF=86=E9=9B=86(venv/=E7=9B=AF=E8=B7=91/=E5=88=A0=E5=88=86?= =?UTF-8?q?=E5=8C=BA)=E5=B1=9E=E4=B8=BB=E5=8D=B3=E9=9B=B6=E6=91=A9?= =?UTF-8?q?=E6=93=A6+=E6=9C=80=E5=B0=8F=E6=9D=83=E9=99=90=E5=87=BA?= =?UTF-8?q?=E7=BD=91=E7=88=AC=E8=99=AB=E4=B8=8D=E5=BF=85root,=E6=88=90?= =?UTF-8?q?=E6=9C=AC=E4=B8=BA=E9=9B=B6;=E7=8B=AC=E7=AB=8B=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E4=B8=89=E7=90=86=E7=94=B1=3D=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E4=B8=8D=E8=BF=9E=E5=9D=90(=E5=AF=B9=E5=86=85=E8=A1=8C?= =?UTF-8?q?=E6=83=85=E5=90=8C=E6=AD=A5vs=E5=AF=B9=E5=A4=96=E6=85=A2?= =?UTF-8?q?=E7=88=AC=E9=A9=AC=E6=8B=89=E6=9D=BE,corpus=E5=8D=A1=E6=AD=BB?= =?UTF-8?q?=E4=B8=8D=E6=8B=96=E6=AD=BB=E8=A1=8C=E6=83=85=E9=93=BE,?= =?UTF-8?q?=E6=96=AD=E8=B7=AF=E5=99=A8=E9=A5=BF=E6=AD=BB=E5=90=8C=E6=AC=BE?= =?UTF-8?q?=E6=95=99=E8=AE=AD)+=E5=B1=9E=E4=B8=BB=E9=83=A8=E7=BD=B2?= =?UTF-8?q?=E7=AE=A1=E9=81=93=E4=B8=8D=E5=90=8C(sync=E8=84=9A=E6=9C=ACroot?= =?UTF-8?q?=E5=9C=B0=E7=9B=98CI=E4=B8=8D=E8=A6=86=E7=9B=96vs=20corpus?= =?UTF-8?q?=E8=B5=B0CI=E7=9A=84repo=E8=B7=AF=E5=BE=84)+06:00=E9=81=BF?= =?UTF-8?q?=E5=BC=8003:00=E9=93=BE=E8=B7=91=E9=81=93=E4=B8=9400=E6=97=B6?= =?UTF-8?q?=E6=A1=A3=E5=85=AC=E5=91=8A=E5=B7=B2=E5=85=A5=E5=BA=93=E5=85=A8?= =?UTF-8?q?=E5=90=83=E5=88=B0=20[nas]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../specs/2026-07-21-data-source-fusion-design.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) 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 6e2b60d..c611136 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 @@ -462,7 +462,17 @@ Schema(列名冻结,消费方=factor session 因子加工层,后续 provider fet `--until HH:MM`(墙钟自停)、`--limit N`(手动冒烟)。 - **调度**: DSM 任务计划 **sanguo-corpus-daily,每日 06:00 一条,以 admin 身份跑**(先例=现有 03:00 同步链 DSM 任务(id=2),宿主机直跑多年零 docker;本设计沿同模式但改 admin 跑,避该链 - root 属主文件坑): + root 属主文件坑)。 + **为何 admin 而非统一 root**(用户问):①03:00 链 root 属主文件坑已在案——admin scp 覆盖 + root 文件 Permission denied 只能先 rm 再拉;语料库生命周期内 admin 侧操作密集(venv 装包/ + 回补盯跑/删错分区/debug),admin 属主=全程零摩擦 ②最小权限:出网慢爬+写文件的进程没必要 + root,出错爆炸半径小一截 ③成本为零:DSM 建任务本就选用户,不比 root 贵——统一到 root 统一 + 的是坏模式。**为何独立任务而非并进 03:00 链**(用户问):①失败不连坐——03:00 链=从 VPS 拉 + 行情的对内同步,corpus=对外 HTTP 慢爬+数小时回补马拉松,合成一条则 corpus 卡死会拖死每日 + 行情同步(断路器饿死同款教训,绝不复刻)②属主/部署管道不同——sync 脚本在 /volume1/stock + root 地盘 CI 不覆盖须手动 scp,corpus 脚本走 CI deploy 的 repo 路径,搅进一条任务两头别扭 + ③06:00 起跑避开 03:00 链跑道(26G 库同步 IO+家宽带宽),且 00 时档公告(54%)凌晨已入库, + 06:00 全吃到;DSM 加一条任务代价≈零,改 root 生产链脚本才是真风险: `/volume1/stock/corpus/venv/bin/python -X utf8 /volume1/homes/admin/.sanguo_projects/sanguo_vnpy_v2/scripts/data_platform/corpus_download.py --lane daily && 同解释器 --lane backfill --until 17:30`