claude_dev
df008b985c
feat(web): 对账中心上线——恒等式B5只读端点+前端恒等式区块,双轨对账页升级为对账中心(issue#42-A) [nas]
...
CI/CD / test (push) Failing after 23s
CI/CD / nas-deploy (push) Has been skipped
CI/CD / nas-verify (push) Has been skipped
- API: GET /paper/reconcile/identity?date&refresh——缺省读 supervisor 15:10/23:27
已存 identity_reconcile 行,无存行现算并落库(与 build/save 同套幂等);
路由置于 /paper/{aid} 前,与既有 reconcile 端点同组
- 前端: Reconcile.vue 顶部新增恒等式卡片(账户级红绿/未归因±/占比vs容忍0.5%/
可展开逐票缺口+实例市值拆分),页面与菜单更名为「对账中心」;
api/paper.ts 补 IdentityReport 类型族
- 测试: 绿线(50/10050=0.497%pass)+存行复用+refresh强制重算(200=1.96%红)+
snapshot_missing 如实标注,12/12 绿
- 附: docs/session_prompts/ 两份 session 移交提示词入库(fundamentals 18min→
数据session / 统一ex定寸→策略session,用户08-26拍板)
2026-08-26 20:31:42 +08:00
claude_dev
0c81f5b04b
fix(orchestrator): worker被OOM击杀后ProcessPoolExecutor永久破损——BrokenProcessPool让任务中心瘫痪到容器重启(factor批次连撞两次500实锤);submit_work捕获后重建池重试一次 [nas]
2026-08-26 20:19:07 +08:00
claude_dev
1539e678f6
fix(factor): fast_ops大窗口OOM根治——>60窗shift展开物化window列×10M行(250窗≈20GB)必被内核击杀,卡死24/227六次自愈全撞alpha19的统一根因;sum/min/max/mean/std/corr改原生rolling(min_samples=1截断窗与展开逐点恒等,13等值测试锁定NaN/null语义差异:min须fill_nan(None),max不fill因NaN视作最大两路同步毒化) [vps]
2026-08-26 20:19:03 +08:00
claude_dev
c40c6f3216
feat(api): 批量评估submit支持run_id断点续跑透传——docker exec会话被DSM约20min处决,评估改走uvicorn子进程不受exec收割,API带run_id无缝续 [vps]
2026-08-26 19:03:50 +08:00
claude_dev
2838b3938e
perf(factor): close_wide同款pandas pivot快路——parquet缓存后它成了每条命15min的残留大头(_eval_one同款修法) [vps]
2026-08-26 07:42:08 +08:00
claude_dev
be50d6c555
perf(factor): universe parquet缓存——外部~20min杀手 regime下每条命15min冷加载翻转为秒级复载,20min寿命=纯计算15-20因子;key含窗口/symbols/limit防串池,写失败静默 [vps]
2026-08-26 06:37:33 +08:00
claude_dev
62673ea329
fix(factor): load内存根治v2——类型转换下沉chunk级(dt解析/vt_symbol常量列/列裁剪),字符串三列活不过2100行小块,concat仅碰精简类型列;前轮lazy化未压住的6.6GB峰值源头即Utf8多份拷贝 [vps]
2026-08-26 05:27:28 +08:00
claude_dev
6eb977a0d0
fix(factor): load段内存峰值根治——chunks在concat后即清+transform链lazy单次物化,RSS监控实锤6.6GB被kernel周期性OOM击杀,eager逐步链3-4倍峰值收敛到~1.5倍 [vps]
2026-08-26 05:03:45 +08:00
claude_dev
9977ff6e2e
perf(factor): 评估内存减负——bars原始帧派生后即释放(~1G)+alpha_df弃无引用open_interest列(80M),NAS 8G盒防周期性OOM [vps]
2026-08-26 03:53:30 +08:00
claude_dev
38df909b92
perf(factor): fast_ops 双操作数join改按位拼接——ts_corr/cov每次调用对10M行帧hash join分钟级(py-spy第五查),同父df全算子保长保序前提下按位等价零成本 [vps]
2026-08-26 01:57:05 +08:00
claude_dev
d995962425
perf(factor): 落库buffer 20→1逐因子即存——重启风暴下单次最多丢在途1因子(曾一次丢6个未攒满批) [vps]
2026-08-26 00:25:57 +08:00
claude_dev
75f824341b
perf(factor): 因子矩阵宽表化polars pivot改pandas pivot——py-spy实锤10.4M行polars pivot单次10+分钟,唯一键下pandas=factorize+reshape秒级;索引/列语义与后续切窗掩码不变 [vps]
2026-08-25 23:56:44 +08:00
claude_dev
919fa50d0f
fix(live): 迟到成交对账根因修——引擎16s超时弃跟踪后迟到fill永不进engine.get_trades(08-25幻影500+700股/-18060不自愈):a窄修=下单返回非终态挂进程内待对账名单,归因轮询按券商订单号直查QMT原始成交行(broker.get_trades,绕开引擎视图)见一笔记一笔,终态出名单/隔夜出清;b宽修=15:05 EOD全量对账(QMT当日成交vs live_trades,trade_id或时间+代码+方向+价+量五元组对齐,缺失补插带eod:前缀),赶在15:10恒等式前收敛;三路径同一deal_no幂等;新增live_reconcile模块+账本seen_trade_ids快照,适配器_done挂钩孤立加载已验,21新测试+全量1100绿(9红=test_live_api前后端session既有) [vps]
CI/CD / test (push) Successful in 18s
CI/CD / nas-deploy (push) Successful in 23s
CI/CD / nas-verify (push) Successful in 2s
2026-08-25 23:56:29 +08:00
claude_dev
7bbba554f8
perf(factor): fast_ops v2 去over化——rolling.over(vt_symbol)在10M行分组滚动分钟级/算子(py-spy实锤ts_mean),改符号内shift展开统一模式(ts_mean/std/min/max/sum/corr/cov),等价性测试对齐原版+1M行速度护栏 [vps]
2026-08-25 22:15:40 +08:00
claude_dev
a2fe51b4b0
fix(nas): bs_5m失败股尾部补扫一轮——03:0x同步链持写锁60s busy_timeout耗尽database is locked(每晚1-5只)+偶发网络错(600247),原形态=该片窗口永久小洞;修=_sweep返failed清单,run尾部(07:40+同步链早已收工)chunk/inc各自失败集各补扫一轮自愈,补扫query计入swept配额、rlr并入exit语义;+2测试(双窗口失败→双retry=6调用自愈/零失败无retry回归);venv310 644绿 [nas]
CI/CD / test (push) Successful in 29s
CI/CD / nas-deploy (push) Successful in 33s
CI/CD / nas-verify (push) Successful in 2s
2026-08-25 21:32:28 +08:00
claude_dev
7ad0cbea76
fix(nas): merge_increment计数免疫并发写者——inserted改用Connection.total_changes(只计本连接INSERT生效行),原after-before会被03:00合并窗口并发的bs_5m写入污染(08-25实锤skipped(dup)=-4881,5m插的行被记成merge的inserted);+2测试钉计数契约(新/dup/混掺/他源行不计入);venv310 644绿 [nas]
2026-08-25 21:32:28 +08:00
claude_dev
41495b0c08
fix(live): 卖出闸门无价透传改fail-closed拒单——issue#38修复一A收尾 [vps]
...
CI/CD / test (push) Failing after 11m5s
CI/CD / nas-deploy (push) Has been skipped
CI/CD / nas-verify (push) Has been skipped
08-24 300059 跨实例互卖定罪(issue#38):闸门虽有台账硬顶,但两处「无有效价格」
路径透传引擎原函数=数据源退化回全账户视图(引擎按账户算target,账户有量会替
别家卖到目标值/按账户卖出)——正是「账户可卖视图放行18归属4400股」的变体洞。
改动(_instance_order_wrappers):
- otv value>0 无价(市价拿不到且账本无此票无成本可回退)→ 拒单fail-closed,
不再透传bt_otv引擎target语义(宁可少买不可互卖,策略session定夺=拒单语义)
- 负order_value无价 → 拒单,不再透传bt_ov按全账户卖出
- 事故主洞(同窗双卖吃到60s归因间隙)已由191270c即时归因关闭:新增钉死测试
「双卖窗口阻断」——第一笔4400即时归因(on_order_done钩子)→第二笔闸门读
账本可卖0拒单;闸门每调用现读positions_view的B链路行为从此有回归锚
测试:test_live_instance_orders +3(双卖窗口阻断/otv无价拒单/负ov无价拒单),
17/17绿;portfolio+data_platform+api全量819绿。B2 closeable口径已走账本
(InstancePosition直读账本info,无改动);账本bootstrap/重归=15:10恒等式
reconcile既有runbook。issue#38验收(恒等式连续3日PASS)按issue标准观察。
2026-08-25 21:30:49 +08:00
claude_dev
894c547297
feat(factor): 批量评估断点续跑——run_id复用+已落库因子跳过+空续跑免load直收尾;跨session CI容器重启只损失在途1因子,重挂即续 [vps]
2026-08-25 20:56:22 +08:00
claude_dev
3304ff46b2
perf(data): 四热路径日期区间SARGable化——substr(datetime,1,10)对索引列套函数打不进复合索引datetime列,每股扫全量日线史取短窗——08-25晨9:30生产实锤:momentum选股1/2(RPS池)174s未达<60s验收,阶段日志精确定罪(过滤段含双seek仅7.8s);病根=PanelFetcher的30天窗SQL每只股扫~5000行日线史取~22行,3226只≈1600万行=174s量级吻合。修=裸列datetime>=start AND datetime<end+1天排他上界(与按日期前10位比较在d裸日期/15m·5m时间戳两格式下语义严格等价,含end当日全部行排除次日),区间打进复合索引第4列每股只扫窗口行。四处同病同修:PanelFetcher宽表/PriceFetcher逐只get_price/limit-status近2根90天窗(原substr版90天下界同样打不进索引)/datareader CTA回测K线。+3测试:防回潮扫描(三文件钉死禁substr谓词)+双格式边界行为(d裸日期与15m时间戳end当日含次日排)+get_price同语义;portfolio+data_platform 644绿;待VPS探针终验计时 [vps]
CI/CD / test (push) Successful in 3s
CI/CD / nas-deploy (push) Successful in 21s
CI/CD / nas-verify (push) Successful in 8s
2026-08-25 20:54:40 +08:00
claude_dev
841ea1536e
fix(live): 三策略定寸现金→总资产口径(卖后买现金窗口A修法,回原JQ语义) [vps]
...
CI/CD / test (push) Successful in 7s
CI/CD / nas-deploy (push) Successful in 23s
CI/CD / nas-verify (push) Successful in 11s
08-25 9:30 事故(前后端session移交):small_cap同轮「全卖19只→马上全买20只」,
台账现金只被runner_live 60s归因轮询更新(唯一cash入口),买入定寸落在两轮之间
→卖出回款不可见→20笔买入全部目标0全天空仓;momentum同型撞运只入账首笔
79k/6≈13.2k/只(44%仓)。B修法(191270c,下单返回即时归因)已做;本A修法=
防御纵深第二层:定寸口径回总资产,归因异常/漏单时定寸也不再依赖未入账现金。
改动:
- all_weather.py 共享helper _total_value:B2 InstancePortfolio.total_value
(=台账equity,实时价缺价回退成本)/jq原生total_value直接读;缺属性回退
现金+Σ持仓市值(同语义)
- momentum_timing_ex/small_cap_ex/value_selection_ex 三处轮动定寸
per_value=cash/N→total/N,守卫cash<=0→total<=0
- momentum 尾部卖出+买入抽独立方法 _rotate_positions(纯移动零逻辑变化,
便于回归直接钉死)
- 原JQ语义per_value=stock_value/len本就是总资产口径,cash口径是移植失真;
all_weather/channel_test的cash读取(递增建仓/现金铺余位语义)按移交指示不动
- 清三文件因此孤儿化的_available_cash import
测试:tests/portfolio/test_sizing_total_value.py 5条——helper 2(直读/回退)
+每策略1条「卖出未入账时定寸不缩水」(fake现金旧值+持仓仍显示旧仓→per_value
=总资产/3=3500而非现金/3≈333;目标3>旧仓2=事故真实形状,防买守卫提前break)。
portfolio+data_platform+api全量811绿。验收=08-26 9:30 momentum补仓满额
(~490k/6);与191270c同车推VPS(NAS恢复后)。
2026-08-25 20:49:01 +08:00
claude_dev
0ede4e967e
chore: 191270c 标签补正说明——[vps]误写在正文末行,enforce-label按subject行匹配故run741红;改动本身无新增(空commit),B修法实体在191270c [nas]
CI/CD / test (push) Successful in 5s
CI/CD / nas-deploy (push) Successful in 15s
CI/CD / nas-verify (push) Successful in 3s
2026-08-25 20:43:28 +08:00
claude_dev
191270c884
fix(trader): 卖后买现金窗口B修法——下单返回即时归因入账,台账cash不再等60s轮询
...
CI/CD / test (push) Failing after 6s
CI/CD / nas-deploy (push) Has been skipped
CI/CD / nas-verify (push) Has been skipped
2026-08-25 事故:small_cap同轮「全卖19只→马上全买20只」在两轮归因轮询间隙
读台账现金,卖出回款不可见→20笔买入全部目标0、全天空仓;momentum同型撞运
只入账首笔79k/6=13.2k缩水44%仓;value无卖后买序列满额(反证)。QMT无责
(0.5s filled/券商现金即时/下单线程同步见filled),gap=runner_live.py归因
poller 60s一轮才调ledger.apply_trade(唯一cash更新入口,DB落库时间戳恰差60s
铁证)。
修法(B,治本现金新鲜度):
- LiveInstanceLedger.on_order_done钩子+notify_order_done(未注入/抛错静默,
绝不阻断下单;漏单由轮询兜底);apply_trade幂等判定整体移入锁内——钩子
(策略线程)与轮询(poller线程)并发同步同一笔成交时恰好一笔入账,防双计
- live_strategy._instance_order_wrappers:所有真实委托(bt_order/透传)返回后
_done()触发即时归因;决策层不下单的路径不触发
- runner_live:engine装配后注入on_order_done=_sync_instance_trades闭包;
60s轮询保留兜底(部分成交后续/异步路径)
测试+8:钩子三态(nop/触发/吞异常)+8线程同trade_id并发恰入账一次(竞态回归)
+wrapper卖出/买入/透传触发+不下单不触发;portfolio 459绿+api 170绿
[vps]
2026-08-25 19:47:13 +08:00
claude_dev
f438c6cd65
perf(factor): metrics热路径numpy/scipy化——rank_corr/quantile_mask/decile的pandas rank改scipy rankdata(axis=1)C实现,宽矩阵压力下分钟级→秒级;接口与数值不变,测试原样全绿+速度护栏 [vps]
2026-08-25 10:29:43 +08:00
claude_dev
a8f9199dab
fix(factor): mount_alpha101 docstring 100→82(实测数)+_quantile_mask 未用形参收敛为top布尔 [vps]
2026-08-25 06:53:05 +08:00
claude_dev
23d7b6e02e
fix(web): 详情页换手率改读metrics顶层+批量页删失实'剔ST'文案(实现不做ST过滤,无point-in-time名称史) [nas]
2026-08-25 06:53:04 +08:00
claude_dev
5fdcd8b5d7
perf(factor): 原生polars快速算子库覆盖vnpy慢rolling_map——ts_corr/ts_rank/ts_decay_linear/ts_quantile/ts_cov/ts_slope族共8算子shift展开或rolling原生,EXPRESSION_FUNCTIONS官方扩展点注册,等价性测试精确对齐原版;ts_argmax/argmin并列场景原生恒等式不成立留原版(25因子另批处理) [vps]
CI/CD / test (push) Successful in 8s
CI/CD / nas-deploy (push) Successful in 37s
CI/CD / nas-verify (push) Successful in 12s
2026-08-25 06:29:31 +08:00
claude_dev
0b3f6bb87c
perf(factor): 逐因子join砍除——pivot全表后pandas切窗口+预热cutoff广播掩码置NaN(NAS实测94.5万行join+pivot 11.4s/因子是全量8h瓶颈;NaN语义与join剔除等价,指标层自动剔缺失) [vps]
CI/CD / test (push) Successful in 8s
CI/CD / nas-deploy (push) Successful in 34s
CI/CD / nas-verify (push) Successful in 5s
2026-08-25 01:43:52 +08:00
claude_dev
c09cdee519
perf(factor): 股票池枚举改递归CTE松散索引扫(573s→70s)+数据查询逐symbol四列全等前缀(补exchange直落日线子树,免扫15m/5m条目)——NAS 2核26G库实测两处慢点根治 [vps]
2026-08-25 01:33:04 +08:00
claude_dev
0d038548ae
perf(factor): 股票池枚举改无过滤DISTINCT覆盖索引扫——带WHERE(interval/datetime/LIKE)版本在26G库退化全表扫NAS实测>5min不归,前缀python侧滤,周期/窗口由数据查询天然过滤(语义不变,15m-only股锁定测试) [vps]
2026-08-25 01:01:48 +08:00
claude_dev
cdaa88fea1
feat(web): 批量评估页——股票池/因子集/时间窗三步提交进任务中心;CI门禁加tests/factor [nas]
CI/CD / test (push) Successful in 12s
CI/CD / nas-deploy (push) Successful in 34s
CI/CD / nas-verify (push) Successful in 11s
2026-08-25 00:42:57 +08:00
claude_dev
77e12f4fe0
feat(web): 因子详情页——表达式卡+6格指标+月度/累计IC双系列图+十分组柱状(echarts终端暗色)+排行榜页色值清理走token [nas]
2026-08-25 00:40:26 +08:00
claude_dev
52eb5177ac
feat(web): IC排行榜页——瓦片+筛选chips+全指标表格+IC趋势sparkline+信号灯,终端风1:1 mockup [nas]
2026-08-25 00:37:41 +08:00
claude_dev
fa87135a44
feat(web): 因子工作台接线——eval API 客户端+3路由+投研组菜单/面包屑 [nas]
2026-08-25 00:33:46 +08:00
claude_dev
f0e9860316
feat(api): 因子批量评估四端点(runs/leaderboard/detail/submit)+orchestrator任务接线——leaderboard服务端扁平化排序,worker落factor_eval.db+任务中心摘要 [vps]
2026-08-25 00:31:12 +08:00
claude_dev
dfa4f90ecd
feat(factor): 批量评估CLI——冒烟/全量/列因子,进度打印+Top15汇总表(NAS docker exec 冒烟入口) [vps]
2026-08-25 00:26:45 +08:00
claude_dev
d3226ebe71
fix(factor): 批量评估空因子矩阵守卫——join静默空集记error行不再产全None淘汰假数据 [vps]
2026-08-25 00:25:30 +08:00
claude_dev
3f9a4fc681
feat(factor): 批量评估引擎——进程内逐因子calculate_by_expression(弃spawn池整df pickle),单因子失败不中断,结果增量落盘 [vps]
2026-08-25 00:21:54 +08:00
claude_dev
afe969e307
feat(factor): 评估结果存储 factor_eval.db——runs/results两表,metrics按周期JSON,SANGUO_FACTOR_EVAL_DB可覆盖 [vps]
2026-08-25 00:17:47 +08:00
claude_dev
89a8dd1487
feat(factor): 向量化评估指标——RankIC逐行秩相关/ICIR/t/胜率/多空年化/换手/十分组/月度IC/结论分级 [vps]
2026-08-25 00:12:35 +08:00
claude_dev
d00ad7d81d
fix(factor): WARMUP_BARS 60→120 恢复spec剔新口径(修夹具130根预热而非改口径)+evaluation_filter改datetime对象比较(9M行免逐行strftime) [vps]
2026-08-25 00:09:31 +08:00
claude_dev
cfb604588c
feat(factor): 评估股票池加载器——dbbardata分块直读polars,前缀60/00/30,300天lookback+45天forward缓冲,vwap派生,bar_idx预热 [vps]
2026-08-25 00:07:37 +08:00
claude_dev
51137a8268
feat(factor): 挂载 vnpy Alpha101(82)+Alpha158(158) 全量表达式进注册表——空df实例化零成本提取,导入即注册,幂等 [vps]
2026-08-25 00:01:41 +08:00
claude_dev
ec5a55c5f7
feat(factor): data_adapter 补 vwap 派生列(turnover/volume,零量置null)——Alpha101 表达式 59 处引用 vwap,dbbardata 无此列 [vps]
2026-08-24 23:57:19 +08:00
claude_dev
a62013cb9c
docs(factor): 第一批实施计划——13任务TDD拆解(挂载/股票池/指标/存储/引擎/CLI/API/前端三页/NAS验证),含ST过滤偏差声明与spawn池规避设计 [nas]
2026-08-24 23:52:40 +08:00
claude_dev
c94d1f3d2b
docs(factor): 第一批设计spec+终端风前端mockup——①spec:Alpha101+158全量挂载全A重验(2018-2026,主板+创业板剔ST/新股,RankIC 1/5/10D,退市股保留无幸存者偏差);后端=注册表挂载+vwap派生列+批量评估脚本(因子分批15-20/批)+冒烟先行;用户拍板两条: ⚠️ 最终部署VPS不止NAS(走标准promote链,VPS 42.8G权威库)+行业中性化先不做(IC数据说话后再决策)②mockup v2:第一版亮色Element风被用户打回,重做1:1科幻终端风(tokens.css深空黑/荧光青/琥珀/红涨绿跌/term-grid/信号灯),三页=IC排行榜(统计瓦片+筛选+主表带IC色条sparkline)/因子详情(表达式+月度IC+十分组)/批量评估(股票池3预设卡+因子集勾选),用户确认 ✅ ③mockup与spec互引,调查报告见同目录 [nas]
2026-08-24 23:36:36 +08:00
claude_dev
31596f58f9
fix(shadow): 双轨对账count_match改按票+方向聚合总量——QMT部分成交拆行致27vs5恒False纯计数噪音 [vps]
...
CI/CD / test (push) Successful in 14s
CI/CD / nas-deploy (push) Successful in 24s
CI/CD / nas-verify (push) Successful in 1s
08-24实录: momentum一笔3800股被QMT拆19笔fill,对账27vs5恒count_match=False,总量却分毫不差。旧口径按原始行数比(注释自称'差异如实呈现待归因',实则部分成交属成交粒度非分歧)。修=按聚合桶live_volume==shadow_volume判;原始行数保留在live_count/shadow_count供归因。真量差仍判False(新增测试钉死)。trader 254绿。
2026-08-24 23:07:12 +08:00
claude_dev
e2dc473682
fix(shadow): 影子市价单成交基准改实时行情——旧按委托保护价记账恒差1.5%,08-24双轨4/6红根因 [vps]
...
根因(代码级实锤): broker._ref_price 优先用下单传入price,而市价单的price是保护性委托上限(策略侧行情×1.015,BrokerBase契明文'可用作保护价/参考价'非期望成交价)→影子每笔买入虚高~1.5%,卖侧对称低~1.5%。08-24证据三连:momentum/small_cap首次真实成交日25票价差紧聚-150bps(-112~-189);卖侧510500同样-1.54%(排除'晚一根bar随行情'解释);级联=虚价吃掉影子现金6k+→002038买第6只差1678元资金不足拒单(shadow_60日志)。排除用户初判的滑点/费率参数不一致(影子账户slippage=0.0费率正常)。回测/实走无此问题(matcher.py按bar开收价,另一套)。
修: _ref_price(security,price,market)——市价单成交基准=price_getter实时行情,行情不可得退回委托价(告警,可用性优先);限价单沿用传入价(触价语义,旧行为);buy/sell补市价转限价封顶(行情超保护上限按上限成交不追高,卖侧对称)。
+5测试(市价买卖按行情/超上限封顶/无行情退委托价/限价语义不变),trader 254绿+api 171绿。
2026-08-24 23:07:12 +08:00
claude_dev
6c2c217e22
fix(web+api): 组合回测max_pool默认30→0——用户拍板「前端页面肯定要改」(回测口径与实盘对齐,f214e2f只翻了live/paper链漏了回测) [nas]
...
CI/CD / test (push) Successful in 12s
CI/CD / nas-deploy (push) Successful in 42s
CI/CD / nas-verify (push) Successful in 9s
你印象中改过的是6ecdaab#95标的池pool→all(三表单+后端四处),max_pool当时没动。本次三处对齐: PortfolioBacktest表单默认30→0+过时提示(「MVP验证用,默认30」)清理+routes_portfolio Field default=30→0(防API直调口径分裂,#95同款对齐法)。语义同全链:0=不限,策略层>0才截断。build绿+tests/api 165绿。
2026-08-24 20:54:56 +08:00
claude_dev
981b501bdd
docs(data): get_security_info_batch docstring同步双seek终态——删'IN+GROUP BY走索引'旧描述(该假设恰为生产劣化计划根源) [vps]
CI/CD / test (push) Successful in 6s
CI/CD / nas-deploy (push) Successful in 29s
CI/CD / nas-verify (push) Successful in 3s
2026-08-24 14:16:21 +08:00
claude_dev
aafa5baa67
perf(data): min/max改逐对双seek——INDEXED BY批IN形态VPS实测仍不达标(30只冷8.1s/热0.25s,大池冷态分钟级),ORDER BY ±datetime LIMIT 1三列全等前缀每股恰2次寻位冷热皆毫秒级——上一发( 80fc517)生产探针续测定形态:①原IN+GROUP BY劣化计划101s冷;②钉复合索引后计划翻转(TEMP B-TREE消失)但仍逐股扫全部interval条目(d+15m+5m),30只冷8.1s→momentum池~2000只外推冷态≈9min过不了<60s验收;③行值IN变体在本SQLite对(row-value IN+INDEXED BY)走全索引扫描7min不归(弃);终态=逐对双seek,symbol/exchange/interval三列全等直落d子区间两端,连15m/5m条目都不碰;无日线对不落minmax(下游.get默认(None,None)同旧GROUP BY语义);测试5个重写到seek API(双索引名/回退/EXPLAIN计划签名interval=?直落+无TEMP B-TREE/batch==逐只等价);628绿;待VPS探针终验双seek计时 [vps]
CI/CD / test (push) Successful in 9s
CI/CD / nas-deploy (push) Successful in 25s
CI/CD / nas-verify (push) Successful in 1s
2026-08-24 14:14:11 +08:00