This website requires JavaScript.
Explore
Help
Register
Sign In
sanguo
/
sanguo_vnpy_v2
Watch
3
Star
0
Fork
0
You've already forked sanguo_vnpy_v2
Code
Issues
5
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
Files
098d735ded6106d0420c31edd67ef818546923e4
sanguo_vnpy_v2
/
sanguo_api
T
History
claude_dev
e109c06b0f
CI/CD / test (push)
Failing after 5s
Details
CI/CD / nas-deploy (push)
Has been skipped
Details
CI/CD / nas-verify (push)
Has been skipped
Details
feat(composite): 三路对拍前端可见性——合成层页第二卡(三路对比表+规则判读+特征贡献+冗余chips+空态)+GET challenge 端点(最新件/坏件skip);修 challenger CLI 断链(__main__ guard 缺失=python -m 静默空跑,11-01 stage6 必空,部署验证现场抓获);spec §4.4 落账含 QA 无合成 UI 核实 [vps]
2026-10-10 18:57:25 +08:00
..
llm
fix(api): LLM client 全流式化——读超时从总时长赌注变块间隔看门狗 [vps]
2026-10-09 09:23:46 +08:00
__init__.py
feat(strategy): registry 扩展自研目录扫描(AST)+文件读写+py_compile; __init__ 惰性化(纯逻辑模块脱离 fastapi 可单测) [nas]
2026-08-12 23:47:07 +08:00
app.py
feat(pipeline): 偏差日报补调度接线——20:50 APScheduler job 挂 ishortfall 日跑(审计终裁P1, runbook「随周报链跑」落地) [vps] [no-doc]
2026-09-27 07:58:20 +08:00
auth.py
feat(api): P1.4 web token 60min静默刷新—后端POST /auth/refresh(有效旧token换新,过期401不放行续命)+login/refresh返expires_in+get_token_exp;前端请求拦截器剩余<10min单飞预刷新(裸axios避递归/mock短路,失败静默降级走401兜底);治长回测轮询401跳登录;3新测试 [vps]
2026-08-14 23:09:34 +08:00
code_versions.py
feat(strategy): 代码版本快照(§12.6补,方案B发起时快照·QuantConnect轻量版)——用户拍板:解决「实例参数有快照但代码没有,历史运行无法回溯当时跑的哪版代码」——①sanguo_api/code_versions.py:发起时全文落盘data/strategy_code_versions/{file}.{hash8}.py(md5内容寻址天然去重,原子替换防并发坏);发起四入口(paper/live/CTA/组合回测)全快照,账户加code_hash列(ALTER迁移),回测经spec→run_meta.code_hash落档案②查看:GET /strategy/code-versions列表+单版本全文;代码编辑页「版本历史」抽屉(MonacoDiff左右对比当前,主题同款)③「代码已变更」角标:策略库档案行(enriched code_changed)+全景每run标v哈希·一致/已变更④双轨对账加「代码版本一致」第五指标(对账FAIL先查这行,两边代码不同价差必然大);路径穿越防护(版本号只认8位hex)+6测试;927绿+build绿;「用当时代码重跑」留P2 [vps]
2026-08-15 23:38:07 +08:00
decompose_jobs.py
feat(api+frontend): D7 落成边亮灯——假设→因子边可见性三处 [vps]
2026-10-09 11:51:00 +08:00
hypothesis_card.py
fix(pipeline): load_domains fail-soft 补形状防御——合法 YAML 但顶层非 dict 或 domains 非 dict 曾 AttributeError 500 穿透(只挡语法错;审计 P2-4);顶层 list/domains list 双降级测试 [vps] [no-doc]
2026-10-05 09:10:34 +08:00
hypothesis_decompose.py
feat(api): 分解器输出 schema 四字段——description 必填清洗,缺失走反馈循环 [vps]
2026-10-09 19:54:41 +08:00
instance_store.py
feat(strategy): 代码版本快照(§12.6补,方案B发起时快照·QuantConnect轻量版)——用户拍板:解决「实例参数有快照但代码没有,历史运行无法回溯当时跑的哪版代码」——①sanguo_api/code_versions.py:发起时全文落盘data/strategy_code_versions/{file}.{hash8}.py(md5内容寻址天然去重,原子替换防并发坏);发起四入口(paper/live/CTA/组合回测)全快照,账户加code_hash列(ALTER迁移),回测经spec→run_meta.code_hash落档案②查看:GET /strategy/code-versions列表+单版本全文;代码编辑页「版本历史」抽屉(MonacoDiff左右对比当前,主题同款)③「代码已变更」角标:策略库档案行(enriched code_changed)+全景每run标v哈希·一致/已变更④双轨对账加「代码版本一致」第五指标(对账FAIL先查这行,两边代码不同价差必然大);路径穿越防护(版本号只认8位hex)+6测试;927绿+build绿;「用当时代码重跑」留P2 [vps]
2026-08-15 23:38:07 +08:00
kline.py
feat(s1): 回测核心端到端跑通(vnpy client 对齐)
2026-07-07 06:21:17 +08:00
main.py
fix(api): 加 /health 存活探针端点(治Docker HEALTHCHECK恒unhealthy,/health原404)
2026-08-01 21:01:35 +08:00
routes_alerts.py
feat(api): /alerts 列表+summary+ack 路由(读 data/alerts.db,router 级鉴权,spec §20.15.4) [vps]
2026-09-25 22:54:07 +08:00
routes_factor.py
feat(api): 合成层L2三端点——GET /factor/composites清单(valid/is_ui/is_rolling/registered全标)/GET .../profiles/{key}详情(原样json+resolved_weights免前端复算)/POST .../profiles建档(pydantic ge=0 schema层422+create层ValueError→400双防线);5例含建档后清单立即可见 [nas]
2026-09-14 22:07:36 +08:00
routes_live.py
fix(api): routes_strategy全端点挂鉴权+文件名白名单——架构审计P0-2用户拍板限修: router级verify_token(原MVP裸奔=写.py+动态import执行面绑0.0.0.0公网直达); validate_py_name白名单^[A-Za-z0-9_-]+.py$堵os.path.join穿越/绝对路径逃逸(read/write/code-versions三口); 顺手收敛routes_portfolio/live两份分叉鉴权副本→routes.py正主(副本缺Bearer前缀时split越界500); 测试=无token 401+坏token 401+白名单parametrize+连坐两文件补帽 [vps] [no-doc]
2026-10-01 09:51:39 +08:00
routes_paper.py
feat(web): 对账中心上线——恒等式B5只读端点+前端恒等式区块,双轨对账页升级为对账中心(issue#42-A) [nas]
2026-08-26 20:31:42 +08:00
routes_pipeline.py
feat(composite): 三路对拍前端可见性——合成层页第二卡(三路对比表+规则判读+特征贡献+冗余chips+空态)+GET challenge 端点(最新件/坏件skip);修 challenger CLI 断链(__main__ guard 缺失=python -m 静默空跑,11-01 stage6 必空,部署验证现场抓获);spec §4.4 落账含 QA 无合成 UI 核实 [vps]
2026-10-10 18:57:25 +08:00
routes_portfolio.py
fix(api): routes_strategy全端点挂鉴权+文件名白名单——架构审计P0-2用户拍板限修: router级verify_token(原MVP裸奔=写.py+动态import执行面绑0.0.0.0公网直达); validate_py_name白名单^[A-Za-z0-9_-]+.py$堵os.path.join穿越/绝对路径逃逸(read/write/code-versions三口); 顺手收敛routes_portfolio/live两份分叉鉴权副本→routes.py正主(副本缺Bearer前缀时split越界500); 测试=无token 401+坏token 401+白名单parametrize+连坐两文件补帽 [vps] [no-doc]
2026-10-01 09:51:39 +08:00
routes_strategy.py
fix(api): routes_strategy全端点挂鉴权+文件名白名单——架构审计P0-2用户拍板限修: router级verify_token(原MVP裸奔=写.py+动态import执行面绑0.0.0.0公网直达); validate_py_name白名单^[A-Za-z0-9_-]+.py$堵os.path.join穿越/绝对路径逃逸(read/write/code-versions三口); 顺手收敛routes_portfolio/live两份分叉鉴权副本→routes.py正主(副本缺Bearer前缀时split越界500); 测试=无token 401+坏token 401+白名单parametrize+连坐两文件补帽 [vps] [no-doc]
2026-10-01 09:51:39 +08:00
routes.py
fix(web): 进度页时间线越界+因子任务日志空(用户08-30验收两处) [vps]
2026-08-30 10:46:05 +08:00
schemas.py
feat(api): 合成层L2三端点——GET /factor/composites清单(valid/is_ui/is_rolling/registered全标)/GET .../profiles/{key}详情(原样json+resolved_weights免前端复算)/POST .../profiles建档(pydantic ge=0 schema层422+create层ValueError→400双防线);5例含建档后清单立即可见 [nas]
2026-09-14 22:07:36 +08:00
strategy_registry.py
fix(api): routes_strategy全端点挂鉴权+文件名白名单——架构审计P0-2用户拍板限修: router级verify_token(原MVP裸奔=写.py+动态import执行面绑0.0.0.0公网直达); validate_py_name白名单^[A-Za-z0-9_-]+.py$堵os.path.join穿越/绝对路径逃逸(read/write/code-versions三口); 顺手收敛routes_portfolio/live两份分叉鉴权副本→routes.py正主(副本缺Bearer前缀时split越界500); 测试=无token 401+坏token 401+白名单parametrize+连坐两文件补帽 [vps] [no-doc]
2026-10-01 09:51:39 +08:00
validation.py
fix(vps验收五问题之四): ①#84个股回测/回放提交秒败——L2校验end>latest且end<=today(周末/节假日/当日未灌)不再400,引擎区间过滤自然截到latest;新增start>latest仍400(必空跑);VPS实况=结束默认今天周日>最新周五,首提即败 ②#85组合任务标的列永远000300.XSHG——worker symbol=benchmark改pool(spec透传,benchmark已在params);内存任务两处symbol回退symbol→pool→benchmark ③#42影子拉起即崩——live_strategy工厂表补4个TET副本映射(all_weather_ex等,01184c2改名后回测认得但影子/实盘runner不认,VPS shadow#42实录) ④#88影子快照刷垃圾行——_snapshot_loop每30s无条件写date=''行(40号半天97行),改_should_write_balance同日一行+空行情不写(+3测试) ⑤可观测性——supervisor子进程stdout/stderr落logs/shadow_{aid}.log(>5MB重置)+主管自身日志落logs/shadow_supervisor.log(原schtask控制台=黑洞,41/42崩因至今零线索);933绿 [vps]
2026-08-16 18:28:18 +08:00
ws.py
feat(api): WS 连接池 ConnectionManager
2026-07-06 18:15:22 +08:00