4.0 KiB
4.0 KiB
FEAT-MO-001 开发总结
原始开发需求
实现市场概览首屏:结论优先展示市场状态、驱动与风险,并支持综合、短线、中长线视角和规则、AI、混合、对照分析选择;用户可从指数和板块入口进入后续详细分析。
需求与范围变化
- 数据源从早期“确定性模拟快照”调整为 TDX 只读直连,Nest API 访问本机
127.0.0.1:17710,Vue 不直接访问 TDX。 - API 按摘要、指数、市场宽度、板块和资金拆分,避免把整个首屏塞入单个接口。
- 当前 TDX 桥接已确认
get_market_snapshot、get_stock_list和批量get_market_data可用;市场宽度、一级行业板块和成交额趋势改为真实 TDX 映射。主力净流入字段虽存在但当前实测为零值,盘中新闻无官方行情接口,因此两者延期到补充源功能。 - MySQL、Redis、RocketMQ 和 AI 仍不进入本切片运行链路;它们保留为后续基础设施边界。
实际完成需求
- 新增 TDX 配置校验、超时/响应大小限制、错误脱敏的 Node 客户端。
- 新增市场概览 DTO、服务、控制器、OpenAPI 契约和前端 Axios API 文件。
- 完成结论、驱动与风险、核心指数、市场宽度、板块、资金趋势模块,以及加载/错误/不可用状态。
- 完成分析视角和分析引擎切换,本地保存用户偏好。
- 真实 TDX 指数和摘要已通过本机隧道冒烟;未用指数或离线样本伪造缺失指标。
- 真实 TDX 市场宽度、一级行业和成交额趋势已通过本机桥接冒烟;资金模块明确使用成交额口径,不宣称主力净流入。
修复缺陷
- 修正 PRD 和实施计划中仍描述“模拟数据”的旧表述。
- 避免单个 TDX 模块失败导致整页失败,改为五个模块并行、独立状态。
- 对未注册桥接方法返回结构化原因,避免前端显示“实时”或空白数据。
- 修复 Vue TypeScript 单文件组件未被 ESLint 正确解析的问题,并为 E2E 测试进程补齐必需的本机 TDX 配置边界。
- 隔离应用外壳单测中的真实 Axios 请求,消除 JSDOM 网络错误噪声,保持页面测试只验证外壳职责。
- 根据代码 Review 修复畸形 TDX 字段被折算为零、缺市场成交额误报三市、交易日错位跨日求和、空行业目录误报
fresh、前端隐藏partial/delayed警告和零变化使用上涨色等缺陷,并补齐对应回归测试。
未完成与延期项
- 主力净流入的权限/数据质量验证、盘中新闻补充源、真实图表和口径仍延期。
- “查看依据”抽屉、指数/板块详情页、AI 请求和用户体系另立功能。
- 本地验证不代表生产 7×24 采集稳定性、商业授权或公网部署安全性。
关键提交
9a965fa、d283ee3、6eb34b5、c2fa929、15a2500、27bc3c1- 首屏 UI 收口提交待 Review 通过后补充。
验证证据
- GitNexus 已完成提交前重新索引;CLI
detect-changes --scope staged映射 16 条概览执行流并标记 critical。风险来自本功能修改核心概览服务、TDX 映射和前端数据面板,已由定向单测、HTTP/OpenAPI、前端状态回归、构建、浏览器视觉验证和 E2E 覆盖;未发现额外业务模块调用方。当前环境未暴露 GitNexus MCP 变更检测工具,因此使用同版本 CLI 并指定 worktree 绝对路径执行。 - API 冒烟:
/breadth、/sectors、/funds均返回source=tdx,status=fresh;完整结果和耗时见tdx-smoke-report.md。 - 前端单测、typecheck、build、后端 TDX/映射/服务/HTTP/OpenAPI 测试通过。
pnpm verify:e2e:4/4 通过(桌面和移动端各覆盖页面与健康契约)。- 浏览器桌面与 390px 移动视口验证无横向溢出,视角与引擎切换可用。
- Review 首轮在
ff8ada8发现 6 项重要问题;已在当前修复提交中逐项处置,需二次代码 Review 确认。 - 开发 Schema 按用户确认跳过,沿用
v0.0.10 captured_empty追溯边界,不读取生产库。