diff --git a/DEVLOG.md b/DEVLOG.md index c113329..e6eb9af 100644 --- a/DEVLOG.md +++ b/DEVLOG.md @@ -982,6 +982,76 @@ ALL SUITES PASS 且代码指纹与工作树一致。纪律照旧:**收盘后 --- +## 2026-08-28 · 页面口径两处修正:信号默认只看今天、方向色统一红涨绿跌 + +**做了什么** +1. **信号默认只看今天。** 风控卖出流 (bionic:signals:llm_sell_actions) 不按日期分键, + 清晨没有新信号时 xrevrange 取到的「最新 N 条」全是昨天以前的, 而页面只显示时分 —— + 昨天 14:49 的建议卖出挂在今天 13:20 的页面上冒充新消息。后端 upstream_signals 给 + 每行补 ymd 与 today 标记 (时间戳解析不了的按今天算, 风控从宽); 页面信号流速览默认 + 只显示今天, 昨天及以前收进底部「更早的信号」折叠区 (带日期、置灰、默认收起); + 顶部消息栏不再把昨天的风控卖出算进今天的消息; 「今天的信号」列与持仓角标只数今天。 +2. **方向色统一 A股口径**: 买入/看涨/流入类一律红, 卖出/看跌/流出类一律绿。原来模板 + 词表里没有「买入/卖出」, 买入落到 else 被涂成绿色, 方向恰好用反; 决策系统买卖广播 + 原来借状态色 (建议卖出=红 deny / 建议买入=绿 done) 同样是反的。新增方向配色函数 + dirCls (认不出的词给中性灰, 不硬猜) 与方向药丸样式 sig-up / sig-down。 +3. 顺带: 「把握 72(满分 1)」这类混乱显示统一折成百分比 —— 上游有的发 0.72、有的发 + 72, 页面见谁都显示 72%。 + +**动了哪些文件** +app/services/upstream_signals.py(风控卖出行补 ymd/today)、app/web/static/index.html。 + +**部署方式** +tlai4090: git pull 后 make deploy。纯展示层 + 只读接口字段增补, 无 DDL、无新 env、 +无参数变更, 不影响任何下单与入账路径。 + +**真机判收** +开发机: 全部 20 套 585 例单测 ALL PASS; 页面内嵌脚本 node --check 与 esprima 解析 +双通过; 模板标签配平。部署后开页面看三处: ① 信号流标题变成「今天 N 条」, 旧条目 +只出现在「更早的信号」折叠区且带日期; ② 顶部消息栏不再出现晚于当前时刻的时间; +③ 信号里买入类是红字、卖出类是绿字, 建议卖出药丸是绿底。 + +**还欠着什么** +无新增欠账。pms-ws 启动日志与 ws_smoke 打印的端点仍取 settings 层 (非参数表优先的 +最终生效值), 上一条节点已记, 待下轮一起改。 + +--- + +## 2026-08-28 · 模拟/正式双系统:定方案(一份代码两份 .env)+ compose 参数化 + +**做了什么** +QMT 从模拟转正式, 定下双系统方案并落了隔离改造。方案全文见 REAL_TRADING_DEPLOY_PLAN.md, +要点: 现有这套原地不动继续当模拟, 正式盘在另一台服务器单独部署; 不开分支不复制仓库, +一份代码两份 .env, 实例身份由 .env 与各自库里的参数表决定。必须隔离的五样: +PMS 业务库 (pms_* 必须新库)、Celery 总线 redis db (db8→db9, 同 db 两套 worker 互相抢 +任务)、信号消费组名 (同组一条消息只投一家, PMS_SIGNAL_GROUP 已在 settings 声明, +.env 直接生效)、QMT 端点与签名密钥对 (绝不复用)、会话密钥。行情/大盘/mtf/决策系统 +信号流是只读共享, 不用动。 + +代码侧只动了部署壳: docker-compose.yml 的容器名前缀 / 镜像标签 / 页面宿主机端口改成 +从 .env 取值 (PMS_STACK_PREFIX / PMS_IMAGE / PMS_WEB_PORT_HOST), Makefile 的三处 +硬编码 38100 改走 PORT 变量。**默认值与从前逐字一致, 现有部署零感知**; 将来两套要 +合并到一台机器时也不用再改代码。 + +**动了哪些文件** +docker-compose.yml、Makefile、新增 REAL_TRADING_DEPLOY_PLAN.md。业务代码零改动。 + +**部署方式** +模拟 (tlai4090): 随下次 git pull + make deploy 自然带上, 无需专门发版。 +正式 (新服务器): 照 REAL_TRADING_DEPLOY_PLAN.md 第四节九步走。 + +**真机判收** +开发机: compose YAML 解析通过; make -n health 默认仍打 38100、PORT=38200 时打 38200; +全量单测与本轮改动无交集 (业务代码零改动)。模拟侧部署后 `docker compose ps` 容器名 +应与从前完全一致 (前缀默认空)。 + +**还欠着什么** +1. 部署前要拍板/对接的三件事在方案文档第二节: 正式 QMT 写不写 153 下游表 (决定 + 153 代理加逻辑库还是直连 MySQL)、正式 ws 端点与密钥交换、真实账户规模与纪律参数。 +2. 正式盘上线初期纪律: shadow + propose_only + 新建仓 off, 影子期至少 3 个交易日。 + +--- +