From 6dbc87d458ff8114143ec0d6dad3c7fd8242fb45 Mon Sep 17 00:00:00 2001 From: zlt Date: Wed, 16 Sep 2026 09:43:33 +0800 Subject: [PATCH] =?UTF-8?q?DEVLOG=EF=BC=9A=E6=8F=90=E8=AE=AE=E5=A4=B1?= =?UTF-8?q?=E6=95=88=E4=B8=8D=E8=B7=A8=E8=87=AA=E7=84=B6=E6=97=A5=E3=80=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E8=A7=86=E5=9B=BE=E7=8A=B6=E6=80=81=E5=88=97?= =?UTF-8?q?=E3=80=81=E8=AE=A1=E5=88=92=E6=A0=87=E6=95=B0=E6=8D=AE=E6=97=A5?= =?UTF-8?q?=E5=B7=B2=E7=9B=98=E4=B8=AD=E9=83=A8=E7=BD=B2=20155=EF=BC=8C?= =?UTF-8?q?=E5=88=A4=E6=94=B6=E8=AF=BB=E6=95=B0=E5=9B=9E=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5.1 --- DEVLOG.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/DEVLOG.md b/DEVLOG.md index cb7b962..9eec14e 100644 --- a/DEVLOG.md +++ b/DEVLOG.md @@ -1677,6 +1677,24 @@ app/web/static/index.html(状态列与操作列模板、.postbl 样式、nextS **还欠着什么** 一,用户登录 155 看持仓表两列。二,下一步的持仓词与抽屉一样只按三票与转空相位推断,没有读增持门与离场纪律的实际状态,后续可接扫描输出。三,管理视图的持仓总览没动。 +--- +## 2026-09-16 · 提议失效不跨自然日、管理视图状态列、选股计划标成数据日(真机见过) + +**做了什么** +开盘前十分钟用户提了三件。一,昨天 09:31 出的待确认提议到今天 09:31 才失效,开盘前页面还挂着昨天的;拍板改成提议在自然日结束前失效。实现:失效时刻取「现在加有效期」与「当天 23:59:59」的较早者(proposal_service.proposal_expire_at),人工补录提议同一规矩;过期清扫加两处,08:50 盘前准备与每轮扫描开头(只读试算不动表),原有 15:10 结算那处不动;提议列表接口按失效时刻再挡一道,裁决接口拒绝已过失效时刻的提议并顺手清扫。二,管理视图持仓总览的「状态」「冻结」两列并成「状态 · 下一步」,与交易员视图同款:状态、交易方案、只卖不买三种芯片一行,下一步短语一行,说明进悬停。三,「选股计划没更新」查实不是故障:上游计划的日期是数据日,选股桥每个交易日早上 07:10 用基座刚补全的上一交易日证据出计划(run.py 的 _latest_data_day 取基座最新扫描日;桥容器是 UTC,快照生成时刻写成前一天 23:10),持仓系统 08:40 拉取,所以页面永远显示上一交易日,日龄 1 属正常。今早的快照 07:10:15 生成、08:40:02 拉取,摘要与主榜条数都和昨天不同,确是新计划。页面顶栏、候选栏、计划抽屉改成「数据至 X · 今日 08:40 拉取」并加说明气泡,不再只印日期。 + +**动了哪些文件** +app/services/proposal_service.py(proposal_expire_at、is_expired、扫描开头清扫)、app/web/main.py(列表过滤、裁决拒绝过期、补录用同一规矩)、app/services/ledger_service.py(盘前清扫)、app/services/param_store.py 与 config/settings.py(参数说明)、scripts/test_batch20_units.py(加两例)、scripts/run_tests.py(登记 902)、app/web/static/index.html(管理视图状态列、计划日期三处、planFetchedText、.chips 与 .nx 样式去掉作用域)。三道页面守卫全绿,全量 902 例 ALL SUITES PASS。 + +**部署方式** +用户要求即改即部署。155 于 09:40 make deploy 重建镜像与容器,开盘后十分钟,通道 09:41:01 重连。 + +**真机判收** +真机见过(155,2026-09-16 09:40 到 09:45 北京时间)。版本 03e4dd5,镜像与工作树指纹一致 9abacfa4f359,make test ALL SUITES PASS,四容器健康,页面 HTTP 200,通道 ONLINE。昨天那条提议 PRP_20260915_300308SZ_OPEN 已置 EXPIRED,待确认为零;部署后首轮盘中扫描与信号消化无报错。选股计划核对:桥快照 plan_2026-09-15.json 生成于 2026-09-15T23:10:15(容器 UTC,即今早 07:10)、热度日 09-15、版本 3d3f317;持仓系统计划拉取记录第 38 条 fetched_at 09-16 08:40:02、摘要 1bb7dfa5、主榜 99 条,昨天第 37 条是摘要 e6eab04e、主榜 98 条。桥的构建由 192.168.16.165 的 XXL-JOB 调 /api/v1/xxl/daily-build 触发,宿主 crontab 为空。 + +**还欠着什么** +一,用户登录 155 看管理视图持仓总览与顶栏计划芯片。二,本机单测环境:旧会话的虚拟环境已坏,本会话在临时目录新建了一个(python3.9,按 requirements.txt 装),下次会话若要本机跑全量,重建一个即可。三,上游计划「日龄 1 属正常」这句只在页面说明里,接口 hint 仍写「日龄 1 交易日」,不改。 + ---