22ec732607
- 交易记录 tab 归属候选只回当前持仓 → 清仓后当日委托失去下拉锚点无法补关联 (2026-09-07 大连热电实际发生: 盘中归属后被清为未关联,下拉已无做T候选) - SqliteStore.getAttributionCandidates: 候选 = 该 code 当前持仓 + 近 7 天清仓的持仓 (closed 标记 + closedAt,排序 当前持仓在前 → 清仓行 closed_at DESC) - AttributionSelect: 下拉 value 改 holdingId 键控(同策略多轮持仓不撞值)、 清仓选项「(已清仓 MM-DD)」后缀、已归属但候选缺失显示「当前归属」占位 - 回归: test-r017-candidates 12/12 + 存量回归全绿
2.3 KiB
2.3 KiB
需求:R-017 委托归属候选纳入近期清仓持仓
登记:2026-09-07 | 来源:老师指令(2026-09-07「处理一下,今天大连热电的交易记录,我没办法关联到手动做T持仓的大连热电上」)| 状态:已定稿 归属:迭代 15 | 计划:PLAN-016 | 实现状态:已实现(2026-09-07,待老师人工验收) 前置:R-016「关联观察」所列问题的正式立项(清仓后当日委托无法通过下拉关联到对应 holding,2026-09-07 大连热电实际发生——盘中手动归属后又被清为未关联,下拉已无手动做T候选)。
需求描述
交易记录 tab 的归属候选(orders/attribution-candidates)只回当前持仓——清仓后(幽灵清仓最快约 30s 转历史)当日委托在下拉中失去对应策略/持仓锚点,无法补关联。本轮:候选 = 该 code 的当前持仓 + 近 7 天清仓的持仓,清仓行带标记供 UI 区分展示。
讨论记录(2026-09-07)
| # | 决策点 | 结论 |
|---|---|---|
| 1 | 立项与方向 | 老师指令确认(对 R-016 关联观察修复方案的采纳) |
| 2 | 候选窗口 | 近 7 天清仓(与 R-016 默认范围一致,AI 定;覆盖「当日做T当日盘后补关联」场景足够) |
| 3 | 锚点键 | 下拉 value 改用 holdingId(同策略可有多轮持仓行,strategyId 会撞值;holding_id 本就是归属锚点,R-009 定稿语义) |
| 4 | 标记展示 | 清仓候选在选项文本加「(已清仓 MM-DD)」后缀;已归属但候选列表缺失的委托显示「当前归属」占位选项(避免 select 空白) |
| 5 | 排序 | 当前持仓在前,清仓行按 closed_at DESC 追加 |
| 6 | 归属写入 | 不变:orders/set-attribution 无候选限制(本次数据修复即经此通道完成) |
边界
做:getAttributionCandidates 纳入近 7 天清仓行(附 closed/closedAt);AttributionSelect 改 holdingId 键控 + 已清仓后缀 + 当前归属占位;回归脚本。
不做:候选窗口可配置;自动归属(Q3 手动原则不变);交易记录 tab 之外的候选消费方调整;历史数据修复工具(本次一次性修复经 set-attribution 完成,不固化成功能)。
验收
见 docs/04-迭代记录/15-归属候选纳入清仓持仓/验收标准.md。