docs(pipeline): 控制台UX重设计v0.5工作稿+优秀实践调研报告落档
骨架拍板(混合型+地铁图融总览)+透明车间(自动化执行可观看可回放)+ 车间与总览并页决议+参数三层提案+开放问题清单十条; 调研=七工具21模式(Top5收敛:运行台账/生效参数回显/只看差异/数字落库即曲线/卡点内嵌主线)。 工作稿定稿后收编进pipeline总设计spec,不破单档原则。
This commit is contained in:
@@ -0,0 +1,194 @@
|
||||
# 流水线控制台 UX 重设计调研:七个工具的可复用 UX 模式采集
|
||||
|
||||
- 日期:2026-10-08
|
||||
- 背景:A 股量化投研→交易流水线 Web 控制台(Vue3 + FastAPI,单用户,已有九个流水线页面)重设计前的优秀实践采集
|
||||
- 对着的四个缺口(编号沿用项目口径):
|
||||
- **② 权重过程透明**:等权→ICIR 考场晋级,权重怎么变的看不见
|
||||
- **③ 策略出生流**:模板配参/手写登记进 yaml,完全没有页面
|
||||
- **④ 回测考窗可配**:2022-2024 统一写死,没有人类配置入口
|
||||
- **⑤ 事件时间线/流程可视化**:九页像孤岛,对象流转连续性看不见(对应痛点①)
|
||||
- 方法:官方文档 + 实测博客/社区描述,只提炼「可复用 UX 模式」。来源清单见文末。
|
||||
|
||||
---
|
||||
|
||||
## 1. Dagster(asset 详情页 / materialization 历史 / 血缘图)
|
||||
|
||||
### D1. 对象有档案页,第一屏就是「逐次产出」表格
|
||||
- **解决**:自动过程跑没跑、跑了什么,必须留逐次可查的「案底」——产出本身就是一行行事件。
|
||||
- **交互**:每个 asset 有固定结构的详情页,四个页签 Overview / Lineage / Events / Checks;Events 页签 = materialization 历史表,每行一次产出(时间戳、触发方式、自定义元数据、关联 run 链接);博客实测亮点:Events 里能看「该模型重建那一刻,各上游数据源的新鲜度快照」(例:上游 9:01 刷新 vs 增量模型 8:03 跑的,谁吃了旧数据一眼可见)。
|
||||
- **映射**:②⑤——权重更新/晋级计算/月度批评每次执行都应落成一行事件;⑤时间线的最小实现就是这张表。
|
||||
- **抄作业**:每个因子/策略建「档案页」,第一屏 = 最近 N 次产出事件表(晋级计算、月度批评、权重刷新各是一行),行内可展开看输入快照与产出物。
|
||||
|
||||
### D2. 数字型元数据自动成时间序列
|
||||
- **解决**:过程参数的漂移不该让人肉 diff,落库的数字直接变曲线。
|
||||
- **交互**:Dagster 对数值型 runtime 元数据自动按 materialization 顺序画成时间序列图(官方文档明说「Numerical metadata is treated as a time series in the Dagster UI」);特殊键(row_count、column_schema 等)还有专属渲染。
|
||||
- **映射**:②——这是权重进化的标准答案:不用专门开发「权重可视化页」,权重作为事件元数据落库即成图。
|
||||
- **抄作业**:每次晋级计算把各因子权重作为数值元数据落事件库,档案页自动生成「权重进化折线」,等权→ICIR 的跃迁在曲线上直接可见。
|
||||
|
||||
### D3. 血缘图 = 导航器 + 选择器
|
||||
- **解决**:流水线环节割裂——图不只是图,是可点、可钻取、可发起动作的全局地图。
|
||||
- **交互**:资产详情 Lineage 页签左到右流动(1.6 版重设计);点节点看上下游,右键显隐邻居资产;社区实测:可在图上「选择性发起某模型+其上下游的 ad-hoc 重跑」,不必重跑整个项目;Global Asset Lineage 跨项目总览(大图有性能坑,200+ 节点曾挂)。
|
||||
- **映射**:⑤(也直接回应痛点①九页孤岛)。
|
||||
- **抄作业**:九个页面共享一张「因子→合成层→策略→实盘」DAG 图作全局导航,点节点跳对应域页;图上圈选可发起重跑。规模控制在几十节点内避开 Dagster 踩过的性能坑。
|
||||
|
||||
### D4. 分区矩阵 + 只补未完成
|
||||
- **解决**:跑批完整性可见、缺口可补。
|
||||
- **交互**:分区视图显示哪些日期分区已回填/失败/未跑,可只跑未完成或失败的分区。
|
||||
- **映射**:④⑤——回测考窗天然是「对象×月份」分区矩阵。
|
||||
- **抄作业**:考窗配置后落成按月分区矩阵:绿=已回测、红=失败、灰=未跑,点格子进该窗结果,缺格一键补跑——「考窗可配」配完还得看得见配到哪了。
|
||||
|
||||
---
|
||||
|
||||
## 2. Apache Airflow(Grid 视图 / task instance 详情)
|
||||
|
||||
### A1. 时间 × 任务矩阵(Grid)
|
||||
- **解决**:一次扫视看清 N 次执行的成败分布,不用逐个点开。
|
||||
- **交互**:Grid 视图行 = 任务、列 = DAG run,一格一状态色;hover 出 tooltip,点格钻取日志;顶部下拉直接选「最近 25 个 run」区间;每 DAG 在列表页还带近期 run 的微型条形图;run 视图侧栏显示跨近期 run 的任务时长。
|
||||
- **映射**:⑤——事件时间线的「矩阵形态」变体,比纯列表更适合周期性流水线。
|
||||
- **抄作业**:控制台首页做「对象 × 月份」矩阵(行=因子/策略,列=月份),格子色 = 晋级/落选/未评/失败,点格进档案页对应事件。
|
||||
|
||||
### A2. 「渲染后参数」页签(Rendered Templates)
|
||||
- **解决**:「参数到底生效成什么」看不见——代码里的模板变量和实际代入值是两回事。
|
||||
- **交互**:task instance 详情固定页签展示模板字段代入实参后的最终值;Details 页签再给 try 次数、时长、executor、配置等元数据(社区曾有 2.6→2.9 重试次数可见性回退的投诉,说明这块用户真的在看)。
|
||||
- **映射**:④——可配参数的另一半:配了之后必须能在每次 run 里回显「本次生效值」。
|
||||
- **抄作业**:每次回测/晋级 run 详情页固定一块只读「本次生效参数」表(考窗起止、各项阈值、钉住的合成层版本),与 yaml/默认值对照。
|
||||
|
||||
### A3. run 页 = 元数据头 + 动作钮 + 代码快照
|
||||
- **解决**:「这次跑的是哪版代码、什么配置」可追溯,版本漂移可定位。
|
||||
- **交互**:run 页顶部横条给逻辑日期/类型/时长/DAG 版本;操作钮内联在头部(clear、mark 成功/失败、加备注);Code 页签 = 解析时刻的源码快照;Graph 视图把本次 run 的任务状态叠加在依赖图上,节点带时长指示;每任务行带 mini 甘特。
|
||||
- **映射**:②⑤;③——「出生时用的哪版模板+哪份参数」同理需要快照。
|
||||
- **抄作业**:每个 run 落 config + 关键代码/spec commit 快照;run 头部内联动作钮(重跑/标记/备注),备注随事件留痕。
|
||||
|
||||
---
|
||||
|
||||
## 3. Weights & Biases + MLflow(run 对照 / config diff)
|
||||
|
||||
### W1. 勾选即对比 + 「只看差异」
|
||||
- **解决**:两次实验差在哪,不该让人肉眼逐列对。
|
||||
- **交互**:W&B runs 表勾选多个 run → Run Comparer 面板把 config 与 summary 指标并列成表,差异高亮,且有「only show differences」开关把表收窄到只有变化的字段;大 config 只改了学习率时,一眼看到那一个格子。
|
||||
- **映射**:②④——两个月的权重表对比、两次回测配置对比都是这个形态。
|
||||
- **抄作业**:晋级评审页支持勾选两个月 → 只列变化的因子权重、晋级/落选翻转与阈值判断;回测历史同理只列改过的参数。
|
||||
|
||||
### W2. 钉住基线(pin baseline)
|
||||
- **解决**:没有对照组的比较是飘的——所有 delta 都该对同一锚点。
|
||||
- **交互**:W&B 支持把某 run 设为 baseline(可跨项目),后续 run 的对照默认对它求差;Kedro Viz 同款(见 K1)。
|
||||
- **映射**:②④——项目已有「合成层版本钉住」概念,缺的是 UI 层的基线锚。
|
||||
- **抄作业**:月度批评页钉住「基线月」,所有指标默认显示 vs 基线的 Δ 而非裸值。
|
||||
|
||||
### W3. 参数即表格列 + 平行坐标
|
||||
- **解决**:参数与结果必须同框,比较才成立。
|
||||
- **交互**:MLflow 实验页左侧实验树、中间 runs 表,参数和指标是默认列,可排序;勾选多 run 后切 Table/Chart 双视图,Chart 里有平行坐标图——每 run 一条线穿过参数轴与指标轴,哪些参数档位通向好分数一眼看出。
|
||||
- **映射**:④——回测历史表的参数列设计直接照此。
|
||||
- **抄作业**:回测历史表把考窗起止、成本假设、合成层版本做成列;平行坐标对单用户低频场景可后置,表格+diff 优先。
|
||||
|
||||
---
|
||||
|
||||
## 4. Kedro Viz(pipeline 图 + 参数面板)
|
||||
|
||||
### K1. 图 + 侧栏元数据抽屉
|
||||
- **解决**:流程图上每个节点都该有一个「档案抽屉」,看细节不必跳页。
|
||||
- **交互**:flowchart 主视图点任意节点 → 右侧 metadata side panel 展示该节点参数、数据集细节、plot;点 MetricsDataset 节点,侧栏直接显示「该指标值随 run 变化」的曲线——把 D2 的时序理念嵌进了图。
|
||||
- **映射**:⑤(也②)——九页孤岛的解法之一:总图上先给摘要,再决定跳不跳页。
|
||||
- **抄作业**:流水线总图点节点,右侧开抽屉显示该环节最近一次 run 摘要(状态/时长/关键产出+小图),跳页变成可选项。
|
||||
|
||||
### K2. Compare 开关 + 钉住
|
||||
- **解决**:历史对照要一种轻量模式,不用先建「对比页」。
|
||||
- **交互**:实验表拨一个 Compare runs 开关 → 勾选的 run 在所有图表里高亮、可 pin 住;版本化 plot 点开时把选中 run 的图并排展开。
|
||||
- **映射**:②④。
|
||||
- **抄作业**:驾驶舱表格统一支持「对比模式」开关:勾两行,下方所有图表自动切到高亮对比,不另设对比页。
|
||||
|
||||
---
|
||||
|
||||
## 5. GitHub Actions / GitLab CI(人工审批卡点 UX)
|
||||
|
||||
### G1. 审批即黄条内嵌卡点(正例)
|
||||
- **解决**:「流程在此等人」必须出现在流程主线视觉上——何时被挡、为什么、谁批的,全留在 run 页里。
|
||||
- **交互**:GitHub Actions 的 job 走到受保护 environment → 整格变黄「waiting for review」+ 时钟图标;reviewer 收到通知,run 页内出现黄条与「Review deployments」按钮 → 弹窗里勾选要批的环境(可多个)、留评论、「Approve and deploy」或「Reject」;批准/拒绝记录连同评论留在 run 里。
|
||||
- **映射**:③⑤——策略出生后晋级/上实盘的人工卡点、以及「保留人工卡点、其余自动化」的重设计原则。
|
||||
- **抄作业**:晋级评审、上实盘确认统一成黄条内嵌组件:卡在哪、条件清单、谁批、批注、点了哪个键,全部进事件流。
|
||||
|
||||
### G2. 环境页 = 部署台账
|
||||
- **解决**:「现在生产上跑的是哪个版本」要有一个常驻账本。
|
||||
- **交互**:仓库首页侧栏 Deployments 入口,按 environment 列当前活跃部署与历史时间线,每条关联触发 commit/PR、部署 URL、日志入口(kebab 菜单 → View logs);admin 可钉住常用 environment。
|
||||
- **映射**:⑤;③——出生后的策略实例即「部署」。
|
||||
- **抄作业**:「实盘」页做成环境台账:活跃策略实例=活跃部署,点开看出生 commit(对应③的出生卡)+ 运行日志 + 从哪个版本晋升。
|
||||
|
||||
### G3. 审批藏在流程外的反例(GitLab)
|
||||
- **解决**(反面教材):卡点不在主线视图里 = 等于没有。
|
||||
- **交互**:GitLab 受保护环境的审批不在 pipeline 视图出现,要去 Operate > Environments 页找;社区实录:多次部署的待审批堆叠在一起、approver 一不小心批了旧的那条;官方 issue 追踪「deployment pending approval」连 webhook 通知都没有——流水线看起来卡死,其实是在等人。
|
||||
- **映射**:③⑤。
|
||||
- **抄作业**:不适用(反模式)。铁律:任何人工卡点必须在流水线主线页面可见可操作,禁止「去另一个页面找审批」。
|
||||
|
||||
---
|
||||
|
||||
## 6. 量化平台回测配置范式(QuantConnect / 聚宽 / 果仁 / BigQuant)
|
||||
|
||||
### Q1. 参数外置于代码,run 时注入
|
||||
- **解决**:改参数 ≠ 改代码——参数是项目级 key-value,存在代码外。
|
||||
- **交互**:QuantConnect 参数是项目级键值对,跑回测/实盘/优化时注入算法(`GetParameter("name", 默认值)` 支持类型默认值、`[Parameter]` 属性可声明字段);参数值 per-run 固化,运行中不可变;回测报告还能用 `{{$PARAMETERS}}` 变量把参数打进报告。
|
||||
- **映射**:④——考窗/阈值/成本假设的全部答案:提升为带默认值的参数表单,run 时注入、run 详情回显(呼应 A2)。
|
||||
- **抄作业**:考窗起止、费用、各阈值全部做成「项目参数」表单(带类型+默认值),每次 run 固化快照并回显在结果页与报告里。
|
||||
|
||||
### Q2. 样本外护栏,组织级强制
|
||||
- **解决**:回测窗护栏不能靠自觉——平台层直接拒绝越界。
|
||||
- **交互**:QuantConnect 组织首页设「Backtesting Out of Sample Period」,回测必须截止于当前日期前 N 个月,越界直接不让跑;机构统一保住 holdout 的完整性。
|
||||
- **映射**:④——「考窗可配」必须配「护栏」,否则可配=可作弊。
|
||||
- **抄作业**:考窗表单旁挂组织级「样本外保护区」(如最近 6 个月禁入考窗),前端标灰 + 后端校验双保险。
|
||||
|
||||
### Q3. 表单即策略(果仁范式)
|
||||
- **解决**:策略出生不该要求写代码或手改配置文件。
|
||||
- **交互**:果仁网把策略拆成纯表单模块:选股周期、持股数量、调仓频率、大盘择时(EMA 金叉死叉 / MACD 牛熊切换等条件模块)——零代码组装出一个可回测策略。
|
||||
- **映射**:③——模板配参+登记 yaml 的页面化直接参考。
|
||||
- **抄作业**:策略出生流 = 结构化表单:模板下拉(继承默认参数)→ 参数字段(校验)→ 出生预览(将写入 registry 的 diff)→ 提交后自动生成条目+落「出生事件」,手改 yaml 退役。
|
||||
|
||||
### Q4. 发射前的极简四件套(聚宽容)
|
||||
- **解决**:高频操作(发起回测)的表单要小到没有负担。
|
||||
- **交互**:聚宽编辑器旁常驻:回测起止日期、初始资金、频率(day/minute/tick)、基准;一键「编译运行」;跑完出收益曲线 vs 基准、每日持仓、交易记录、风险指标(最大回撤/夏普)。BigQuant 同级:结果页 = 收益概况/交易详情/每日持仓/输出日志四块。
|
||||
- **映射**:④。
|
||||
- **抄作业**:回测发起卡片 = 四个必填(起/止/资金/频率)+「高级」折叠区(费率/滑点/阈值),默认值全部来自 Q1 的项目参数。
|
||||
|
||||
---
|
||||
|
||||
## 7. Prefect / Argo Workflows(run 详情页)
|
||||
|
||||
### P1. Artifacts 挂在 run 页上
|
||||
- **解决**:跑完的「证据」和跑的「过程」不能分家。
|
||||
- **交互**:Prefect flow run 页页签 = Artifacts / Logs / Task Runs,另加 Run Details 面板(work queue、deployment、parameters 等元数据常驻);artifact 需带 key 才上页,且已与 run graph 集成——图上能看到产物(社区仍有「打印到日志还是产出 artifact」的可见性讨论,说明用户依赖这个区分)。
|
||||
- **映射**:②⑤。
|
||||
- **抄作业**:晋级计算 run 页直接挂产出物:本月权重表、晋级名单、落选原因表——「真的做了、做对了」以产物为准,不以日志为准。
|
||||
|
||||
### P2. 图上节点点击 = 输入→日志→输出三段抽屉
|
||||
- **解决**:图、日志、参数三者割裂是流程可视化的常见死法。
|
||||
- **交互**:Argo workflow 详情页以 steps/DAG 图呈现,节点按状态着色;点节点弹出面板,分页给 Container(日志)/ Inputs/Outputs(本次参数与工件)/ Manifest(定义),失败节点面板内直接 Retry 单节点。
|
||||
- **映射**:⑤。
|
||||
- **抄作业**:流程总图节点点击出「输入参数 → 执行日志 → 输出产物」三段式抽屉,失败可从节点级重跑(呼应 D3 圈选重跑)。
|
||||
|
||||
---
|
||||
|
||||
## 8. 跨工具收敛规律(≥3 个工具不约而同 = 几乎必抄)
|
||||
|
||||
| # | 收敛模式 | 不约而同采用者 | 对缺口 |
|
||||
|---|---------|---------------|--------|
|
||||
| 1 | **运行台账(run/event ledger)**:每次执行固化为可列表、可点开的实体,带状态/时长/发起者/参数快照 | Dagster Events、Airflow Grid 列、MLflow/W&B runs 表、Kedro 实验表、Prefect run 页、Argo workflow 列表(6 家) | ②⑤ |
|
||||
| 2 | **生效参数回显(effective config echo)**:每次 run 把最终生效参数写死并展示,代码/模板默认值与实参分开呈现 | Airflow Rendered Templates、MLflow/W&B config 列、Prefect Run Details、Argo Inputs/Outputs、QuantConnect 注入+`{{$PARAMETERS}}`(5 家) | ④ |
|
||||
| 3 | **勾选→并列→只看差异(compare + diff-only)**:多选实体后并列展示,一键收窄到变化字段/变化行 | W&B Run Comparer(only differences)、MLflow compare table/chart、Kedro Compare 开关+高亮、Dagster 上游新鲜度快照对比(4 家) | ②④ |
|
||||
| 4 | **数字落库即成曲线(numeric metadata → time series)**:过程数值作为元数据落库后自动按 run 顺序成图 | Dagster 数值元数据时序、Kedro MetricsDataset 侧栏曲线、W&B metrics chart、MLflow chart view(4 家) | ② |
|
||||
| 5 | **人工卡点内嵌主线(inline approval gate)**:审批出现在流程主视图的黄条/按钮上,动作+人+批注留痕在事件流 | GitHub 黄条+Review deployments(正例)、Airflow run 头部动作钮、Argo 节点面板 Retry;GitLab 藏在环境页(反例佐证)(3 正 1 反) | ③⑤ |
|
||||
| 6 | **流程图即导航层(graph as navigation)**:图带节点状态着色,点节点出详情/日志/参数,甚至可从图上发起动作 | Dagster lineage+子图重跑、Kedro flowchart+侧栏、Airflow Graph 叠加 run 状态、Argo 图+节点面板、Prefect run graph(5 家) | ⑤(①痛点) |
|
||||
| 7 | **对象×时间矩阵扫视(matrix scan)**:行=对象、列=时间,颜色即状态,一次扫视健康度 | Airflow Grid、Dagster partitions、(变体)MLflow/Kedro 平行坐标(3 家) | ④⑤ |
|
||||
|
||||
**单用户裁剪原则**:以上七条里,多用户协作相关的(通知、权限、跨项目)可全部砍掉;台账、参数回显、差异对比、曲线、内嵌卡点是单用户「自证清白」的刚需——一个人用,更没有别人替你记得做过什么。
|
||||
|
||||
**最小落地顺序建议**(供 spec 讨论排序用):收敛模式 1+2 是地基(事件库 + 参数快照),先于一切页面;3+4 直接解 ②;5 解 ③ 的人工卡点;6+7 解 ⑤ 的九页孤岛;④ = Q1+Q2+A2 三件套(参数表单+护栏+回显)。
|
||||
|
||||
---
|
||||
|
||||
## 参考来源
|
||||
|
||||
- Dagster:[Asset observations](https://docs.dagster.io/guides/build/assets/metadata-and-tags/asset-observations)、[Metadata and tags](https://docs.dagster.io/guides/build/assets/metadata-and-tags)、[Dagster+dbt 实测(Events 页签上游新鲜度/血缘重跑/分区回填)](https://snowpack-data.com/blog/pairing-dbt-and-dagster)、[1.6 血缘重设计](https://dagster.io)
|
||||
- Airflow:[UI Overview(官方,Grid/Rendered Templates/Code 快照)](https://airflow.apache.org/docs/apache-airflow/stable/ui.html)、[重试可见性回退 issue #40673](https://github.com/apache/airflow/issues/40673)
|
||||
- W&B/MLflow:[Run Comparer/compare runs(W&B 文档镜像)](https://docs.coreweave.com/guides/track/runs/compare_runs)、[wandb/server releases(跨项目基线)](https://github.com/wandb/server)、[MLflow 平行坐标(Databricks)](https://docs.databricks.com)、[MLflow Chart view 实测](https://www.transcendent-ai.com/post/keeping-track-of-experiments-with-mlflow)
|
||||
- Kedro Viz:[Experiment tracking(Compare/pin/侧栏曲线)](https://docs.kedro.org/projects/kedro-viz/en/v9.1.0/experiment_tracking.html)、[官方文档首页(metadata side panel)](https://docs.kedro.org)
|
||||
- GitHub/GitLab:[Reviewing deployments(官方流程)](https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment)、[Viewing deployment history(环境台账)](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-deployments/viewing-deployment-history)、[GitLab deployment approvals](https://docs.gitlab.com/ci/environments/deployment_approvals.html)、[GitLab 审批堆叠事故帖](https://forum.gitlab.com)
|
||||
- 量化平台:[QuantConnect Parameters](https://www.quantconnect.com/docs/v2/writing-algorithms/optimization/parameters)、[QuantConnect Backtesting(样本外强制/结果表)](https://www.quantconnect.com/docs/v2/cloud-platform/backtesting/getting-started)、[聚宽 API 文档(回测四件套)](https://cdn.joinquant.com/help/img/JoinQuantAPI.pdf)、[果仁帮助(大盘择时模块)](https://guorn.com)、[BigQuant 教程(结果四块)](https://zhuanlan.zhihu.com)
|
||||
- Prefect/Argo:[prefect-ui-library CHANGELOG(run graph+artifacts)](https://github.com/PrefectHQ/prefect-ui-library/blob/main/CHANGELOG.md)、[Prefect artifacts 文档](https://docs.prefect.io)、[Argo UI 节点面板(CHANGELOG 实录)](https://github.com/argoproj/argo-workflows/blob/main/CHANGELOG-2-x-x.md)
|
||||
@@ -0,0 +1,87 @@
|
||||
# 流水线控制台 UX 重设计 · v0.5 工作稿
|
||||
|
||||
> **状态:0.5 草案**。骨架与理念已由用户拍板(2026-10-08),细节逐节讨论中——本稿是讨论载体。
|
||||
> **归宿**:定稿后收编进 `2026-09-22-research-to-trading-pipeline-design.md`(流水线唯一活文档),本稿届时标注「已收编」。
|
||||
> **来历**:用户端到端走查四痛点(环节割裂 / 自动过程看不见 / 参数写死 / 出生无入口)→ spec 审计定案 4 项 UI 级缺口(②权重过程透明 / ③策略出生流 / ④回测考窗可配 / ⑤事件时间线)→ 本重设计。
|
||||
|
||||
## 1. 设计宪法(用户定调,不可协商)
|
||||
|
||||
1. **按人类用户体验标准**重设计,参考业界优秀实践(调研=`docs/superpowers/reports/2026-10-08-ux-redesign-survey.md`,七工具 21 模式)。
|
||||
2. **人工卡点保留不动**:五问 / 研判 / 毕业口令 / 出生确认——宪法「关键 promotion 永不自动化」。重设计 ≠ 全自动,是**人类界面变厚**。
|
||||
3. 其余环节尽量自动化,但**参数可配**(粒度三层提案见 §6,逐项待裁定)。
|
||||
4. **过程透明 = 核心诉求**:「看不到就无法判断是不是真的做了、做得对不对」。**透明厨房/透明车间理念**:自动化过程本身在 UI 上可观看、可回放、可回溯。
|
||||
5. **透明 ≠ 说明文字**(v3 弯路教训):给用户看的不是描述后厨的菜单,而是明厨亮灶——过程用 UI 串起来,边和状态是「跑出来的」,不是写出来的。
|
||||
|
||||
## 2. 已拍板决策
|
||||
|
||||
| # | 决策 | 日期 |
|
||||
|---|------|------|
|
||||
| D1 | 骨架=**混合型**:流程站做导航 + 对象详情页做落点;方案三独立形态废弃,地铁图融入总览 | 10-08 |
|
||||
| D2 | **透明车间**:每个自动任务=可观看的执行(任务状态墙 + 分步执行详情 + 回放) | 10-08 |
|
||||
| D3 | **「车间·运行」与「总览·待办」合并为一页**(布局细节=开放问题 #1) | 10-08 |
|
||||
| D4 | **边一等公民**:每条迁移边四问全答——从哪来 / 什么条件 / 谁触发(自动=青 / 人工=琥珀,全站统一)/ 到哪去;以过程与状态呈现,不以文本说明书呈现 | 10-08 |
|
||||
| D5 | **对象详情页=过程真相载体**:一生时间线 + 权重演进 + 参数 + 证据链 + 血缘;自动事件带「▶ 看执行」回跳当时那次 run | 10-08 |
|
||||
| D6 | **出生页=表单即策略**(模板型配参 + 非标登记两入口);提交=登记待办(人工卡点)→ 自动排考 | 10-08(形态定,细节待议) |
|
||||
|
||||
## 3. 术语(本稿内精确使用)
|
||||
|
||||
- **对象**:因子 / 合成因子 / 策略 三类,均有一等详情页(同构:时间线 + tabs)
|
||||
- **站**:流程节点(假设池→工厂→评审→合成→出生→梯子→实盘)
|
||||
- **边**:对象在站间的迁移(含条件+触发方式)
|
||||
- **run**:一次自动任务的执行实体(有状态/分步/时长/参数快照/产物)——本设计新增的一等概念
|
||||
|
||||
## 4. 信息架构(D3 合并后)
|
||||
|
||||
侧栏(流水线组):
|
||||
**总览(地铁图 + 待办 + 车间任务墙)** / 假设池 / 因子工厂 / 晋级评审 / 合成层 / 策略出生 / 孵化梯 / 实盘 +(现有页保留待议:归因·研判 / 闸门阈值 / 设置)
|
||||
|
||||
合并后的总览页四块(排序待议):① 流水线全景地铁图(边条件标注+卡点脉冲)② 等你决策(卡点待办)③ **车间任务墙**(每台自动机器:灯[运行中/绿/黄/红]+上次用时+调度+一句产出;点进执行详情)④ 健康水位。
|
||||
|
||||
高保真参考稿:`.superpowers/brainstorm/5810-1791437951/content/ia-hifi-v4.html`(v1 双案对比→v2 方案一+地铁图→v3 边条文本弯路→v4 透明车间;复活方式=`python3 -m http.server 8823 --bind 127.0.0.1 --directory <该目录>`)。
|
||||
|
||||
## 5. 透明车间(本设计灵魂)
|
||||
|
||||
三层透明:
|
||||
|
||||
1. **任务墙**:全部后台任务在岗可见。初版清单:因子月度批评估 / 月度批评双机对拍 / 合成层考场 / 回测跑批(考卷)/ 影子跑 / 衰减检测 / 待办聚合 + **上游供数三 lane**(daily / backfill / funnel——车间只看供数健康,详情归 data-monitor 域)。
|
||||
2. **执行详情(run)**:分步过程——每步输入/输出/判定规则可展开;末尾列本次产物清单;**「▶ 回放」**分步重演当时发生了什么。
|
||||
3. **回跳链(数据溯源)**:对象时间线的自动事件「▶ 看执行」→ run;工厂页 t 值标注出处批 run——数字是谁算的、哪天算的,点得回去。
|
||||
|
||||
实现根基(调研最收敛结论):**运行台账**(6/7 工具同构)——需后端把每次执行落库为 run 记录。现有 `registry_events.jsonl` 是雏形,缺分步/时长/参数快照/产物指针(开放问题 #4 定模型)。
|
||||
|
||||
**车间只看不管**:任务仍由调度驱动,人看得到每一步,但放行权在卡点。
|
||||
|
||||
## 6. 参数可配三层(提案,逐项待裁定)
|
||||
|
||||
| 层 | 例 | 页面形态 |
|
||||
|----|----|---------|
|
||||
| 全局 | 评审门 t≥2 / 统一考窗 2022-2024 | 闸门阈值页(已存在,扩容);考窗保可比性 → 页面**只读 🔒** 显示 |
|
||||
| 族默认 | 重评频率=年 / 族压缩 0.7 | 合成层族详情 |
|
||||
| 对象 | 策略出生参数 top_n/调仓日/缓冲带;权重方法=档案制(非手调数字) | 出生表单 / 对象详情参数 tab |
|
||||
|
||||
待裁定分叉:哪些参数允许对象级覆盖?非标考窗=显式豁免+标注「与统一考卷不可比」是否成立?
|
||||
|
||||
## 7. 开放问题清单(compact 后逐节过)
|
||||
|
||||
1. 合并页布局:地铁图/待办/任务墙/健康四块的密度与排序(一屏 vs 分区)
|
||||
2. 执行详情分步粒度:多少步合适、日志/产物挂多深
|
||||
3. 回放形态:步骤快照重演(v4 演示款)/ 日志时间轴 / 真回放(重跑)?
|
||||
4. **run 落库模型**:新表 vs 扩 registry_events;谁写(各 job 自记 vs 统一 wrapper);跨域任务(数据 lane)怎么进墙
|
||||
5. 参数粒度逐项裁定(§6 分叉)
|
||||
6. 入族登记待办化(替代手工改 composite_library.py)——factor 域实现项
|
||||
7. 假设卡 ↔ 因子回链字段设计
|
||||
8. 权重演进视图数据源:weight_profiles 已落库(git 白名单),缺 UI 读出
|
||||
9. 现有九页映射迁移:改哪些 / 废哪些(归因·研判 / 设置去留)
|
||||
10. 窄屏要不要管(倾向 YAGNI 不管)
|
||||
|
||||
## 8. 落地路径(草案,定稿后细化)
|
||||
|
||||
spec 逐节拍板 → writing-plans 出实施计划 → 分域派单:②权重透明=factor 域;③出生流/④考窗/⑤时间线+车间=strategy 前后端(run 台账=infra+strategy 共建,是地基,**先于一切页面**——调研 §8 同结论)。
|
||||
|
||||
铁律:spec 先行 + 用户拍板再动代码(10-08「不要乱改」已立);人工卡点不动;设计变更档随码走(本稿收编后回归总设计 spec 单档原则)。
|
||||
|
||||
## 9. 引用
|
||||
|
||||
- 调研报告:`docs/superpowers/reports/2026-10-08-ux-redesign-survey.md`(Top5 收敛:运行台账 / 生效参数回显 / 勾选对比只看差异 / 数字落库即成曲线 / 人工卡点内嵌主线——GitHub 正例「审批在流程页内黄条」,GitLab 反例)
|
||||
- 总设计:`docs/superpowers/specs/2026-09-22-research-to-trading-pipeline-design.md`(§4.3 晋级闸门 / §4.4 合成层 / §11 术语与归属)
|
||||
- 缺口审计与三矛盾修复:issue #92、commit 118c9df..8ed8432、memory `pipeline-ux-redesign-20261008`
|
||||
Reference in New Issue
Block a user