交接副本同步

This commit is contained in:
baobao 2026-10-19 14:33:24 +08:00
parent 28053f3bfc
commit 82f4f00848
4 changed files with 178 additions and 0 deletions

View File

@ -2044,3 +2044,14 @@ fad1bb1于14:19:39在155四容器生效。镜像2e5213b9d37f9c7337f4857ab0401e74
补查人工清仓:T+1不可卖时原路径会采纳但不留指令。
改为保留不超过确认量与当前总持仓的清仓任务;持仓已归零仍停止旧买入。
新增两项专项,共24例。本项待候选镜像和第二次部署;没有代替用户采纳。
### 2026-10-19 14:30 最终补修生效
28053f3于14:27:22统一重建四容器。镜像06493afa19ec4cd61d07b7834472a11c550d0ec0a341e251dcdb64626a4139c0。
24专项、45批本地与镜像禁网回归通过。14:28全量原值比对通过,21持仓、283批次与93指令执行进度保持。
只有科士达旧买入按授权终止,停止审计6912、6913不重复,清仓等待可卖。
QMT在线,无补同步要求,健康正常,正常回放0差异。93行指令读数耗时0.344秒。
本地Chrome替身页面零错误,线上服务读回进展正确;生产登录浏览器未直接验收。
人工T+1、失败撤单与并发边界仅离线验证,不制造交易,188未操作。
四仓规格与交接逐字同步,完整备份和回退见14:30交接。

View File

@ -916,3 +916,70 @@ PMS 本轮没有重建,188 真实 PMS 未操作。
只读命令 `python -m build_readiness` 现在预期退出 0,显示 2026-10-16 日期已对齐。
本轮故障恢复判收完成。既有五分钟业务任务继续运行。
不另加五日模拟观察,已暂停的 Codex 心跳保持暂停。
## 2026-10-19 14:30 买卖方向冲突修复与部署判收
用户要求立即修复科士达买入与清仓并存,并检查其他流程。
只操作155模拟PMS。178和桥本轮仅同步文档,188未操作。
修复前科士达旧建仓600股、累计成交400股,仍有200股未执行。
09:51择时系统95%置信度卖出触发清仓400股,09:52卖出200股。
剩余200股为当日买入,可卖为零。三个真实子委托均已成交。
页面把父指令DISPATCHED都写为已挂单,导致误解。
14:10检查全量活跃指令,只有科士达存在同票买卖重叠。
修复覆盖命令、信号、技术面离场、人工采纳和跟踪止盈的清仓入口。
完整清仓统一停止旧买入指令、买入提议和未解锁批次。
普通减仓期间暂停买入发出,不永久取消建仓或策略。
T0_ROUND自身配对不误判为清仓,外部完整清仓仍终止其原买入安排。
停止依据追加到动作账本,避免并发旧进度覆盖后恢复买入。
下发进度回写不得把终态指令重新改回DISPATCHED。
出口先处理撤单,认领排除待撤委托,发送前重查来源及方向。
旧卖出理由的audit_reason和component_scores.reason现可透传。
历史已落账的泛化理由不伪造回填。
人工清仓补查:T+1可卖量为零时仍保留清仓任务。
数量不超过用户确认量与当前持仓量,实际出手仍受可卖量约束。
当前已归零时不再生成卖单,但会停止旧买入。
普通减仓数量口径保持。
正式规格见同仓《开发规格_买卖方向冲突修复_2026-10-19.md》。
最终功能提交28053f3,包含fad1bb1。
24项专项与45批本地配置隔离禁网测试通过。
最终候选镜像45批在--network none下通过,包含三页面守卫。
原版本的五项行为反例在离线副本中全部失败,修复版本通过。
本地Chrome使用接口替身渲染,等待可卖、等待下一批显示正常,页面错误零。
生产读数对应清仓等待可卖、旧买入已撤销。
登录后的生产浏览器会话未在本轮直接操作,不将替身渲染充作该项验收。
首版于14:19:39统一重建四容器,正常14:20调度完成旧买入收尾。
最终补修于14:27:22再次统一重建web、worker、beat、ws。
最终镜像sha256:06493afa19ec4cd61d07b7834472a11c550d0ec0a341e251dcdb64626a4139c0。
回退镜像pms:rollback-before-conflict-20261019保留本轮前版本。
另有pms:rollback-before-manual-exit-20261019保留第一次修复版本。
155的/app仍绑定挂载,回退要先反向提交并git pull,再重建四容器。
回退不得恢复已经撤销的买入指令或删除真实成交与停止记录。
服务器本地scripts/deploy.sh哈希前后一致,未覆盖其他本地文件。
14:20:05,正常intraday_exec将INS_20261016_002518SZ_OPEN_001置CANCELLED。
目标600、实成400保持。停止依据6912,撤销记录6913,均记system。
INS_20261019_002518SZ_EXIT_95100仍400/200,显示等待可卖。
14:21及14:28正常调度保持,无重复停止记录、无新委托。
14:28:20全量比较:15项核验参数相同,21条持仓账务字段相同,283条批次账相同。
93条父指令执行数量相同,状态仅科士达旧买入由DISPATCHED变CANCELLED。
七条历史暂停指令未恢复。没有改写费用、历史峰值、旧批次或净值。
QMT ONLINE,resync_flag=0,last_error为空,水位1299667。
健康status=ok、db_ok=true、日历未降级;正常回放对账diffs=0、severity=OK。
93行指令列表与实际进展只读取数耗时0.344秒。
写前备份155 ~/pms_logs/conflict-predeploy-20261019.json,SHA256
fb5edeccc4712de12e8e702d196f7ebfdee573055ae494085a62c42fec7235f8。
最终只读快照conflict-final-20261019.json,SHA256
881a4f3a39f5f2b9f4ec5088722bc89a552ce65d9f4b820800e598bfcdc1d8dd。
原始证据kstar-conflict-20261019-1402.json、kstar-signal-20261019.json仍保留。
构建与测试日志conflict-final-build-20261019.log、conflict-final-tests-20261019.log。
桥台账076保存决定。用户原有未提交文档与探针保留。
人工T+1确认、撤单失败、迟到成交与并发竞态已离线覆盖。
本轮没有自然事件逐项生产复现,不宣称所有边界均真机判收。
未采纳提议或制造交易。交易时段、择时阈值、仓位档位、排序与自动修订安排保持。
不增加模拟观察期,也不重启已暂停的Codex心跳。

View File

@ -53,3 +53,36 @@
改为按已确认数量与当前总持仓取较小值,执行器继续按当日可卖量分批,不扩大用户授权数量。
持仓已经归零时不再生成卖单,但仍停止未完成的旧买入。普通减仓保持按可卖量处理。
增加两项回归,专项共24例。此项为代码发现的边界,尚无自然人工确认事件判收。
## 最终交付与验证入口
功能28053f3已于2026-10-19 14:27:22在155四容器生效。
镜像06493afa19ec4cd61d07b7834472a11c550d0ec0a341e251dcdb64626a4139c0。
本地和候选镜像45批全部通过,专项24例。
科士达旧建仓已终止,真实600/400及清仓400/200保留。
参数与全部持仓、批次账一致,零新增委托,对账正常。
两条system审计6912、6913未重复。完整证据见同仓每日计划交接14:30节。
```bash
# 开发机 · tradingSystem 仓库根目录
/private/tmp/pms-conflict-20261019-venv/bin/python scripts/unit_test_guard.py scripts/test_batch41_units.py
/private/tmp/pms-conflict-20261019-venv/bin/python scripts/run_tests.py
```
预期24项专项OK,完整入口ALL SUITES PASS。测试中故意注入失败的日志属于回归场景。
```bash
# 155模拟机 · ~/project/tradingSystem,只读
cd ~/project/tradingSystem
docker compose exec -T -e PYTHONPATH=/app pms-web python - <<'CHECK'
from app.repo import pms_repo
from app.services.execution_conflicts import instruction_progress
for r in instruction_progress(pms_repo.list_instructions(ts_code='002518.SZ', limit=10)):
print(r['instruction_id'], r['status'], r['qty'], r['exec_qty'], r.get('execution_label'))
CHECK
```
14:28判收时旧建仓CANCELLED、600/400、已撤销;清仓DISPATCHED、400/200、等待可卖。
后续真实成交会推进清仓进度,不能恢复判收时点的历史数量。
人工T+1与故障竞态尚无本轮自然生产事件,禁止为验收造单。
本地Chrome替身渲染和生产接口读数已核验;未直接操作用户登录的生产浏览器。

View File

@ -478,3 +478,70 @@ PMS 本轮没有重建,188 真实 PMS 未操作。
只读命令 `python -m build_readiness` 现在预期退出 0,显示 2026-10-16 日期已对齐。
本轮故障恢复判收完成。既有五分钟业务任务继续运行。
不另加五日模拟观察,已暂停的 Codex 心跳保持暂停。
## 2026-10-19 14:30 买卖方向冲突修复与部署判收
用户要求立即修复科士达买入与清仓并存,并检查其他流程。
只操作155模拟PMS。178和桥本轮仅同步文档,188未操作。
修复前科士达旧建仓600股、累计成交400股,仍有200股未执行。
09:51择时系统95%置信度卖出触发清仓400股,09:52卖出200股。
剩余200股为当日买入,可卖为零。三个真实子委托均已成交。
页面把父指令DISPATCHED都写为已挂单,导致误解。
14:10检查全量活跃指令,只有科士达存在同票买卖重叠。
修复覆盖命令、信号、技术面离场、人工采纳和跟踪止盈的清仓入口。
完整清仓统一停止旧买入指令、买入提议和未解锁批次。
普通减仓期间暂停买入发出,不永久取消建仓或策略。
T0_ROUND自身配对不误判为清仓,外部完整清仓仍终止其原买入安排。
停止依据追加到动作账本,避免并发旧进度覆盖后恢复买入。
下发进度回写不得把终态指令重新改回DISPATCHED。
出口先处理撤单,认领排除待撤委托,发送前重查来源及方向。
旧卖出理由的audit_reason和component_scores.reason现可透传。
历史已落账的泛化理由不伪造回填。
人工清仓补查:T+1可卖量为零时仍保留清仓任务。
数量不超过用户确认量与当前持仓量,实际出手仍受可卖量约束。
当前已归零时不再生成卖单,但会停止旧买入。
普通减仓数量口径保持。
正式规格见同仓《开发规格_买卖方向冲突修复_2026-10-19.md》。
最终功能提交28053f3,包含fad1bb1。
24项专项与45批本地配置隔离禁网测试通过。
最终候选镜像45批在--network none下通过,包含三页面守卫。
原版本的五项行为反例在离线副本中全部失败,修复版本通过。
本地Chrome使用接口替身渲染,等待可卖、等待下一批显示正常,页面错误零。
生产读数对应清仓等待可卖、旧买入已撤销。
登录后的生产浏览器会话未在本轮直接操作,不将替身渲染充作该项验收。
首版于14:19:39统一重建四容器,正常14:20调度完成旧买入收尾。
最终补修于14:27:22再次统一重建web、worker、beat、ws。
最终镜像sha256:06493afa19ec4cd61d07b7834472a11c550d0ec0a341e251dcdb64626a4139c0。
回退镜像pms:rollback-before-conflict-20261019保留本轮前版本。
另有pms:rollback-before-manual-exit-20261019保留第一次修复版本。
155的/app仍绑定挂载,回退要先反向提交并git pull,再重建四容器。
回退不得恢复已经撤销的买入指令或删除真实成交与停止记录。
服务器本地scripts/deploy.sh哈希前后一致,未覆盖其他本地文件。
14:20:05,正常intraday_exec将INS_20261016_002518SZ_OPEN_001置CANCELLED。
目标600、实成400保持。停止依据6912,撤销记录6913,均记system。
INS_20261019_002518SZ_EXIT_95100仍400/200,显示等待可卖。
14:21及14:28正常调度保持,无重复停止记录、无新委托。
14:28:20全量比较:15项核验参数相同,21条持仓账务字段相同,283条批次账相同。
93条父指令执行数量相同,状态仅科士达旧买入由DISPATCHED变CANCELLED。
七条历史暂停指令未恢复。没有改写费用、历史峰值、旧批次或净值。
QMT ONLINE,resync_flag=0,last_error为空,水位1299667。
健康status=ok、db_ok=true、日历未降级;正常回放对账diffs=0、severity=OK。
93行指令列表与实际进展只读取数耗时0.344秒。
写前备份155 ~/pms_logs/conflict-predeploy-20261019.json,SHA256
fb5edeccc4712de12e8e702d196f7ebfdee573055ae494085a62c42fec7235f8。
最终只读快照conflict-final-20261019.json,SHA256
881a4f3a39f5f2b9f4ec5088722bc89a552ce65d9f4b820800e598bfcdc1d8dd。
原始证据kstar-conflict-20261019-1402.json、kstar-signal-20261019.json仍保留。
构建与测试日志conflict-final-build-20261019.log、conflict-final-tests-20261019.log。
桥台账076保存决定。用户原有未提交文档与探针保留。
人工T+1确认、撤单失败、迟到成交与并发竞态已离线覆盖。
本轮没有自然事件逐项生产复现,不宣称所有边界均真机判收。
未采纳提议或制造交易。交易时段、择时阈值、仓位档位、排序与自动修订安排保持。
不增加模拟观察期,也不重启已暂停的Codex心跳。