Files
Hua.Todo/docs/project/v1.2.0-tasks/00-任务总览.md
T
ShaoHua 7a4c516a20 feat: 引入 CloudSync 核心能力并新增 Avalonia 桌面端与发布脚本
- 后端:新增 CloudSync 认证/权限/端点/服务与 DTO
- 数据:新增用户/会话/安全策略实体与 EF Core migrations
- 前端:新增云同步设置 UI、客户端与本地存储;Vite 支持 maui 构建输出到 wwwroot
- 桌面端:新增 Avalonia 项目、内置 WebServer、托盘与 Windows 全局热键
- 发布/构建:新增 Windows/Linux 发布脚本与统一入口;调整 MAUI 资源与安装包配置
- 文档:同步更新 README/docs 与协作规则
2026-04-07 03:34:34 +08:00

3.4 KiB
Raw Blame History

Hua.Todo v1.2.0 任务拆分总览

本目录用于把 产品需求文档-1.2.0.md 拆解为可落地、可并行推进的子任务。各任务文件之间尽量解耦;存在明确依赖时会在任务内标注。

目标(来自 PRD

  • Linux 平台官方支持:MAUI 入口保持不动,Linux 新增 Avalonia 入口;继续用 WebView 承载同一套 Vue 前端;复用既有“本地 API ↔ 前端”的交互协议
  • 任务检索(Search):主界面顶部新增搜索框,按任务标题模糊匹配
  • 云同步(基础可用):用户手动配置服务端地址;RBAC + 二次认证;用户级数据隔离;服务端配置驱动的“可控落盘”

当前实现基线(用于任务定位)

  • MAUI 启动与内嵌 WebServersrc/Hua.Todo.Maui
  • 前端(Vue)与 API clientsrc/Hua.Todo.Web
  • 后端宿主(ASP.NET,动态 API):src/Hua.Todo.Host + src/Hua.Todo.Application/DynamicApi
  • 现有 WebView ↔ 前端注入协议(示例):window.__API_BASE_URL__window.mauiInterop(用于 JS 侧拿到 API base 与若干事件桥接)

任务流(并行建议)

  • Linux 入口线01-* + 02-*
    • 01:新增 Avalonia 入口、选择 Linux 可用的 WebView 控件、复用现有前后端协议
    • 02:Linux 打包/交付产物(已落地:.tar.gz 发布脚本 + Flatpak 基础结构;详见 publish-linux.ps1pack/linux/
  • Search 线03-*
    • 主要在前端完成;与云同步/平台入口基本无耦合,可并行
    • 03:已完成:主界面搜索框(按标题包含匹配;命中即显示含上下文;Esc 清空;英文大小写不敏感)
  • 云同步线04-* + 05-* + 06-*
    • 04:服务端基础能力(登录、任务同步/读取、配置下发、用户隔离)
    • 05:客户端配置与同步工作流(手动指定服务端地址、登录后拉取任务)
    • 06:安全与落盘策略(RBAC、二次认证、可控落盘与“内存模式”)
  • 文档与验收线07-*
    • 对齐文档与现实现状/接口;补齐验收步骤与自测清单

待验证表

子任务 实现状态 验证状态 备注
01 - Linux 入口 已完成 待验证 基于 Avalonia + WebView.Avalonia 实现
02 - Linux 打包/交付 已落地 待验证 .tar.gz 发布脚本 + Flatpak 基础结构
03 - Search 关键词检索 已完成 待验证 搜索框 + 树状任务标题包含匹配
04 - 云同步 服务端基础能力 已完成 已验证 API 契约与错误码已固化到 04 文档
05 - 云同步 客户端配置与同步 已完成 待验证 新增“云同步设置”弹窗:地址校验+保存探测、登录/登出、登录后拉取云端任务并在主界面只读展示
06 - 安全与落盘策略 未标注 待验证
07 - 文档与验收 未标注 待验证

交付判定(v1.2.0 Done Definition

  • Linux:在基线发行版(建议 Ubuntu LTS)上可启动、可渲染前端、可调用本地 API;且有可安装/可运行的交付产物
  • Search:可在主界面按标题实时过滤任务(含层级任务的展示策略清晰)
  • 云同步(基础可用):可配置服务端地址;登录后可拉取该用户任务;服务端可下发“是否允许落盘”;客户端在禁止落盘时不产生本地持久化