【听见课堂 HarmonyOS NEXT 实战系列 41】任务候选不能直接进待办:confirmed 字段的产品与数据意义

发布时间:2026/9/6 13:00:55

【听见课堂 HarmonyOS NEXT 实战系列 41】任务候选不能直接进待办:confirmed 字段的产品与数据意义
【听见课堂 HarmonyOS NEXT 实战系列 41】任务候选不能直接进待办confirmed 字段的产品与数据意义从课堂字幕里发现“周五提交实验报告”只是得到一条可能的任务线索并不等于用户已经同意把它加入正式待办。如果应用把规则或模型生成的候选直接写进任务中心误识别、断句错误和上下文缺失都会变成正式数据最终让用户不再信任自动整理功能。听见课堂在TaskItem中使用confirmed把“待人工确认的候选”与“正式任务”分开。当前任务提取仍是明确标注的规则模拟不是已经验证的真实 AI 模型。本文从领域模型、Service 过滤、Repository 写入和页面反馈四层拆解这条人工确认边界。一、同一条任务为什么需要两种身份候选区回答的是“系统认为这句话可能是一项任务吗”任务中心回答的是“用户是否认可并愿意管理这项任务”。二者的责任不同不能只靠页面位置区分。confirmedfalse表示候选confirmedtrue表示正式任务。字段进入领域模型和数据库后即使页面重构、路由变化或设备宽度变化业务语义仍然一致。二、TaskItem 的最小状态集合项目中的任务模型包含标题、截止时间原文、来源、确认状态、完成状态和规范化截止时间exportclassTaskItem{id:string;title:string;dueText:string;source:string;confirmed:boolean;completed:boolean;dueAtMillis:number;}confirmed控制是否进入正式管理链路completed只对正式任务有意义source则保留它从哪段课堂证据产生。三、Service 用过滤规则生成两种视图页面不直接对数据库结果散写过滤条件。ClassroomService分别暴露asyncgetCandidateTasks():PromiseArrayTaskItem{consttasksawaitthis.repository.getTasks();returntasks.filter((item:TaskItem)!item.confirmed);}asyncgetConfirmedTasks():PromiseArrayTaskItem{consttasksawaitthis.repository.getTasks();returntasks.filter((item:TaskItem)item.confirmed);}这样 P08 候选确认页与 P09 任务中心消费的是同一份 canonical data只是业务视图不同。四、任务中心再次执行 confirmed 门禁getTaskCenterSnapshot()会读取全部任务但第一步就是.filter(task task.confirmed)。统计、周历、过期判断和完成切换都只在正式任务集合上进行。这道二次门禁很重要即使某个页面误把候选传给任务中心组件Service 仍不会把未确认数据计入待办总数。五、确认动作只修改一个业务事实页面点击“确认加入”后调用confirmCandidateTask()再由 Service 转交 RepositoryasyncconfirmTask(taskId:string):Promiseboolean{constvalues:ValuesBucket{confirmed:1};returnthis.updateById(TABLE_TASKS,taskId,values);}确认不会重新生成标题也不会丢掉来源。它只改变“用户是否认可”这一事实然后页面重新读取候选、正式任务和聚合快照。六、写后刷新比手工搬卡片可靠确认成功后页面没有把卡片从数组 A 手工移动到数组 B而是调用refreshData()。候选列表、正式任务列表、复盘指标和任务中心统计都会从 Repository 重新计算。这避免了页面局部状态和数据库状态不一致也让 RelationalStore 与内存降级实现遵循同一条刷新路径。七、撤销确认为什么要同时清理 completed项目允许在确认成功后立即撤销。Repository 的unconfirmTask()会把confirmed和completed都重置为 0。原因是一条重新回到候选区的记录不应该继续携带“已完成”身份。否则再次确认时它会绕过用户的待办阶段直接出现在已完成列表。八、候选、正式任务与历史证据不是一回事候选区用于人工判断任务中心用于状态管理复盘与历史页用于解释来源。历史时间线可以展示任务证据并根据confirmed标注“待人工确认”或“已人工确认”。因此确认状态既影响操作权限也影响证据解释但不会删除原始课堂来源。九、来源字段让确认决定可追溯用户确认任务时需要看到标题之外的信息例如来源字幕、课堂时间或板书上下文。当前source与reviewSourceTime()支撑基本跳转P08 也能打开对应复盘节点。这种设计比只保存一个标题更可靠但当前来源时间仍有字符串解析成分后续应演进为结构化证据 ID 和时间字段。十、当前“智能提取”必须按规则模拟表述getCapabilityStatus()明确把“任务智能提取”标为未完成来源为“规则模拟”说明文字是依据时间和关键词生成候选任务。所以文章可以验证候选—确认—任务中心的业务闭环不能据此声称已经接入大模型、具备真实语义理解或达到某个提取准确率。十一、为什么不能让模型直接写 confirmedtrue模型输出天然存在误判。若远端 AI、规则引擎或本地模型拥有直接写正式数据的权限一次错误就可能创建虚假截止时间、重复任务甚至触发后续提醒。更安全的架构是生成器只产出候选 DTO业务 Service 保存为confirmedfalse只有明确的用户动作才能提升为正式任务。十二、完成状态也有 Repository 门禁setTaskCompleted()会先查找任务并拒绝不存在或尚未确认的记录。这样候选任务无法绕过确认流程直接变成“已完成”。页面按钮是否隐藏只是体验层保护Repository 的状态检查才是最终数据边界。十三、AI 建议开关不会删除候选页面的visibleCandidateTasks()在“智能整理”关闭时返回空数组但底层候选仍保留。重新开启后未确认记录可以再次出现。开关控制的是展示与建议能力不应静默删除用户可能需要复核的数据。十四、当前实现仍需补强哪些校验confirmTask()当前直接按 ID 更新没有先检查记录是否已确认重复点击主要依赖页面状态和刷新避免。后续可以增加旧值条件例如只允许confirmed0的一行更新并要求影响行数恰好为 1。如果将来加入多设备同步还需要版本号或乐观锁防止两个设备同时确认、撤销造成覆盖。十五、验收应覆盖完整状态闭环至少验证候选初始不进入任务中心、确认后候选消失且任务中心出现、统计同步变化、撤销后回到候选、完成状态被清理、来源证据仍可打开、重启后 RelationalStore 状态保持。项目既有 P08/P09 证据覆盖确认、撤销和任务中心刷新这不等于真实 AI 候选质量已经验收。十六、总结confirmed不是一个为了方便筛选的布尔值而是自动建议与用户正式数据之间的权限边界。听见课堂让规则或未来模型只能提出候选让用户决定是否进入待办再通过 Repository 门禁和写后刷新保持数据一致。下一篇继续分析为什么候选标题和截止时间只能在确认前编辑以及这条限制如何由页面、Service 和 Repository 共同执行。

相关新闻

AI咨询复盘|第36周·硬件版

AI咨询复盘|第36周·硬件版

2026/9/6 12:50:55

AI资讯复盘|第36周硬件版:国产算力替代加速兑现,昇腾950PR规模交付、DeepSeek据报转单16万颗,英伟达在华靠H20许可与特供版守份额 摘要:本周硬件领域国产算力替代加速兑现——华为昇腾 950PR 进入规模交付、全年出货目…

C++ STL栈与队列:底层原理、性能优化与实战应用详解

C++ STL栈与队列:底层原理、性能优化与实战应用详解

2026/9/6 12:50:55

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

anything-llm实战:基于RAG的本地知识库问答系统部署与调优

anything-llm实战:基于RAG的本地知识库问答系统部署与调优

2026/9/6 12:50:55

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

MySQL索引原理与实战:从B+树底层到Java项目优化指南

MySQL索引原理与实战:从B+树底层到Java项目优化指南

2026/9/6 14:10:58

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

大数据学习路线怎么规划?从课程体系到工程实战的完整路径解析

大数据学习路线怎么规划?从课程体系到工程实战的完整路径解析

2026/9/6 14:10:58

简介:这是一份关于复旦大学大数据学院本科教学体系的课程学习手册,面向本校大数据相关专业学生、准备报考或了解该培养方案的考生及高校大数据专业建设者。手册系统梳理了“22X”培养模式、通识基础教育与专业教育衔接方式,并详细介绍了专业必…

事业单位计算机基础备考:高频考点与PDF高效利用指南

事业单位计算机基础备考:高频考点与PDF高效利用指南

2026/9/6 14:10:58

简介:这是一份针对事业单位考试复习的计算机基础知识要点PDF,聚焦硬件、软件、存储、数据表示、输入输出设备等高频考核方向。资料基于冯诺依曼原理展开,讲解控制器、运算器、存储器、输入设备、输出设备五大组成,兼顾机器语言、汇…

事业单位计算机基础备考:PDF资料高效利用与核心考点精讲

事业单位计算机基础备考:PDF资料高效利用与核心考点精讲

2026/9/6 14:10:58

简介:《事业单位考试计算机基础知识要点.pdf》是一份专门针对事业单位笔试中计算机基础模块的备考资料,内容覆盖计算机硬件组成、冯诺依曼原理、ROM与RAM区别、存储单位换算、CPU结构、总线类型、计算机发展史及输入输出设备等高频考点,并配有…

AI接单实战:技术人如何用AI工具实现技能变现?

AI接单实战:技术人如何用AI工具实现技能变现?

2026/9/6 14:10:58

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

LCD永不为奴?iPhone 17屏幕之争背后的显示技术真相

LCD永不为奴?iPhone 17屏幕之争背后的显示技术真相

2026/9/6 14:00:57

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

2026/9/6 1:19:56

本文首发于“生态学者”!从“湿地面积”到“土壤碳密度”:为什么需要重新认识潮汐湿地蓝碳变化?潮汐湿地位于陆地与海洋的交汇地带,包括红树林、盐沼和潮滩,是全球重要的蓝碳生态系统。其土壤能够长期储存大量有机碳&a…

adb抓包

adb抓包

2026/9/6 1:19:56

前言 本文介绍如何通过 tcpdump 在 Android 手机上抓取网络数据包,并在电脑端使用 Wireshark 进行分析。适用于需要排查 App 网络请求、分析接口调用或调试网络问题的开发与测试场景。1. 手机要有 root 权限2. 下载 tcpdump3. adb push C:\Users\zhangkuixun\Downlo…

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

2026/9/6 1:19:56

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战 在云原生基础设施中,容器镜像体积直接决定了服务的部署速度与弹性扩容敏捷度。对于传统的 Go / Java 微服务,镜像体积通常被严格控制在 50MB 到 200MB 以内,拉取镜像只…

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

中国人民大学杨琳团队《Nature Communications》 | 全球潮汐湿地土壤有机碳时空格局与环境驱动:一项2009-2020年的全球评估

2026/9/6 1:19:56

本文首发于“生态学者”!从“湿地面积”到“土壤碳密度”:为什么需要重新认识潮汐湿地蓝碳变化?潮汐湿地位于陆地与海洋的交汇地带,包括红树林、盐沼和潮滩,是全球重要的蓝碳生态系统。其土壤能够长期储存大量有机碳&a…

adb抓包

adb抓包

2026/9/6 1:19:56

前言 本文介绍如何通过 tcpdump 在 Android 手机上抓取网络数据包,并在电脑端使用 Wireshark 进行分析。适用于需要排查 App 网络请求、分析接口调用或调试网络问题的开发与测试场景。1. 手机要有 root 权限2. 下载 tcpdump3. adb push C:\Users\zhangkuixun\Downlo…

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战

2026/9/6 1:19:56

大模型推理镜像极简瘦身:从 25GB 巨无霸到 3GB 精简镜像实战 在云原生基础设施中,容器镜像体积直接决定了服务的部署速度与弹性扩容敏捷度。对于传统的 Go / Java 微服务,镜像体积通常被严格控制在 50MB 到 200MB 以内,拉取镜像只…

远程协作的工作台整理

远程协作的工作台整理

2026/9/3 6:56:24

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/4 7:42:10

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/5 23:14:13

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…