4.4 KiB
4.4 KiB
Requirements: DeerFlow Frontend Merge Recovery
Defined: 2026-04-07 Core Value: Keep the frontend visually familiar while preserving and hardening new-system behavior end to end.
v1 Requirements
Merge Reconciliation
- MERGE-01: Team can list all merge-overwritten hotspots with file-level evidence and risk classification
- MERGE-02: Team can restore required new-system logic removed during merge while avoiding duplicate behavior paths
- MERGE-03: Team can identify and reconcile Titan-overlap code paths with explicit keep/replace decisions
UI Visual Alignment
- UI-01: Workspace visual style aligns with legacy baseline for typography, spacing, and component hierarchy
- UI-02: Visual alignment changes do not break chat/thread/artifact interactions
- UI-03: Global style changes remain consistent across main workspace pages
New-System Logic Integrity
- LOGIC-01: iframe communication flow functions correctly for selected skill and parent message events
- LOGIC-02: Markdown download flow works from generation to export trigger in workspace
- LOGIC-03: Thread creation/reuse logic remains correct for
thread_id,isnew, andxclaw_usedcombinations - LOGIC-04: Skills bootstrap API contract is explicitly reconciled (
content_idvscontent_ids) without silent breakage
Quality and Regression Safety
- TEST-01: E2E tests cover message/history, input/compose, welcome/routing, and artifact/thread reuse flows
- TEST-02: Recovery changes are committed in separable concern groups (style vs logic vs tests)
- TEST-03: Critical conflict files have before/after verification notes for reviewer auditing
Input @ File References (Phase 6)
- ATREF-01: 输入框输入
@时仅展示当前线程(artifacts + uploads)候选,且支持连续输入过滤 - ATREF-02: 选中文件后以可删除 chip 展示,并在同名场景显示“文件名 + 类型 + 路径尾段”,引用上限 10
- ATREF-03: 引用文件复用
additional_kwargs.files提交,含来源元信息;失效引用软剔除并不阻断消息发送 - ATREF-04: 引用能力具备自动化回归验证(单测 + E2E)及按 style/logic/tests/docs 的提交分组计划
Theme Tokenization and Color Guard (Phase 8)
- P8-01: Workspace 核心页面与组件(thread page、input box、artifact detail/list、workspace layout/header)中的
bg-[#...]/text-[#...]/stroke="#..."等硬编码颜色迁移为 light/dark 主题 token - P8-02: 建立颜色 token 注册表并满足“每个 distinct 颜色值对应一个 distinct token 名称”的唯一性约束(禁止多个不同颜色值映射到同名 token)
- P8-03: 增加自动化扫描守卫,阻止新增
#hex与bg-[#...]/text-[#...](含同类 arbitrary color)回归 - P8-04: 覆盖 workspace 关键页面与组件的 light/dark 回归验证(静态扫描 + 自动化用例 + 可复现命令)
v2 Requirements
Tooling Improvements
- TOOL-01: Add automated conflict hotspot detector for future merges
- TOOL-02: Add style-vs-logic diff classifier script for commit preparation
Out of Scope
| Feature | Reason |
|---|---|
| New product feature development unrelated to merge recovery | Would dilute stabilization focus |
| Backend architecture refactors not required by frontend recovery | Not necessary for current milestone objective |
| Full design system reimplementation | Too large for recovery scope |
Traceability
| Requirement | Phase | Status |
|---|---|---|
| MERGE-01 | Phase 1 | Complete |
| MERGE-02 | Phase 1 | Complete |
| MERGE-03 | Phase 1 | Complete |
| LOGIC-03 | Phase 2 | Complete |
| LOGIC-04 | Phase 2 | Complete |
| UI-01 | Phase 3 | Pending |
| UI-02 | Phase 3 | Pending |
| UI-03 | Phase 3 | Pending |
| LOGIC-01 | Phase 4 | Pending |
| LOGIC-02 | Phase 4 | Pending |
| TEST-01 | Phase 5 | Pending |
| TEST-02 | Phase 5 | Pending |
| TEST-03 | Phase 5 | Pending |
| ATREF-01 | Phase 6 | Pending |
| ATREF-02 | Phase 6 | Pending |
| ATREF-03 | Phase 6 | Pending |
| ATREF-04 | Phase 6 | Pending |
| P8-01 | Phase 8 | Pending |
| P8-02 | Phase 8 | Pending |
| P8-03 | Phase 8 | Pending |
| P8-04 | Phase 8 | Pending |
Coverage:
- v1 requirements: 21 total
- Mapped to phases: 21
- Unmapped: 0
Requirements defined: 2026-04-07 Last updated: 2026-04-07 after initial definition