@luke
审查 Python 公开接口的参数类型、返回值与文档是否一致,并验证类型标注对最低支持解释器版本的兼容性。
## 任务目标 请审查或完善本次 Python 模块的类型契约。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 类型契约对象:从当前模块的公开导出、对话指定函数或本次改动接口开始,对照实现、调用方和文档检查类型;未明确要求修改时先报告确定差异。 模块或契约资料:查找模块、公开导出、docstring、外部调用示例、最低 Python 约束和现有静态检查配置。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 划分公开接口、内部辅助与动态扩展,记录参数默认值、空值、集合元素和所有返回分支。 - 比对调用方实际传值、文档示例及运行时校验,识别可用协议类型与兼容边界。 - 查最低解释器、检查器能力、注解反射及类型别名使用点,排查循环导入和 TYPE_CHECKING 风险。 ### 可采用的默认处理 - 默认只读核对,明确要求完善时只补有契约证据的公开边界,不为注解覆盖率修改业务签名。 - 沿用最低 Python 和现有检查工具支持的语法,不因类型提示升级解释器。 - 动态入口保持已知能力并说明不确定部分,不用大面积 Any 或忽略错误宣称类型完备。 ### 必须有依据的事项 - 实现、调用方和文档对同一参数或返回值存在业务歧义,无法确定收紧类型是否会拒绝合法调用。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 没有调用方时完成可观察分支与文档差异表,对调用兼容结论单独标记限制。 - 不能运行最低版本时提供候选注解和导入、反射及关键调用检查命令,不声称兼容性已验证。 ## 执行要求 以真实调用契约为准完善类型标注,并用项目现有工具验证。检查 Paddle 公开 API 时核对对应接口要求;普通 Python 工程按自身兼容范围选择类型语法,不直接套用框架专属约定。 1. 先区分公开接口、内部辅助函数和动态扩展入口,记录真实调用方依赖的参数与返回值。优先完善公开边界,不为了追求覆盖率给所有局部变量堆叠注解,更不能通过修改业务签名制造表面上的类型统一。 2. 将函数签名、类公开属性和说明文档逐项对照,检查可为空、默认值、集合元素和返回分支。对字典结构尽量描述明确字段,对返回结果写出调用方实际拿到的具体类型,避免用 Any 掩盖已知契约。 3. 检查参数是否需要接受更通用的集合协议,以及实现是否真的支持这些输入。保留必要的运行时校验,类型提示不能替代用户输入验证;如果使用枚举、字面量或重载,说明它们与真实运行行为的对应关系。 4. 核对最低解释器和静态工具支持的语法,区分注解上下文与运行时类型别名。仅为类型服务的导入可以评估放入 TYPE_CHECKING,但需要运行时反射或解析注解的代码必须另外验证,不能盲目移动导入。 5. 检查文档示例、外部调用和异常分支是否同时符合新类型,识别循环导入、可变容器与泛型参数缺失。只在有明确契约的地方收紧类型,并列出可能影响调用方的变化及迁移办法。 6. 使用项目现有静态检查和相关运行测试验证,在最低支持环境做导入与关键调用检查。对每个无法准确标注的动态入口说明原因和收敛方案,禁止大量忽略错误后宣称类型已经完整可靠。 ## 交付与验收 输出:公开接口契约表、类型与文档差异、必要代码修改、兼容性说明及检查结果。缺少调用方或版本信息时记录假设和待确认项;没有执行条件就提供验证命令与预期检查目标,不虚报静态检查已通过。 ### 本条完成检查 - 公开契约表覆盖参数、空值、默认值、集合元素、返回和异常,差异可定位到实现或示例。 - 如实施标注,保持运行时校验,验证类型导入、反射及最低版本关键调用。 - 分别给静态检查和运行测试结果,列出仍无法准确描述的动态入口及影响。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [百度飞桨《Python 类型提示标注规范》](https://www.paddlepaddle.org.cn/documentation/docs/zh/dev_guides/style_guide_and_references/type_annotations_specification_cn.html)
检查小程序页面重点、导航、输入、加载、结果与异常恢复,适用于预约、填报、查询和审批等业务流程。
## 任务目标 请验收当前微信小程序的业务流程与界面体验,以真实用户角色和本次任务目标为依据。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 验收流程:从当前会话涉及的页面或已提供截图识别用户要完成的主要任务;没有流程清单时沿现有页面入口、主要按钮及结果页梳理一条真实任务路径。 小程序或页面资料:使用现有页面代码、截图、可访问预览、路由配置、接口状态及已有品牌样式,自动梳理角色可见的业务步骤。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪首页、分享、扫码和历史入口的直达路径,以及返回、取消、退出后的数据状态。 - 核对表单字段、必填与默认值来源,检查成功、失效、无权限及失败恢复的真实接口依据。 - 检查主要操作、中文反馈、键盘遮挡、菜单预留、长文本和字体放大表现。 ### 可采用的默认处理 - 默认只读验收并给具体调整;明确要求修复时再实施对应页面变更,不自动改变办理顺序。 - 沿用现有业务术语与视觉规范;缺规范时保持主任务清楚、操作集中、状态可理解,不补造宣传信息。 - 只有截图时仅判断可见布局及文案,导航、输入保留和提交安全分别列待交互核验。 ### 必须有依据的事项 - 无法确定办理角色、业务完成条件或关键字段的真实必要性,不能自行删步骤、代填事实或判定流程正确。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 只有截图时按页面给可见问题、用户影响和具体调整,并补可执行的异常恢复验收步骤。 - 没有可运行小程序时由路由和接口状态整理任务路径及测试矩阵,区分静态证据和待真机交互。 ## 执行要求 按微信内移动业务流程进行验收,页面的政企风格与中文业务文案遵循当前项目要求,不套用统一视觉模板。 1. 逐页指出用户当前要做什么、完成后去哪里以及如何返回。检查每页是否突出一个主要业务目标,导航和按钮是否能反映真实流程,清理无关宣传内容与重复引导,避免让用户在表单中被其他推荐打断。 2. 检查返回、取消和退出后的数据状态,覆盖从分享、扫码及历史入口直接进入页面。页面应能说明当前业务对象和进度,不能假设用户必定从首页按固定顺序进入。 3. 审查所有输入项是否确有必要,能选择的值优先提供明确选项,默认值必须有业务依据。字段标签、单位、格式和必填条件清晰可见,不能为了减少输入而未经用户理解就代填关键业务事实。 4. 根据操作范围设计加载和结果反馈:局部更新尽量原位反馈,耗时操作说明当前状态。错误需要足够明确且能够继续处理,不能一闪而过;成功页应说明已经完成的业务以及合适的下一步。 5. 验收网络失败、无数据、校验失败、记录失效和权限不足时的恢复路径。表单错误定位到相关项目,保留仍有效的输入;重试、修改和返回动作应与真实服务端状态匹配,避免造成重复提交。 6. 检查点击区域、控件间距、键盘遮挡、长文本、字体放大和官方菜单预留区域。保持同类组件和状态表达一致,使用真实业务内容检验对齐与换行,避免大面积装饰、花哨动效和没有含义的数据卡片。 ## 交付与验收 输出:按流程排序的问题清单,每项包括页面、触发操作、用户影响、具体调整和验收条件;另给完整任务路径与异常恢复表。已有代码且用户明确要求修复时,实施必要修复并验证,只有截图时明确无法确认的交互,不把静态外观审查当成流程全部通过。 ### 本条完成检查 - 按实际任务顺序输出问题、页面、触发、影响和验收条件,不用笼统审美评价替代业务问题。 - 覆盖直达、返回、取消、权限不足、记录失效和提交失败的恢复路径,确认合理输入可保留。 - 单列点击、键盘、长中文、字体放大及菜单区域检查结果,只有静态材料不得报全流程通过。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序设计指南》](https://developers.weixin.qq.com/miniprogram/design/)
定义微信小程序组件的属性、插槽和样式入口,处理组件注册、样式污染及不同页面的复用问题。
## 任务目标 请根据本次要求,将小程序中的重复业务界面封装为可复用组件,或审查已有组件的边界与样式隔离。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 组件目标:优先审查当前页面引用的目标组件;若对话明确要求封装重复界面,则从真实使用页面识别共同职责后实施,不凭相似外观创建通用组件。 组件或使用页面:读取组件及调用页面的 JSON、WXML、WXSS、脚本、事件监听和已有运行配置,从实际工程识别原生或跨端框架。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 对照真实调用场景确定数据所有者、内部状态、业务差异及是否存在稳定复用职责。 - 核对 usingComponents 路径、properties、事件载荷、插槽与 multipleSlots 配置。 - 检查 styleIsolation、外部样式类、虚拟节点及渲染器支持,跨端工程同时追查生成代码。 ### 可采用的默认处理 - 没有明确封装或修复要求时只读审查;实施时保持原有属性、事件和页面行为兼容。 - 优先现有隔离方式与明确的外部样式入口,不为局部问题全局开放样式共享。 - 仅有一个真实场景时按独立职责判断是否值得封装,不虚构第二个页面或添加大量未来开关。 ### 必须有依据的事项 - 不同调用页面对属性、事件或内部状态职责存在冲突,无法在不改变业务的情况下确定通用契约。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 缺运行环境时交付组件契约、样式入口、可检查代码或修正片段及逐页验证步骤。 - 只有截图时先给稳定职责与差异清单,不凭截图承诺原生注册、插槽或渲染器兼容。 ## 执行要求 按微信原生组件的能力检查实现。使用跨端框架时,进一步核对生成代码和框架适配,不能直接照搬浏览器或 Vue 的样式规则。 1. 先列出组件必须完成的业务任务、调用方负责的数据与内部展示状态。比较多个页面的共同部分和真实差异,只抽取已经稳定的职责;不要把整张业务页面塞进一个参数繁多、难以理解的通用组件。 2. 检查页面及组件 JSON 中的声明,确认引用名称和实际路径一致。为属性建立名称、类型、默认值及空值约定,核对数据能否在当前环境传递;非法输入要有清楚的处理,不依赖隐式转换掩盖接口错误。 3. 按内容扩展需求选择默认插槽或命名插槽。需要多个插槽时核查 multipleSlots 配置,并说明每个插槽负责的区域及为空时的表现;业务事件的名称和返回字段应稳定且与调用方用法对应。 4. 按官方文档检查样式选择器及 styleIsolation 设置,识别页面样式穿透组件、组件污染其他页面和继承属性变化。不能为修好一个样式问题就全局开放共享,先定位实际受影响的类与节点。 5. 通用组件需要允许定制时,优先设计明确的外部样式类入口,并列出哪些外观允许调整。避免调用方依赖组件内部层级或未约定的祖先样式;若启用虚拟节点,检查根节点布局、class 与 style 的实际生效位置。 6. 在至少两个真实使用页面验证正常数据、空数据、长中文文本、禁用状态、插槽缺省和局部样式覆盖。对已声明支持的渲染器及基础库环境分别记录结果,检查事件次数和数据回传是否符合调用契约。 ## 交付与验收 输出:组件职责说明、属性与事件表、插槽和样式入口、组件实现及复用验收结果。没有运行环境时只给可检查的实现和验证步骤,标明兼容性待测;需求只出现一个使用场景时说明抽象依据,不虚构更多业务来证明组件通用。 ### 本条完成检查 - 明确组件职责、属性类型和空值、事件次数及载荷、插槽和允许调整的样式入口。 - 在真实使用页面验证空数据、长中文、禁用和局部覆盖;只有一个场景时说明限制,不假造复用证据。 - 分别记录已支持基础库和渲染器的结果,确认组件不污染相邻页面且回传数据符合调用方。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序:组件模板和样式》](https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/wxml-wxss.html)
审查微信小程序临时 code、服务端身份换取、自定义登录态及 session_key 保管,补齐业务授权联调。
## 任务目标 请对当前微信小程序及后端的登录链路进行实现或检查。不要提供真实密钥和用户个人数据。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 登录链路目标:沿现有 wx.login、登录请求、服务端换取身份和业务会话逐段检查;有明确新增登录或修复要求时在已确认账号关系内实施。 小程序或后端资料:查找登录模块、请求拦截器、后端认证入口、账号模型、会话配置和脱敏日志,使用已有安全配置位置,不要求粘贴真实密钥。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪 wx.login 临时 code 的提交、服务端换取和自定义登录态签发,定位重复 code 与并发处理。 - 检查 AppID 配置来源、session_key 存放和响应日志,确认秘密不会下发到客户端。 - 读取微信身份与业务账号绑定、机构角色校验、会话失效及退出后的访问控制。 ### 可采用的默认处理 - 默认只读检查身份链路;明确实现时沿用现有认证和会话体系,不另造一套令牌或默认自动注册账号。 - AppID、AppSecret、用户身份及账号绑定不虚构;缺凭据时使用明确隔离的模拟响应验证状态处理。 - 客户端只提交必要凭证和选择意图,账号、租户和角色以可信后端授权为准,未知授权不得默认放行。 ### 必须有依据的事项 - 微信身份与业务账号的绑定、自动开户或机构授权规则无法确认,不能自行合并账号或赋予权限。 - 缺少真实 AppID 配置、服务端换取权限或可用测试账号时,只暂停对应真实登录联调,不伪造平台结果。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 仅有前端时交付可证实的 code、请求和登录态问题,列后端字段保管与授权核查点,不断言服务端安全。 - 没有联调条件时给完整时序、接口边界及重复 code、失效、停用和退出访问的隔离用例。 ## 执行要求 核对微信身份换取流程,并按项目需求明确业务账号绑定、租户授权、会话期限和退出策略。区分平台登录能力与业务系统自己的身份和权限规则。 1. 画清小程序、开发者服务器和微信服务之间的数据流。核对 wx.login 返回的临时凭证由谁提交、在哪里换取身份,以及后续业务请求使用哪一种自定义登录态,不能把微信临时凭证直接当成长期业务令牌。 2. 检查临时 code 的一次性使用约束,处理重复请求、凭证过期和登录并发。失败后按具体原因重新取得凭证,避免重复回放已经消耗的 code;前端只能根据服务端明确结果判断登录成功。 3. 核查服务端对 session_key 的保管,确认它不会进入小程序响应、前端存储、公开接口或业务日志。排查打包配置和错误输出中的服务端密钥,示例中统一使用占位符,不复制生产凭据到测试用例。 4. 明确微信身份与业务账号的对应关系,检查账号状态、机构和角色从可信服务端获取。客户端传入的用户编号或租户编号不能直接决定查询权限;切换机构时核对当前用户确有相应授权。 5. 按业务约定梳理登录中、已登录、会话失效、账号停用和退出后的页面行为。回到原业务页面时重新校验可操作状态,避免界面仍显示登录成功但接口持续失败;必要信息应在失败时保留以便继续操作。 6. 联调首次登录、再次登录、code 重复、微信服务失败、业务账号受限、会话过期和退出后访问。逐条核对请求、响应与界面状态,采用脱敏记录,确认异常没有泄露会话密钥或敏感堆栈。 ## 交付与验收 输出:登录时序、字段与保管位置、业务授权待确认项、必要实现及联调记录。无法访问服务端代码时明确审查边界,不凭前端界面断言权限安全;缺少会话约定时先指出所需决策,并完成官方登录步骤的可核对方案。 ### 本条完成检查 - 输出三方登录时序、字段流向和保管位置,区分微信身份与业务会话。 - 验证 code 重复、并发、平台失败、账号受限、会话过期及退出后访问,检查 session_key 不出现在客户端和日志。 - 分别记录静态审查、模拟测试与真实联调结果,未确认的账号和租户规则明确留待决策。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序:小程序登录》](https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html)
规划微信小程序主包、业务分包及引用关系,检查启动路径、包体限制和分包加载失败后的体验。
## 任务目标 请为当前微信小程序制定或审查分包方案。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 分包规划目标:从现有 app.json 和可取得的构建体积报告检查主包压力与跨包引用;没有超限现象时先按真实启动和常用业务路径复核现有包归属。 工程或构建资料:读取小程序目录、app.json、TabBar、分享和扫码入口、公共资源引用、构建报告与主体及基础库配置。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 梳理启动页、TabBar 和直接进入页面,追踪脚本、组件及静态资源归属。 - 检查普通分包嵌套、跨包依赖及未被覆盖资源,识别独立分包和分包异步化是否真的需要。 - 从本次构建报告取得上传包体,结合可确认主体、发布渠道和当前官方规则核对限制。 ### 可采用的默认处理 - 默认审查并提供规划,不迁移文件或发布;明确重构时才按受影响页面实施最小包调整。 - 优先保留入口和公共依赖,未证实收益不引入独立分包或异步跨包能力。 - 缺体积报告时只给待测项和资源候选,不以源码目录大小或旧平台限额宣称可发布。 ### 必须有依据的事项 - 拟迁移页面承接外部分享或扫码,而入口兼容要求与初始化依赖无法确定,不能自行改变既有直达路径。 - 主体或发布渠道不明导致适用体积限制无法确认时,不给最终发布合规结论。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 只有目录和配置时交付页面归属、引用关系及最小调整草案,所有包体栏标待构建。 - 无法使用开发者工具时给构建取证与冷启动、分享直达、弱网首次下载的真机验收路径。 ## 执行要求 按微信小程序的包结构和发布要求审查方案。普通分包、独立分包和分包异步化的能力边界不同;所有限制需结合本次发布时的官方说明核实。 1. 从真实入口梳理启动页、TabBar 页面、常用业务路径和低频功能,列明每个页面依赖的脚本、组件及静态资源。优先让首个业务任务所需内容清晰可控,不以平均分配文件大小作为分包目标。 2. 对照 app.json 的分包配置核查目录,保证 TabBar 页面留在主包、分包根目录没有互相嵌套。找出未被分包覆盖而意外进入主包的资源,说明它们是公共依赖还是可以迁移的业务资源。 3. 检查普通分包之间的脚本、模板和资源引用,明确允许依赖主包的部分。若需要使用分包异步化或独立分包,单独核查该能力的版本与入口要求,不能只修改路径后假定运行时一定能找到依赖。 4. 使用构建报告记录主包、各分包和全部包体积,区分源码目录大小与最终上传体积。按当前主体和发布渠道核对平台限制,给出超限资源的具体位置及压缩、按需加载或去重方案,不沿用网上过时数字。 5. 检查冷启动、页面分享直达、扫码进入、TabBar 切换和从主包进入分包的路径。分包首次下载失败时给出用户可理解的反馈和重试入口,避免页面空白后只能退出小程序。 6. 在开发者工具构建后进行真机验证,覆盖弱网、首次下载、再次进入和升级后的资源加载。对于抽出的公共模块,重点回归初始化顺序与业务状态,记录体积和启动体验的实际变化。 ## 交付与验收 输出:页面与包归属表、依赖关系、配置改动、包体实测和进入路径验收表。没有构建结果时保留体积栏待测,不能把估算值作为可发布证明。涉及重构先列明受影响页面,保留已有业务入口和必要的兼容处理。 ### 本条完成检查 - 交付主包和各分包的页面归属、公共依赖及配置建议,确认 TabBar 与跨包引用规则。 - 分别记录主包、分包、总包实际上传体积及采用的当前限制依据。 - 验证启动、直达、TabBar、分包下载失败和再次进入;未构建或未真机验证不宣称可发布。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序:分包加载》](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages.html) - [腾讯微信《微信小程序:使用分包》](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/basic.html)
定位微信小程序页面更新频率、组件规模和数据量问题,以真实交互和测量结果评估优化效果。
## 任务目标 请排查本次小程序页面或组件的卡顿、响应延迟或频繁更新问题。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 卡顿或更新现象:优先复现当前页面的慢操作;没有现象记录时,从 setData、高频监听、定时任务和接口回调识别重复更新候选,再按真实渲染数据验证。 页面或性能资料:查找目标页面脚本与模板、渲染器和基础库配置、现有性能记录及可运行的开发者工具环境。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 确认实际框架和渲染器,区分首次进入、滚动、输入、切页及后台更新的复现场景。 - 按同一操作统计更新次数、字段与体积,追踪模板真正依赖的数据及间接关联字段。 - 检查显示、隐藏和卸载生命周期中的定时器、监听及订阅,核对恢复显示后的业务状态。 ### 可采用的默认处理 - 默认只读定位并给最小优化片段,明确修复时才改更新逻辑;没有测量先给候选排序。 - 优先减少重复和无渲染用途数据,保留必要状态变化,不按固定次数或代码行数判定性能。 - 没有目标设备时记录当前可测条件,真机结论另列,不把模拟器流畅视为问题解决。 ### 必须有依据的事项 - 拟暂停或合并的更新关系到价格、倒计时、排序或操作对象有效性,而业务时效要求无法确认。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 有代码无设备时交付更新入口及负载清单、可疑重复路径和取证步骤。 - 只有现象时给同条件复现记录表,覆盖前后台切换和不同数据规模,不虚填帧率或提速。 ## 执行要求 先确认微信小程序当前使用的组件框架和渲染器,再决定适用的更新方式,不把其他平台的性能结论直接带入。 1. 复现问题并记录操作路径、数据量、设备和页面状态。区分首次进入慢、连续滚动卡顿、输入延迟与后台页面抢占资源;没有测量证据时先给假设排序,不凭代码行数判断性能瓶颈。 2. 查找数据更新入口,统计同一操作触发的次数、更新字段和数据体积,标记定时器、滚动监听、输入监听及接口回调。把必要刷新与重复刷新分开,检查连续调用能否在不改变业务顺序的情况下合并。 3. 对照模板实际使用字段检查 data,移出完全不参与渲染的数据,间接关联字段按当前能力处理。只更新变化字段,避免整体回传所有数据;保留能证明需要刷新的条件,不能为降低次数丢掉真实状态变化。 4. 检查高频变化是否发生在节点很多的大组件中,评估将倒计时、局部状态等拆到职责清楚的小组件。拆分前后比较真实更新开销,避免为了减少单个树规模而产生大量跨组件通信。 5. 检查页面进入后台、重新显示和卸载时的更新行为,处理不必要的定时任务与订阅。恢复显示时补齐业务状态,确保暂停无感刷新不会造成过期价格、错误倒计时或操作对象失效。 6. 使用平台可用的更新性能信息或开发者工具比较修改前后表现。在相同条件下复测滚动、输入、切页和恢复前台,记录耗时分布与操作反馈,同时验证列表数据、排序和业务状态没有变化。 ## 交付与验收 输出:瓶颈证据、更新调用清单、最小改动及前后对比。每项优化写明改变了什么、可能影响的业务和回归方法。无法取得真机数据时标记“待真机验证”,给出采集步骤,不编造帧率提升百分比,也不只凭模拟器流畅就宣布问题解决。 ### 本条完成检查 - 给出瓶颈证据、更新次数与字段体积,区别必要刷新和重复刷新。 - 如实施优化,在同条件比较更新开销,并回归列表、排序、倒计时和前台恢复状态。 - 记录真实设备、网络、数据量与耗时分布,明确未真机验证部分。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序:合理使用 setData》](https://developers.weixin.qq.com/miniprogram/dev/framework/performance/tips/runtime_setData.html)
使用 TDesign ConfigProvider 统一表单、分页、日历、弹窗和空状态文案,完成符合国内政企业务习惯的界面验收。
## 任务目标 请检查当前 Vue 系统的中文界面和组件默认文案是否一致。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 中文界面检查范围:从当前后台页面与共用配置入口开始,检查日期、分页、校验、弹窗和空状态的实际文案;未给页面清单时选择现有列表、编辑和详情各一条真实路径。 工程或界面资料:读取现有 TDesign 依赖、ConfigProvider、局部组件属性、业务词汇及日期金额转换,并使用可访问页面核对显示。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 查清已安装版本的 globalConfig、实际语言配置及局部覆盖,不猜语言包路径。 - 统计同一业务对象在列表、详情、编辑和反馈中的称呼,找出组件默认英文与中文混用。 - 追踪日期时区、金额单位和范围包含关系,分开检查显示格式与接口传输值。 ### 可采用的默认处理 - 默认只读检查并给配置及文案调整建议;明确统一文案时只改约定范围,不改变业务值。 - 通用控件文案归全局配置,业务动作留在对应页面;优先沿用已出现的准确业务名称。 - 无设计约定时保持政企中文布局的对齐、层级和主次操作,不添加营销词或虚构统计。 ### 必须有依据的事项 - 金额单位、时区、日期范围或业务状态名称存在多种合理解释且会影响用户判断,不能只为统一外观选一种。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 仅有源码时交付全局与局部覆盖表、候选词汇差异和具体交互核对步骤。 - 只有截图时提供可见文案与布局修正,日期弹层、校验和分页语言仍标待运行确认。 ## 执行要求 在使用 TDesign 的 Vue 后台中,按当前版本的 ConfigProvider 能力检查全局文案与局部覆盖。中文业务命名和政企页面表达遵循本项目约定,不由组件默认配置代替业务判断。 1. 先统计表单、分页、日期选择、对话框、选择器和空状态使用位置,识别全局配置与页面局部覆盖。查明运行时真实显示的语言,不能只看系统菜单中文就判断基础控件已全部中文化。 2. 对照当前版本的 globalConfig 接口统一常用组件文案。把通用词放到统一配置,把“提交审批”“停用设备”等业务动作留在对应场景;不猜语言包路径或配置字段,不修改组件库的自动生成接口文件。 3. 核对月份、星期、日期占位、确认取消、表单必填和分页数量表达。逐项区分展示格式与接口传输格式,确认时区、日期范围两端是否包含、金额单位及小数位,避免为了统一外观改变实际业务含义。 4. 统一相同业务对象的称呼和状态词,检查列表、详情、编辑与结果提示是否一致。占位提示用于说明输入方法,不能代替字段标签;错误文字需要告诉用户哪一项有问题和如何修正。 5. 检查页面层级、筛选区、表格区和主要操作的位置。保持标签对齐、主次按钮清楚、中文换行自然和信息密度稳定,删除不帮助完成业务的宣传口号、虚构成绩及冗余装饰,保留必要状态和业务说明。 6. 实际打开不同业务页面,操作日期选择、无结果查询、必填校验、分页和弹窗。检查全局修改是否误伤特殊场景,重点验证较长机构名称、低分辨率窗口和加载失败状态,记录截图或可复现路径。 ## 交付与验收 输出:统一词汇表、全局配置及局部覆盖表、需调整的页面清单、验收结果。每项修改说明它改善的具体业务理解或操作;没有页面运行条件时给出待验证清单,不能把静态代码检索结果当作完整视觉验收。 ### 本条完成检查 - 形成统一词汇及全局、局部配置表,说明每项调整解决的业务理解问题。 - 操作日期、分页、必填校验、空结果和弹窗,确认配置生效且特殊场景未被覆盖。 - 检查长机构名、低分辨率和加载失败,静态检索与真实视觉验收分别报告。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯 TDesign《TDesign Vue Next ConfigProvider 类型与接口说明》](https://github.com/Tencent/tdesign-vue-next/blob/develop/packages/components/config-provider/type.ts)
处理 TDesign Dialog 表单弹窗、删除确认等场景中的重复提交、关闭来源、草稿保留和失败恢复。
## 任务目标 请核查当前 Vue 业务弹窗的保存、关闭与异常恢复,使用户能明确完成操作并在失败后继续处理。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 弹窗业务目标:沿当前页面使用的目标弹窗追踪打开、输入、确认和关闭;未描述缺陷时重点检查提交未完成即关闭、失败无法恢复及切换记录残留。 弹窗或接口资料:读取弹窗与父页面、表单、保存接口、状态管理和已安装 TDesign Dialog 类型,从现有逻辑提取草稿及成功后刷新规则。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 确认弹窗唯一任务、对象、visible 所有者和真实请求周期。 - 核对取消、关闭按钮、遮罩和 Escape 的实现及当前版本是否支持异步拦截。 - 检查回车与表单提交重复触发、编辑回填、销毁重建、旧响应和成功后的页面刷新。 ### 可采用的默认处理 - 默认核查并给状态表和必要修正;明确修复要求时在现有组件能力内实现,不额外建立弹窗框架。 - 保存失败保留合理输入并恢复操作,服务端结果未明确前不展示成功或自动关闭。 - 沿用已有草稿和关闭约定,前端提交锁仅防重复触发,不当作后端幂等保证。 ### 必须有依据的事项 - 未保存草稿是否允许丢弃、提交中是否允许关闭缺少业务约定,且实现必须改变当前数据保留行为。 - 接口可能已受理但无返回,缺少幂等或结果查询依据时不能自行再次写入。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 缺源码时交付显示和请求状态、各关闭来源处理及失败恢复方案,组件 API 明确待按版本核对。 - 后端不可用时用隔离的成功、校验失败、延迟和未知结果验证前端处理,真实联调单列。 ## 执行要求 按当前版本的 TDesign Dialog 能力处理显示、加载和关闭事件。业务操作的幂等、授权以及是否允许取消,需要依照项目事实实现。 1. 列出弹窗承担的唯一主要任务、操作对象和完成条件。区分确认删除、编辑保存、结果提示等场景,按钮直接写业务动作;需要说明影响范围时描述真实后果,不使用笼统的“温馨提示”掩盖关键内容。 2. 设计未操作、输入中、提交中、成功、失败等状态,确定谁控制 visible。把确认按钮加载与真实请求周期绑定,避免请求尚未结束弹窗就关闭,或请求失败后按钮一直处于不可用状态。 3. 分别处理取消按钮、关闭按钮、遮罩点击和 Escape。存在未保存修改时按业务约定保留、确认放弃或阻止关闭;不要把返回 void 的动画前回调误当成支持异步拦截的关闭守卫,应检查该版本真实接口能力。 4. 核对回车确认与内部表单提交是否可能同时触发请求。对连续点击、键盘触发和慢请求期间再次操作进行限制;前端限制只减少重复触发,涉及不可重复业务操作时同时核查服务端约定。 5. 明确关闭时是否销毁子内容以及重新打开时如何初始化。编辑另一条记录时清理旧对象、错误提示与异步回调,成功后根据接口实际结果刷新列表或详情;不得把本地假定值直接当成服务器保存结果。 6. 验收焦点进入与返回、键盘操作、长内容滚动、遮罩遮挡和中文按钮长度。模拟业务校验失败、网络中断、延迟响应、重复触发及用户切换记录,检查能否继续编辑或安全返回原页面。 ## 交付与验收 输出:弹窗状态表、每种关闭来源的处理、必要代码修改和验收记录。对接口已受理但客户端未收到结果的情况单独说明确认结果的办法,避免直接再次提交。缺少版本或源码时先给处理方案和待核实 API,不声称组件天然保证全部业务安全。 ### 本条完成检查 - 给出状态表、关闭来源与草稿处理,确认异步守卫采用实际 API 而非动画回调。 - 验证点击与回车重复、失败保留输入、切换记录、旧响应和成功后真实数据刷新。 - 检查焦点进入返回、键盘、长内容滚动及遮挡,分别记录已执行与待联调行为。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯 TDesign《TDesign Vue Next Dialog 类型与接口说明》](https://github.com/Tencent/tdesign-vue-next/blob/develop/packages/components/dialog/type.ts)
围绕服务端分页和批量业务操作,核查 TDesign Table 的行标识、筛选排序、跨页选中、状态反馈与请求结果一致性。
## 任务目标 请根据本次要求,开发或检查 Vue 业务列表的查询、分页与批量操作。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 列表任务:优先检查当前路由或对话指定的查询表格;明确要求新建或修复时按现有接口实施,未明确实现意图时先审查分页、排序和选择的一致性。 列表或接口资料:读取页面、TDesign Table 类型、请求 DTO、列与字典、权限处理和已有测试,从真实响应确定数据结构与总数。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 查稳定业务主键、分页来源、总数与统计范围,识别对服务端单页再次分页或本地排序的问题。 - 核对筛选、页码、排序到请求参数的映射以及旧响应保护。 - 追踪受控选中值、跨页保留、权限变化和批量接口的执行对象及部分失败响应。 ### 可采用的默认处理 - 沿用当前分页与选中约定;没有规则时仅展示和核对当前页记录,不擅自扩大为全查询结果批量操作。 - 使用服务端提供的稳定键和真实总数,未知总数不伪造,状态用文字表达并保留未知原值。 - 缺数据规模时以现有样本验证长文本、固定列和窄屏,不预设虚拟化或性能指标。 ### 必须有依据的事项 - 总数或排序到底对应当前页、全查询结果还是权限范围不清,不能自行确定统计口径。 - 批量动作的当前页、跨页或全量对象范围和部分失败重试规则无法确认,不能实际发起该写操作。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 缺后端协议时交付可确认的列与参数映射、状态和查询竞态方案,未知总数及批量结果留待接口确认。 - 只有接口时提供标明边界的核心前端实现与边界用例,不虚构接口外字段。 ## 执行要求 按当前版本的 TDesign Table 能力实现业务表格。服务器分页、统计口径及权限以本项目约定为准,不把组件默认行为视为业务需求。 1. 先明确列表记录的稳定主键、总数含义、筛选字段、排序范围与分页方式。区分当前页数据、全部查询结果及统计卡片口径,检查页面是否对服务器已经分页的数据再次进行本地分页。 2. 为行指定可靠标识,核对列配置与真实数据类型。日期、金额、状态分别按业务含义展示;长文本提供查看方式,关键标识和主要操作不得被无解释地截断,也不要用彩色标签代替完整状态文字。 3. 将分页、排序、过滤事件映射到接口参数,说明筛选变化后是否回到第一页。处理快速连续查询产生的响应顺序,避免先发后到的旧数据覆盖新条件;查询失败时不得把旧结果伪装成新条件的有效结果。 4. 明确勾选是当前页有效、跨页保留还是针对全部查询结果。使用受控选中值保持组件与业务一致,核对分页保留选中配置;筛选变化、权限变化和数据删除后及时处理失效记录,提交前显示实际操作对象范围。 5. 为首次加载、刷新、空结果、网络失败、无权限和部分操作失败设计可理解的反馈。批量动作完成后同步行状态、数量及选中项,部分失败时给出失败对象与原因,不能只显示一个含糊的“操作成功”。 6. 在实际业务数据长度下验收表头、固定列、横向滚动、列宽和窄窗口。验证分页末页删除、跨页勾选、全部取消、重复点击、排序后勾选保持及筛选后批量操作,同时查看真实请求和服务端返回。 ## 交付与验收 输出:数据口径与参数映射表、表格核心实现、选中规则、状态设计及验收记录。每个缺陷写清触发操作、实际结果、期望结果和修改位置。缺少后端协议时先列出待补充字段,并提供有明确假设的前端方案,不虚构总数或批量执行结果。 ### 本条完成检查 - 输出数据口径、请求映射、稳定键及选择规则;实施时提供对应核心代码。 - 验证末页删除、排序后选择、跨页选择、筛选变化、连续请求和权限变化。 - 核对批量执行的真实对象、成功失败明细及刷新后数量,检查固定列、滚动和中文内容。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯 TDesign《TDesign Vue Next Table 类型与接口说明》](https://github.com/Tencent/tdesign-vue-next/blob/develop/packages/components/table/type.ts)
将业务字段、校验和保存状态落到 TDesign Form,检查动态字段、异步校验、重置语义以及失败后的可恢复操作。
## 任务目标 请根据已知业务流程和字段契约,开发或审查本次 Vue 业务表单。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 表单任务:从当前页面的新建或编辑入口识别业务表单,先对照字段与保存契约审查;用户明确要求开发或修复时,继续完成规则已明确的实现。 表单或字段资料:查页面、接口请求与响应、类型、字典、权限、回填代码和现有测试,按已安装版本读取 TDesign Form 能力。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 提取字段类型、必填条件、长度范围、默认值、清空语义、只读条件与提交名称。 - 检查 Form 数据、FormItem 名称、validate 返回值、远程唯一性及过期响应处理。 - 追踪新增编辑详情、初始快照、隐藏字段、重置和失败恢复,核对实际请求中的日期金额枚举。 ### 可采用的默认处理 - 优先复用现有字段规则和接口,不凭必填星号推断业务约束,明确区分 0、false、空字符串与未提供。 - 初次进入不集中报错,按现有交互使用输入、失焦及提交校验;明确通过后才保存。 - 提交失败保留合理输入,前端防重不代替后端校验和授权;未要求开发时默认不改业务表单。 ### 必须有依据的事项 - 隐藏或清空字段是否参与提交、金额日期转换或新增默认值缺少真实业务定义,不能随意补值或删除。 - 字段修改权限及远程唯一性失败的业务处理无法确定时,不能自行放行保存。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 规则不全时先完成已知字段表、布局、状态处理和测试设计,将影响保存的未决项集中列出。 - 没有工程但接口明确时提供可检查的核心组件和请求示例,真实版本与联调结果注明待验证。 ## 执行要求 按当前版本的 TDesign Form 能力实现表单,字段权限、数据提交和重复操作处理须与本项目业务规则一致,不能只依赖组件默认行为。 1. 先把每个字段的业务含义、类型、必填条件、默认值、长度或范围、只读条件及提交名称整理成表。区分空字符串、零、false 和未提供,尤其说明编辑时哪些字段允许清空,不能凭视觉上的必填星号推断规则。 2. 对照实际版本配置 Form 数据、FormItem 字段名称和校验规则。需要跨字段判断时明确关联关系;条件隐藏字段要明确是否保留旧值、是否参与校验和提交,不能让看不见的字段持续阻止保存。 3. 设计校验触发时机,区分输入变化、失焦和提交。正确处理 validate 或提交事件的校验结果,只在明确通过时调用保存接口;远程唯一性校验需要识别过期响应,不能把网络超时当成字段已经可用。 4. 区分新增、编辑、详情状态,确定“重置”是清空还是恢复初始数据,并使用对应能力。异步加载编辑数据后核对初始值快照,再次打开表单时不得出现上一条记录的值或错误提示。 5. 完成保存中的按钮状态、重复触发处理、成功反馈和接口失败反馈。字段错误落在对应输入项,整体失败保留已填写内容并给出恢复方法;前端状态限制需要与服务端业务校验一致,不能代替服务端授权。 6. 逐项验收正常提交、缺失必填、边界值、非法格式、动态条件切换、远程校验失败、重复点击、回车提交及重置。验证日期、金额和枚举转换后的实际请求数据,禁止只看页面显示就断言数据正确。 ## 交付与验收 输出:字段规则表、状态与交互表、核心组件代码、请求示例、验收记录。代码缺失时说明推断范围;规则不明确时列出影响保存的待确认项,先完成不依赖这些项的结构,不自行编造业务枚举和接口字段。 ### 本条完成检查 - 交付字段规则、隐藏重置策略、表单状态、核心代码或审查缺陷及请求映射。 - 验证缺失、边界、非法格式、条件切换、远程校验失败、重复点击、回车和记录重开。 - 以实际请求核对日期、金额、枚举及空值,不能只看显示或组件校验通过判断业务正确。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯 TDesign《TDesign Vue Next Form 类型与接口说明》](https://github.com/Tencent/tdesign-vue-next/blob/develop/packages/components/form/type.ts)
核查 TDesign Vue Next 的组件引入、基础样式、构建体积和浏览器兼容,适合 Vue 3 企业后台初始化或接入复核。
## 任务目标 请为当前 Vue 3 系统制定 TDesign Vue Next 接入方案,或复核已有接入。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 组件库接入目标:有 TDesign Vue Next 时复核现有注册、样式和产物;已明确要求接入时按当前业务页面使用比例选择最小方案,无明确迁移需求则不替换已有组件库。 工程或页面资料:读取 Vue 工程入口、路由、package.json、锁文件、自动导入及样式配置,复用现有浏览器支持和构建脚本。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 确认桌面 Vue 3 适用范围、现有组件库、常用控件及重复能力。 - 核对注册方式、解析器、函数式调用和全局样式加载,确认现有按需方案是否完整。 - 读取构建和目标浏览器配置,检查生产资源、外部脚本版本及样式重置的布局影响。 ### 可采用的默认处理 - 默认复核已有接入,不因提示词出现 TDesign 就迁移 Vue 2、小程序或其他组件库。 - 优先保留能正常工作的全量或按需方式,无产物收益证据时不加自动导入插件。 - 采用锁文件中的兼容版本和既有业务页面验证,缺体积基线只记录当前产物,不填提升比例。 ### 必须有依据的事项 - 当前技术栈与桌面 Vue 3 TDesign 不兼容,而达成目标需要未经明确要求的框架或组件库迁移。 - 新库必须支持的目标浏览器或关键控件行为与现有约束冲突,无法据工程确定取舍。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 没有工程时交付最小接入示例、注册和样式检查点,注明仅适用桌面 Vue 3。 - 没有构建或浏览器环境时给涉及文件与验证命令,首次弹窗、直达刷新及产物兼容标为待测。 ## 执行要求 接入范围限定为桌面端 Vue 3 与 TDesign Vue Next。项目使用 Vue 2、其他组件库或小程序时,先指出不适用部分,不直接替换工程依赖。 1. 确认真实入口、路由、样式加载顺序、组件使用比例和目标浏览器。列出已有组件库及重复能力,判断采用 TDesign 是新增统一组件还是局部接入,避免同一业务控件在不同页面出现多套行为。 2. 按实际使用范围选择全量注册、显式按需引入或自动导入。说明选择依据与维护成本,不把按需引入当成无条件要求;只有产物分析能证明收益时,才为体积目标增加相关插件。 3. 核对包版本、解析器和构建插件,使用项目锁文件固定可复现依赖。检查生产构建是否依赖未固定版本的外部脚本或样式;需要外部资源时列明来源、版本和不可用时的业务影响。 4. 确认基础全局样式已加载,检查自动导入是否同时处理组件和函数式调用。对输入框、选择器、表格、弹窗各做一个真实页面引用,识别缺样式、重复样式、组件未注册及编辑器提示失效等问题。 5. 复核样式重置与现有布局的关系,特别检查盒模型、弹层、滚动区域和中文标签。使用有业务含义的页面内容,不增加装饰性标语、虚构统计数据或大面积炫光;布局保持对齐、层级清楚、操作集中。 6. 通过项目既有构建命令生成产物,检查包体、资源请求和相关浏览器中的真实页面。分别记录首屏正常、路由切换、按需弹窗首次打开及刷新后直达页面的结果,失败时保留具体报错和复现路径。 ## 交付与验收 输出:接入方式及理由、涉及文件与配置、依赖版本、产物对比、页面验收结果。性能结论必须包含实测条件;缺少基线只给采集方法。无法运行时,标记所有待验证项并提供最小接入代码,不虚报浏览器兼容或上线完成。 ### 本条完成检查 - 明确接入方式、理由、版本、文件和样式入口,检查组件及函数式调用均可用。 - 用真实页面覆盖输入框、选择器、表格和首次弹窗,排除未注册、缺样式和重复样式。 - 执行生产构建并记录资源与浏览器页面检查,首屏、切路由和刷新直达分别报告。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯 TDesign《TDesign Vue Next 安装与使用》](https://github.com/Tencent/tdesign-vue-next/blob/develop/packages/tdesign-vue-next/site/docs/getting-started.md)
为现有 Vue 工程制定兼容当前工具版本的规范检查方案,区分新增问题、历史问题与业务修复,保持本地和持续集成检查一致。
## 任务目标 请为当前 Vue 工程接入或审查前端规范检查。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 规范治理范围:优先检查当前变更涉及的 Vue 文件与已有规范配置;没有改动清单时先盘点实际生效规则和代表模块问题,明确要求接入或治理后再实施范围内修正。 工程或规范资料:读取依赖及锁文件、ESLint 与格式配置、Vue 单文件组件、提交钩子、CI 和已提供检查日志,自行识别版本兼容关系。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 核对 .vue 模板与脚本解析器、JS/TS、ESLint flat/legacy 配置及实际检查范围。 - 查阿里规则包的真实导出和依赖要求,分清已有约定、公开规则与项目补充。 - 比较业务源码、测试、生成文件的排除方式及本地、提交前、CI 命令是否一致。 - 运行可用的非自动修复检查,将行为风险、维护问题和格式差异按模块归并。 ### 可采用的默认处理 - 默认只读审查配置和问题;明确治理时仅修当前范围,保留未提交工作,不整仓格式化。 - 沿用兼容的版本及格式方案,不为接入品牌规则包而叠加工具,不猜不存在的 Vue 配置导出。 - 生成产物可合理排除,真实业务代码不能扩大 ignore 掩盖;历史告警与新增问题分开处理。 ### 必须有依据的事项 - 现有团队规则互相冲突或所谓格式修复会改变业务输出,而工程没有依据决定应采用的行为。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 只有配置时交付兼容性差异、最小接入草案及目标文件覆盖核验方法。 - 没有执行环境时给真实可核对的配置建议与命令,不声称规则已经生效或扫描通过。 ## 执行要求 先核对当前 Vue 工程、现有工具及待接入规则包的兼容关系,不预设不同版本提供相同导出,也不把 React 专属规则应用到 Vue。 1. 读取依赖清单、锁文件、构建入口、Vue 单文件组件和现有检查配置,列明实际版本与已生效的规则。先确认解析器能处理模板、脚本和 TypeScript,再判断需要增加什么,避免重复安装同类工具。 2. 核对阿里规则包的实际导出、依赖范围和接入示例。选择与本工程兼容的接入方式,说明哪些使用公开规则,哪些沿用已有约定,哪些是本次业务补充。资料无法证明的 Vue 配置名称不要猜写。 3. 把检查范围划分为业务源码、测试、配置和生成产物。对生成文件及构建目录合理排除,对真实业务文件保留检查,避免用大范围忽略掩盖新增问题。检查提交前脚本是否会修改不在本次任务中的文件。 4. 运行已有检查并建立问题清单,按潜在行为错误、可维护性问题和纯格式差异区分。逐项指出具体文件和触发规则;同一根因合并解释,不把所有告警都列为高风险故障。 5. 先处理改动范围内问题,保持接口、页面文字和业务计算结果稳定。对需要改变运行行为的修复写明输入、原结果和新结果,不能混在批量格式化中。历史问题按模块安排,避免一次扫描演变成整库重写。 6. 检查本地与持续集成采用的版本、命令和文件范围是否一致。复核自动修复后的差异,针对涉及行为的改动运行相关测试和页面操作;只调整格式时不额外编写与实现重复的测试。 ## 交付与验收 输出:环境与适用规则表、最小配置改动、按模块归类的问题、实际执行结果和未解决项。每个结论标明已验证或待验证,不能用“扫描完成”代替“检查通过”。没有代码或执行环境时,给出可落地配置方案及需要补充的最少信息,不声称已经接入。 ### 本条完成检查 - 列出环境、实际生效规则及适用边界,确认模板、脚本和本次业务文件进入检查。 - 交付按模块归类的问题与最小配置改动,行为修复说明前后结果,格式修复不夹带业务变化。 - 复核最终差异及本地与 CI 一致性,给实际执行结果、历史失败和剩余项,不以扫描完成替代通过。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [阿里巴巴《阿里巴巴前端规约:ESLint 配置说明》](https://github.com/alibaba/f2e-spec/blob/main/packages/eslint-config-ali/README.md)
用于网络波动、主备切换和写命令超时,明确结果未知、可重试边界及重复执行后果。
## 任务目标 请审查 Redis 客户端的超时重试策略,并设计符合业务语义的幂等处理。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 重试业务:从当前问题或代码中识别使用 Redis 重试的业务操作;留空时优先检查递增、入队或带过期语义的写入,选一条有客户端和业务双层重试的完整链路。 代码与故障资料:读取 Redis 客户端依赖、连接与命令超时、业务重试封装、请求总时限和已有异常样本,版本与方法语义从实际工程确定。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪客户端、Service、网关与任务层的重试入口及次数。 - 识别命令执行、响应接收和业务确认的边界,找结果未知的处理代码。 - 核对业务请求标识、判重记录、保留期、结果查询及并发覆盖条件。 - 读取现有故障测试和每层超时配置,计算最坏请求次数及总耗时。 ### 可采用的默认处理 - 默认只读形成命令重试决策,不直接调整重试次数或扰动 Redis 连接。 - 无法判断是否执行的写操作归为结果未知,不按连接异常一律重发。 - 缺负载数据时按已知总时限列预算公式与停止条件,不指定所谓通用最优退避值。 ### 必须有依据的事项 - 重复执行对计数、队列、费用或过期时间的业务后果不明时,不认定该写操作可以安全重试。 - 业务请求唯一性、判重有效期或超时后的合法恢复动作缺少依据时,不承诺端到端幂等。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无代码时交付按命令语义分类的重试决策样例,以及多层放大和时间预算的计算模板。 - 无故障环境时提供发送前断开、执行后丢响应和并发旧值覆盖的隔离桩测试方案。 ## 执行要求 适用范围:Redis客户端重连与业务重试;先确认客户端及版本,连接重试和命令重试分开处理。厂商示例参数不能当作本项目推荐值。 将命令已执行但响应超时纳入分析,审查重试的幂等性,并防止多层重试放大请求。 检查步骤: 1. 列出哪些异常发生在连接、发送、执行或接收阶段,按现有证据区分确定未执行、确定执行和结果未知;网络超时本身不能证明写操作没有成功。 2. 逐条按业务结果审查命令重复执行的影响,特别检查递增、入队、计费和带过期语义的写入;即使命令形式相同,也要评估并发新值被旧请求覆盖的风险。 3. 追踪客户端、业务方法、接口网关和任务调度层是否各自重试,计算最坏请求次数与总耗时;为每个操作指定唯一的重试责任层。 4. 为可重试操作定义总期限、次数、退避及随机扰动,结合剩余预算和业务重要性决定何时停止;参数待压测时给出推导方式,不编造固定最优数值。 5. 对非幂等或结果未知的操作,设计业务请求标识、状态查询或对账路径,说明判重记录的生命周期与故障边界;不得仅套一把锁就宣称端到端恰好执行一次。 6. 仅在隔离测试环境或已明确授权的生产演练中验证发送前断开、执行后丢响应、主备切换及连续失败;优先使用代理或桩模拟故障,不扰动普通生产连接,记录业务动作次数、最终状态、请求耗时和重试放大量;验证恢复后积压不会再次冲击系统。 ## 交付与验收 输出要求:交付命令重试决策表、重试责任与预算、最小代码或配置、结果未知处理流程及故障用例。决策表写明“可重试条件|重复后果|停止条件|人工或自动对账入口”。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 每类操作明确可重试条件、重复后果、责任层、总预算和停止条件。 - 结果未知有业务标识与查询或核对路径,不能仅以锁或重连成功证明幂等。 - 测试核对业务动作次数、最终状态和重试放大量;未执行的故障注入不写已验证。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里云《Tair:客户端重试指南》](https://help.aliyun.com/zh/redis/use-cases/retry-mechanisms-for-redis-clients) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
排查 Jedis 借用等待、连接池耗尽和连接增长,结合应用规模、命令耗时及实际版本评估参数。
## 任务目标 请排查 Redis Jedis 连接池容量和资源泄漏问题。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 连接池问题:从当前报错定位 Jedis 池或借还连接方法;没有指定时优先扫描直接借用 Jedis 的业务路径和共用连接池,检查异常与提前返回能否归还。 工程与连接记录:从依赖树、连接池配置、借还代码和已有池指标、异常记录获取资料,自动核对 Jedis 与 Commons Pool 的真实版本及参数单位。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 查找 getResource、close、try-with-resources、提前返回及跨线程持有 Jedis 的路径。 - 读取 maxTotal、等待和空闲检测等实际参数定义及版本默认值。 - 汇总应用实例、业务池和分片数量,关联服务端连接限制与已有活跃、空闲、等待指标。 - 区分借用等待、建立连接和命令执行超时,查看慢命令或长任务占用证据。 ### 可采用的默认处理 - 默认只读检查资源生命周期,不扩大连接池、不重启应用或更换依赖。 - 缺 QPS 或耗时数据时先交付连接预算公式和需要观测的占用时间,容量值标待测。 - 按工程版本解读 API 与时间单位,不照搬 Jedis 2.9.0 示例参数或默认值。 ### 必须有依据的事项 - 目标业务的请求完成期限或允许等待时间无法确定时,不擅自改变借用超时与失败行为。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无工程时提供正常、异常、提前返回与批处理的资源生命周期审查样例及版本核对入口。 - 无池指标时交付连接总预算表和最小观测方案,区分泄漏、慢占用与容量不足的证据。 ## 执行要求 适用范围:Jedis连接池及Commons Pool管理的客户端;官方页面示例基于Jedis2.9.0,必须核对实际版本API和默认值,不将该示例作为依赖升级建议。 结合应用规模、命令耗时和服务端限制评估池大小,核对借用资源是否归还;池耗尽不一定需要扩容。 检查步骤: 1. 准确区分连接建立失败、借用等待超时、连接已耗尽与命令执行超时,按首次出现时间关联应用发布、流量和数据库资源,避免把所有异常都解释为池太小。 2. 逐一核对正常、异常、提前返回和批处理路径中的资源归还,检查是否把Jedis实例跨线程共享或在长任务中持有;提出能定位泄漏的最小观测方式。 3. 统计每个应用实例、业务池与分片的连接总量,包含扩容、滚动发布时并存的实例,计算与服务端连接限制的关系,并保留必要余量。 4. 根据实际命令耗时与到达率估算所需并发连接,核对等待上限、空闲连接及检测配置;参数名称和时间单位必须匹配版本,不直接复制旧文档默认值。 5. 检查慢命令、网络、DNS和下游阻塞是否延长占用,分别说明调整池容量与消除根因的效果;需要预热时评估启动期间的集中建连压力。 6. 在代表性流量下验证借用等待、活跃连接、空闲连接、错误和服务端负载,覆盖突发、节点故障与恢复;记录每次配置变更和可撤回的旧值。 ## 交付与验收 输出要求:输出异常分类、资源生命周期、连接预算、参数建议及验证结果。参数表使用“当前值|版本依据|建议值或区间|推导条件|验证指标”,不得只给一组所谓通用最优参数。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 每个疑似泄漏关联借用者、持有路径、归还位置和可复现条件。 - 容量建议包含实例与分片总量、服务端限制、当前值、推导条件和待测指标。 - 不把池耗尽直接判为池过小,实测与静态风险分开报告。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里云《JedisPool资源池优化》](https://help.aliyun.com/zh/redis/use-cases/jedispool-optimization) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
用于热点商品、看板、配置和排行榜访问集中,区分读热点与写热点并验证一致性。
## 任务目标 请定位 Redis 热 Key 流量,并评审访问分散方案。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 热点业务:从当前问题或已有访问采样中选择集中访问的业务对象;没有热度证据时从调用代码识别热点候选,先建立观测窗口,不将大 Key 直接认定为热 Key。 工程与访问资料:读取 Key 生成与访问代码、缓存更新和回源链路、实例拓扑以及已有采样和监控记录,自动确认客户端、分片与可用观测能力。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 关联业务入口、Key 模式、读写调用和单 Key 所在分片。 - 读取同一时间窗口的访问频率、响应体大小、读写比例及集中来源。 - 追踪本地缓存、请求合并、TTL、更新失效和数据库回源策略。 - 核对实例类型与客户端能力,区分单 Key、单分片和全实例容量压力。 ### 可采用的默认处理 - 默认只读定位与方案评审,不复制热点数据、改分片或启用读写分离。 - 没有实测时只列热点候选及有预算的采样方法,收益作为待验证假设。 - 一致性要求未知时保留现有读取路径,缓存副本和本地短缓存仅作为附条件候选。 ### 必须有依据的事项 - 状态、库存、权限等读取是否允许陈旧及可容忍时间没有依据时,不选择牺牲一致性的分流方案。 - 热点缓存失效后的权威来源或业务失败行为不明时,不把无限回源或成功空结果当成降级。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 没有流量记录时交付热点证据采集表和单 Key、分片、实例压力的判别流程。 - 提供请求合并、限流、本地缓存与副本的条件对比,以及热点切换和更新失败的测试矩阵。 ## 执行要求 适用范围:Redis或Tair的访问热点处理;Key大小与访问热度分别判断。控制台能力和读写分离方案须核对实际实例类型与业务一致性要求。 定位单个 Key 所在的具体分片;选择热点复制或读写分离时,评估相应的一致性代价。 检查步骤: 1. 以业务入口和时间窗口确认访问集中在什么对象,区分单Key高频、单分片集中与全实例容量不足;离线数据大小不能作为访问频率的证据。 2. 结合应用采样与已有实例指标识别真正热点,记录读写比例、响应体大小、请求集中来源及下游行为;采集本身要有资源预算,避免无限记录所有请求。 3. 区分可短暂陈旧的读取与必须保持最新的状态决策,说明缓存未命中或热点失效时的回源承载量;写热点不要用只读扩容冒充解决方案。 4. 比较请求合并、业务限流、本地短缓存、热点副本或业务拆分,分别列出适用前提、更新成本与失败行为;不默认采用所有方案,也不只计算理论吞吐。 5. 为候选方案定义缓存更新、版本识别、失效与恢复流程,说明多副本之间可能短暂不一致时用户会看到什么,以及如何避免旧值长期残留。 6. 用正常流量、突发热点、热点切换和更新失败验证效果,记录单分片压力、用户延迟、错误和回源次数;上线先覆盖可控业务范围,保留快速撤回方案。 ## 交付与验收 输出要求:输出热点证据、读写分类、候选方案对比、流程与验证矩阵。结论必须说明获得的容量改善与牺牲的一致性或复杂度,未经实测的收益仅作为待验证假设。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 热度结论有对应时间窗口和分片证据,读热点与写热点分别处理。 - 候选方案明确失效更新、旧值退出、回源压力和一致性代价。 - 测量覆盖延迟、错误、分片压力和回源次数,未经测量不写容量提升数字。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里云《Tair:大Key和热Key》](https://help.aliyun.com/zh/redis/user-guide/identify-and-handle-large-keys-and-hotkeys/) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
从业务访问和数据生命周期设计 Key、值结构、过期、淘汰与集群分布,区分产品建议与 Redis 的硬限制。
## 任务目标 请根据业务访问和数据生命周期设计 Redis Key、缓存策略及数据结构。 交付能用于评审或后续实施的具体方案、规则与样例;未要求实施的部分不声称已经落地。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 缓存业务:从当前需求与代码选择一个有明确读取、更新和恢复来源的缓存对象;留空时优先整理已有 Key 的命名与生命周期,不凭空新增缓存业务。 工程与数据资料:读取 Key 构造、序列化、TTL、更新失效和回源代码,以及实体、查询、客户端依赖与 Redis 拓扑配置,自动归纳数据规模和版本边界。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 识别 Redis 是可重建缓存还是唯一存储,追踪每类数据的权威来源。 - 盘点 Key 前缀、实体与租户维度、数据结构、序列化格式和多 Key 操作。 - 读取创建、续期、删除、失效失败及缓存未命中的处理路径。 - 核对单机、哨兵、原生集群或代理模式,检查 hash tag 与集合增长边界。 ### 可采用的默认处理 - 默认输出设计和兼容方案,不清理现有 Key 或改淘汰策略。 - 已有数据源、格式和拓扑优先;未知 TTL 不填固定值,以生命周期依据决定后再落值。 - 不默认引入 Tair 专有数据结构或不存在的租户维度;容量未知则按字节与增长量列估算式。 ### 必须有依据的事项 - 权威数据源和数据丢失后的可恢复性不明时,不能定义自动过期或淘汰后的业务结果。 - 读取一致性与租户或组织归属未确定时,不给可能串数据或改变状态决策的缓存共享规则。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无工程时交付 Key 字典、数据结构选择和生命周期表的可填写示例,明确哪些字段待业务确认。 - 提供首次回源、更新失败、格式升级、多 Key 限制和容量增长的验收用例。 ## 执行要求 适用范围:开源Redis或Tair兼容场景;需要明确单机、哨兵、原生集群或代理模式。Tair增强数据结构不作为开源Redis默认功能。 检查 Key 与值的规模、序列化及集群分布,避免命名或 hash tag 造成倾斜。 检查步骤: 1. 明确Redis在该业务中承担可重建缓存还是唯一数据存储,逐项列出数据丢失、淘汰和节点故障后的业务后果,只有明确恢复来源后才能制定缓存失效策略。 2. 按读取、更新、批量访问和统计需要选择数据结构,说明单个对象与集合边界;估算一条记录、一个Key和全年增长的规模,不用条数代替内存字节数。 3. 给出Key命名表,覆盖业务前缀、环境、版本、实体标识及实际存在的租户维度;控制可读性与长度,避免把敏感信息直接作为可见Key。 4. 设计过期、续期、失效和淘汰后的处理,检查批量同刻过期是否会集中访问权威存储;缓存写入或失效失败时明确业务结果,不把命中率当作一致性保证。 5. 核对多Key操作在目标拓扑中的限制,以及hash tag能否导致大量对象聚集在同一分片;如需序列化升级,规划新旧格式的读取和退出顺序。 6. 生成正常读取、首次回源、更新失败、缓存缺失及容量增长的验证样例,观察延迟、回源量和内存变化;把文档建议阈值与当前业务实测限制分开展示。 ## 交付与验收 输出要求:输出Key字典、数据结构方案、生命周期表、失败行为、容量估算与验收用例。字典需含示例、值定义、过期依据、增长上限、拥有模块和兼容策略,不填写未经测量的性能收益。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - Key 字典含值语义、拥有模块、过期依据、增长边界和新旧格式兼容。 - 生命周期说明缓存缺失、淘汰、更新失败与恢复来源,不以命中率代替一致性。 - 多 Key 与分片结论匹配真实拓扑,容量估算和实测数据清楚区分。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里云《云数据库 Tair(兼容 Redis)开发运维规范》](https://help.aliyun.com/zh/redis/use-cases/development-and-o-and-m-standards-for-apsaradb-for-redis) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
针对报表与高频读取设计路由,明确写后读、事务和复制延迟下的业务结果。
## 任务目标 请设计 MySQL 读写分离方案,并核对各类读取的一致性要求。 交付能用于评审或后续实施的具体方案、规则与样例;未要求实施的部分不声称已经落地。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 读写业务链:从当前需求或事务后查询入口识别目标;留空时优先检查写后回显、状态确认和列表查询三类已有读取,按业务后果形成路由分级。 工程与路由资料:读取数据源、代理和驱动配置、事务代码、路由注解或拦截器及已有复制延迟记录,自动确认连接入口和数据库拓扑。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 沿写入提交到立即回读、跨请求查询和分页查询追踪连接与目标节点。 - 读取数据源选择、代理路由、事务绑定与连接复用机制。 - 查找库存、权限和状态判断使用的查询,关联业务可见性要求。 - 读取延迟、只读节点故障和主库压力的既有指标与降级代码。 ### 可采用的默认处理 - 默认交付路由设计,不直接切换数据源或调整代理权重。 - 无法确定可容忍陈旧的读取保留现有路径;新候选不自动分流到只读节点。 - 延迟阈值和回流容量未测量时给观测及估算方法,不把阿里云代理规则套到其他实现。 ### 必须有依据的事项 - 写后读取、权限、库存或状态决策能否容忍旧数据的业务要求不明时,不决定分流与延迟边界。 - 节点异常时允许拒绝、延迟展示还是回流主库没有业务依据时,不默认以成功空数据降级。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 没有实际拓扑时交付业务一致性分类、附前提的路由候选及写后读取测试设计。 - 没有可用数据库时给记录实际访问节点与可见时间的方法,故障注入仅列为隔离验证计划。 ## 执行要求 适用范围:具备主库、只读实例或数据库代理的MySQL系统;阿里云代理路由规则须匹配实际版本,其他代理与应用自行路由应独立验证。 使用 RDS 代理分流读取时,核对事务、DDL 等请求的专门路由规则。 检查步骤: 1. 将查询按业务后果分类,分别记录必须看到刚写结果、可接受短暂陈旧和纯历史统计的场景,给出业务能接受的延迟边界,不能用统一延迟数字替代业务判断。 2. 绘制每条链路的连接入口和目标节点,包含事务、批任务、后台管理与故障处理;核对真实配置和调用结果,不能仅凭“只读”方法名称认定已访问从库。 3. 检查提交后立即查询、跨请求查询、分页和状态确认的行为,说明复制落后时用户可能看到什么;对状态决策、库存或权限判断列出需要的保证。 4. 比较代理路由、应用显式路由和保持主库查询的候选,明确驱动连接复用、事务绑定及路由切换的限制;不为了分担读压力把所有查询都切到只读节点。 5. 定义只读节点延迟过高、失联或容量不足时的降级,计算回流主库可能增加的压力;将限流、延迟展示和主库读取的业务影响分别说明。 6. 写入后读取、延迟注入、节点故障和恢复场景只在隔离测试环境或已明确授权的生产演练中验证,普通线上审查只采集已有指标;记录实际节点与数据可见时间;优化验收同时检查业务一致性和主库、只读节点的负载。 ## 交付与验收 输出要求:输出业务一致性分级、路由表、失败处理矩阵、配置修改范围和验收用例。每条路由列出触发条件、目标节点、可见性要求及降级方式;新增数据库字段必须附详细中文注释。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 每条路由对应触发条件、目标节点、事务限制、可见性要求和失败处理。 - 验证不只看读库负载,还核对写后可见、分页和状态决策的业务结果。 - 降级说明主库回流压力及限制,版本专属能力和未验证配置明确标注。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里云《RDS MySQL:什么是读写分离》](https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/what-is-read-or-write-splitting/) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
针对实际查询和数据分布评审索引、扫描范围及写入成本,避免只优化一条SQL却拖慢整体。
## 任务目标 请评审 MySQL SQL 与组合索引的上线方案。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 查询与索引:优先采用当前慢查询或待改 SQL;留空时从目标模块的高频列表、关联与分页语句中选取有执行计划或调用证据的一组查询,保留未改索引的基线。 工程与查询资料:从 Mapper XML、迁移 DDL、现有索引和测试样例读取 SQL 与绑定参数,结合已有执行计划、查询指标及数据库版本信息展开审查。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪查询对应的业务过滤、租户权限、排序稳定性与最大结果量。 - 读取字段与绑定参数类型、现有组合索引及其被哪些 SQL 使用。 - 对照代表性参数、已有执行计划和数据分布,识别热门值、空值与深分页差异。 - 检查候选索引对写入、存储和其他查询的影响,以及已有迁移审查方式。 ### 可采用的默认处理 - 默认只读评审,输出候选 SQL 和最小 DDL,不实际创建或删除索引。 - 缺计划和分布时先审查语义、类型及索引复用,性能结论保持条件化,不执行可能有成本或副作用的实际分析。 - 保留权限过滤、稳定排序及不改索引的基线,不自动接受云平台优化建议。 ### 必须有依据的事项 - 查询应返回的数据范围、排序或分页业务含义无法确定时,不采用可能改变结果的 SQL 改写。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 只有 SQL 时交付语义与类型检查、附前提的候选索引及获取代表性执行计划的方法。 - 无 SQL 时提供参数分布、索引复用与读写成本的评审表和同数据负载的对比用例。 ## 执行要求 适用范围:MySQL表与查询,具体优化能力以MySQL版本及存储引擎为准。阿里云自动优化是有产品前提的可选能力,不默认启用。 结合实际 SQL 评审索引,检查局部优化是否会使全局性能变差。 检查步骤: 1. 明确查询要返回的业务数据,记录租户或权限条件、排序稳定性、分页方式和最大结果量;先核对SQL语义,不能为速度删掉业务过滤条件。 2. 检查字段类型与参数类型是否一致,梳理等值、范围、关联和排序的组合;索引是否有效以目标版本计划验证,不把函数、非等值等语法一律认定无索引可用。 3. 读取现有计划和代表性参数,比较估算行数、实际可得的扫描信息及返回量;数据分布未知时提出采样方法,说明空值、热门值和历史数据可能改变选择性。 4. 提出最少数量的候选索引与改写方案,逐项说明服务哪些高频SQL、可否复用已有索引以及对写入和空间的影响;保留不改索引的基线方案。 5. 在相同数据与负载下比较正常参数、极端参数和深分页场景,核对返回结果一致;除目标查询延迟外,观察更新耗时、并发吞吐和资源使用。 6. 给出上线顺序、观察窗口及回退条件,索引创建与删除分开说明;如果有DAS建议,先判断其证据和适用范围,不把平台建议直接当成已批准变更。 ## 交付与验收 输出要求:按SQL清单、证据、候选方案对比、最小DDL和验证计划输出。所有性能结论给出测量条件,未执行的优化只写预期;新增字段时必须补齐详细中文COMMENT。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 候选索引逐一关联服务的 SQL、复用机会、写入和空间代价。 - 验证结果集与权限一致,再比较正常、极端参数和深分页的性能。 - 建议注明版本、数据与测量条件,创建删除分别评估,未执行 DDL 不表述为已优化。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [腾讯云《云数据库 MySQL 使用规范》](https://intl.cloud.tencent.com/zh/document/product/236/13390?lang=zh) [阿里云《RDS MySQL 自动SQL优化》](https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/use-the-automatic-sql-optimization-feature-for-an-apsaradb-rds-for-mysql-instance) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
从业务实体、关系和访问需求形成可评审的表结构,所有新字段必须有详细中文注释。
## 任务目标 请完成 MySQL 业务建模和详细字段设计。 交付能用于评审或后续实施的具体方案、规则与样例;未要求实施的部分不声称已经落地。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 建模业务:从当前需求、页面字段和现有实体识别需要新增或整理的数据对象;留空时优先补齐已有业务表的实体关系与字段字典,不凭空设计新的业务模块。 需求与表结构资料:读取当前工程的实体、DTO、Mapper、迁移 DDL、表注释、查询样例和状态定义,自动确认 MySQL 版本、字符集与迁移方式。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 将业务实体、关系、当前状态和历史明细对应到现有表与写入路径。 - 核对主要查询、唯一性、租户或组织范围以及删除和保留行为。 - 读取字段单位、精度、空值、默认值、状态枚举和历史数据兼容约定。 - 从项目配置与迁移脚本确认方言、字符集、排序规则及结构变更方式。 ### 可采用的默认处理 - 默认交付设计与 DDL,不在数据库执行结构变更。 - 复用现有命名、主键、字符集与迁移约定;未确认的唯一性和必填关系不写成生效约束。 - 金额、累计量和未知值保留真实语义;新表和新字段均提供详细中文注释,容量未知用估算条件表达。 ### 必须有依据的事项 - 实体之间的基数、业务唯一性、状态含义或删除保留规则无法确定时,不擅自固化唯一键与约束。 - 金额单位、精度边界或实际存在的租户权限归属不明时,不给可直接落库且可能改变业务含义的字段定义。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 缺需求细节时先从已有 DDL 交付字段字典、关系疑点与注释补全建议,未确认关系保持候选。 - 既无工程也无业务材料时交付带详细注释的独立建模示例及实体到查询的设计表,注明不是实际业务结构。 ## 执行要求 适用范围:MySQL业务库设计;目标版本、字符集及部署方式以输入为准。DMS流程仅供有相应产品条件的项目采用,自建库可使用现有迁移工具。 上线前审核 SQL;使用 DMS 结构设计时,核对多环境结构一致性。 检查步骤: 1. 先梳理业务实体、实体关系、生命周期和唯一性,区分当前状态、明细记录和历史事实,明确哪些数据必须长期保留,哪些可以归档。 2. 根据真实查询和写入路径确定表的边界,列出需要联查的对象以及是否存在租户或组织隔离;未确认的业务关系不能直接写成唯一键或非空约束。 3. 建立字段字典,说明业务含义、类型长度、单位、精度、是否为空、默认值和枚举值;金额、比例和累计量按业务范围计算精度,未知值不能随意填零。 4. 生成DDL时为每张表写中文注释,并为所有新字段写详细中文COMMENT,包含含义、单位或枚举、空值与默认值语义;禁止只重复字段名充当注释。 5. 把主键、唯一约束及索引分别关联到业务规则和代表性SQL,评估写入成本、历史重复数据及兼容性;不要仅凭字段名称批量添加索引。 6. 给出开发、测试、生产的结构比对与变更顺序,列出旧数据填充、约束生效和回退条件;用新增、修改、删除及边界值样例核对业务能否完整表达。 ## 交付与验收 输出要求:交付实体关系的文字说明、字段字典、带详细中文注释的DDL、索引与查询映射、迁移步骤及验收用例。字段字典与DDL必须逐项对应,资料不足的字段保留待确认说明。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 实体关系、字段字典和 DDL 逐项一致,全部新字段注释解释含义、单位或编码、空值及默认值。 - 主键、唯一约束和索引分别有业务规则或代表性 SQL 依据。 - 迁移说明历史值填充、约束生效和兼容顺序,新增、修改、删除及边界样例能表达业务。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [腾讯云《云数据库 MySQL 使用规范》](https://intl.cloud.tencent.com/zh/document/product/236/13390?lang=zh) [阿里云《数据管理 DMS:结构设计》](https://help.aliyun.com/zh/dms/design-schemas) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
用于审批、工单、订单等状态流转,检查分支遗漏、重复提交、权限和持久化结果。
## 任务目标 请检查 Java 审批状态分支,并设计业务测试。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 审批流程:从当前需求或状态异常定位审批操作;留空时扫描现有审批 Controller、Service 和状态枚举,选择一条包含角色判断与状态写入的流程进行检查。 工程与审批规则:读取状态枚举、分支代码、权限定义、条件更新 SQL、现有用例及业务说明,自动还原实际迁移路径和版本。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 将入口操作、角色、对象归属和状态枚举对应到具体分支。 - 检查 switch 默认分支、复合条件顺序、未知和历史状态的处理。 - 追踪数据库条件更新、版本字段、唯一约束和外部动作,识别重复与并发覆盖。 - 对照现有测试和业务说明,分别记录代码现状与已确认规则。 ### 可采用的默认处理 - 默认只读检查和测试设计,给保持行为的最小整理建议,不自动新增审批步骤。 - 规则缺失时描述当前代码行为并标记待确认,不把现有分支直接当成已批准的业务规则。 - 未知状态不默认放行,权限、短路顺序和副作用按现有可信契约保留。 ### 必须有依据的事项 - 合法状态迁移、批准角色或对象归属规则没有可信依据时,不编造最终状态与越权测试的业务预期。 - 重复审批、撤回或并发竞争应由哪个操作生效不明确时,不擅自决定状态覆盖策略。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 有代码无规则时交付实际分支覆盖图、冲突与遗漏证据,以及业务预期待确认的测试表。 - 无工程时给状态迁移表、条件组合与重复并发测试模板,示例角色和状态仅用于说明方法。 ## 执行要求 适用范围:Java实现的有限业务状态与条件分支;状态迁移、权限和幂等策略以业务规则为准,不能按通用审批流程擅自补业务。 保持条件表达式易于理解,明确 switch 中未匹配情况的处理方式和各分支结束条件。 检查步骤: 1. 从业务资料整理状态迁移表,逐项记录起始状态、操作、角色、前置条件和终止状态;资料与代码冲突时列明两种行为并指出需要确认的事实。 2. 将每条合法迁移对应到实际代码路径,检查条件顺序是否遮蔽后续规则,以及缺少字段、未知枚举和历史状态会进入哪一条路径。 3. 为复合判断建立条件组合,找出权限、状态和数据归属之间的联动;不为追求代码简短而改变短路顺序或触发原先不会发生的副作用。 4. 检查重复提交和并发操作是否可能把状态覆盖回旧值,明确数据库约束或更新条件如何保障业务结果;未提供持久化代码时不得认定并发安全。 5. 给出保持行为的分支整理与需要业务决定的行为修正,分别列出改动;替换复杂判断时使用业务含义清楚的命名,不为了形式增加无用抽象。 6. 根据迁移表生成正常、拒绝、越权、重复、并发和异常测试,测试应观察数据库状态、外部动作次数与响应;说明哪些属于单元验证、哪些需真实集成环境。 ## 交付与验收 输出要求:依次提供状态迁移表、遗漏和冲突清单、最小代码修改、测试矩阵。每个测试使用“初始状态|角色与归属|操作及并发条件|预期最终状态|可观察证据”。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 每条迁移列出起始状态、操作、角色、前提和目标状态,并关联代码证据。 - 区分保持行为的整理与需要业务决定的修正。 - 测试观察数据库最终状态、响应及副作用次数,持久化代码缺失时不声称并发安全。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里巴巴《P3C-PMD 官方公开规则》](https://github.com/alibaba/p3c/blob/master/p3c-pmd/README.md) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
用于账期、日报、到期时间和跨年格式化,检查时间含义、时区转换和并发安全。
## 任务目标 请检查 Java 日期、时区转换与统计周期的边界。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 时间字段或周期:优先检查当前报表或日期异常;留空时从格式化、日期范围查询和统计分组中选择一条同时涉及接口与数据库的时间转换链。 工程与时间资料:读取字段类型、序列化与格式化配置、SQL 区间、数据库迁移和现有测试,自动核对 Java 版本、应用时区及已声明的业务周期。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪前端、请求、Java 对象、数据库和导出的时间单位与表示方式。 - 检索日期格式、默认时区、秒毫秒转换、共享可变格式化器及系统当前时间调用。 - 读取日报月报 SQL 的上下界与业务统计分组,核对跨年周所属年和日历年。 - 查找字段注释、历史迁移、测试时钟和既有跨年、闰日用例。 ### 可采用的默认处理 - 默认只读检查,不更改全局时区或批量转换历史数据。 - 工程未声明业务时区时明确保留未知,示例使用显式标注的时区,不按中文环境推断统计口径。 - 用固定时间构造边界样例;候选区间可说明左闭右开优势,但不替换已有业务约定。 ### 必须有依据的事项 - 字段代表时间点、本地日期还是时长,以及既有历史数据的时区解释不明时,不自动转换或回填。 - 结算或统计周期、截点和首尾包含规则没有依据时,不自行制定报表预期。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无工程时交付时间字段字典与跨年、月末、闰日、秒毫秒和多时区样例表。 - 缺业务周期时先检查格式与线程安全,区间样例列条件化结果并标明尚不能判定的统计口径。 ## 执行要求 适用范围:Java日期时间处理及数据库、前端之间的数据转换;使用java.time时需JDK8及以上,旧接口替换须保留既有时区与业务语义。 区分日期格式中的日历年与周所属年,检查旧格式化器的线程安全。 检查步骤: 1. 逐个识别字段表示的是时间点、本地日期、本地时间还是持续时长,注明单位与来源;账期、截止日期和事件发生时间不能仅凭字段名相互转换。 2. 追踪前端、接口、Java对象、数据库到导出文件的转换链,查找默认时区、隐式格式、秒与毫秒混用,以及同一字段在不同入口中使用不同解释。 3. 针对年末年初构造跨年样例,核对格式化、分组、排序和文件名称是否属于正确日历日期;仅在业务确实按周核算时使用周所属年语义。 4. 检查日报和月报的区间边界,明确定义起止是否包含,避免相邻周期重复或漏记;若涉及多个时区,补充本地一天对应的实际时间范围。 5. 核对日期工具对象是否被多线程共享、是否可变、是否依赖服务器当前时间;给出可注入业务时钟的改进范围,让测试不依赖执行当天。 6. 覆盖跨年、月末、闰日、时区转换、缺失时间及夏令时适用地区,分别验证展示和统计结果;若业务只使用固定时区,清楚说明无需扩展的范围。 ## 交付与验收 输出要求:输出时间字段字典、转换链、缺陷及修复建议、边界样例表。样例写明输入、业务时区、期望日期或区间以及实际结果,保留对历史数据解释和接口兼容性的说明。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 转换链逐处说明类型、单位、格式和时区,不混同本地日期与时间点。 - 边界用例具有输入、业务时区、预期区间和实际结果。 - 修正建议说明历史数据与客户端兼容,未定义的统计业务不编造验收结果。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里巴巴《P3C-PMD 官方公开规则》](https://github.com/alibaba/p3c/blob/master/p3c-pmd/README.md) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
用于订单、审核、库存等写操作,追踪异常、事务提交和外部副作用,避免失败被吞或状态半完成。
## 任务目标 请审查 Java 异常处理与事务结果的一致性。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 事务业务操作:从当前异常或写接口定位操作;留空时选择一条同时包含数据库写入与消息、缓存或远程调用的链路,核对用户看到成功的时点。 工程与异常资料:读取业务方法、调用方式、事务管理器与配置、异常类和全局处理器、数据库操作及已有故障测试,自动确定框架版本与回滚行为。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 按顺序追踪校验、数据库变更、消息、缓存和远程调用的可逆性。 - 核对事务代理、自调用、传播、管理器和 rollbackFor 等实际配置。 - 检查 catch、finally、提前返回和统一响应包装是否吞掉原始失败。 - 查找提交后任务、重试、补偿、查询与幂等处理及现有故障样例。 ### 可采用的默认处理 - 默认只读审查并提供最小修复片段,不改异常码、事务边界或执行外部副作用。 - 远程超时归为可能结果未知,不假设本地回滚能撤销外部操作。 - 框架行为以实际配置和调用链为准,缺运行证据时将回滚效果列为待测。 ### 必须有依据的事项 - 用户可见成功的业务定义、允许的部分完成或补偿结果不明确时,不自行把失败转换成成功。 - 外部动作能否查询、撤销或幂等重试的契约未知时,不设计会重复扣款或重复履约的恢复动作。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无工程时交付按失败位置划分的事务结果矩阵和可控故障测试样例。 - 有代码无环境时输出异常传播与事务边界证据,列出核对最终数据和副作用次数的执行步骤。 ## 执行要求 适用范围:Java业务写操作及显式或框架管理的数据库事务;回滚条件必须核对实际框架配置,远程调用和消息不会自动随本地数据库回滚。 结合代码上下文检查异常后的回滚;注意 finally 中的返回可能遮蔽原有结果。 检查步骤: 1. 以一个真实业务操作为单位,按顺序列出校验、数据库变更、消息、缓存和远程请求,标明每个步骤的可逆性,以及用户看见成功的确切时点。 2. 核对事务边界、调用方式和异常到达的位置,分别模拟校验失败、数据库失败、外部超时及运行时异常;不要只看到事务注解就认定回滚一定生效。 3. 检查异常捕获后是否继续执行、改写返回值或丢失原因,区分可以转成业务结果的失败与必须向上交付的技术失败,保留定位问题所需的最少上下文。 4. 对数据库已提交而外部动作失败的情况明确结果,评估幂等重试、补偿和状态对账是否能恢复;对外部成功但响应超时的情况标记结果未知,避免直接重复副作用。 5. 提出能保留现有契约的最小修改,说明异常类型、返回码和事务配置如何协同;只给项目适用的机制,不为了套用模式拆分无必要的微服务。 6. 用可控故障点验证关键步骤,核对数据库最终状态、外部动作次数及用户响应;列出未覆盖的网络分区或并发场景,以及上线后的异常监测和补偿入口。 ## 交付与验收 输出要求:按业务步骤表、异常传播图的文字说明、问题清单、修复片段和故障用例交付。每个用例必须包含初始状态、注入故障、最终数据和预期响应,不能用“未报错”代替一致性结论。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 每个风险关联业务步骤、异常位置、事务结果及用户响应。 - 修复建议保留现有契约并解释数据库提交与外部动作不同步的窗口。 - 用例包含初始状态、故障点、最终数据与响应,不以未报错判定一致性。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里巴巴《P3C-PMD 官方公开规则》](https://github.com/alibaba/p3c/blob/master/p3c-pmd/README.md) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
排查线程复用导致的用户、租户和请求上下文串用,覆盖异步传递与异常清理。
## 任务目标 请检查 Java ThreadLocal 上下文传递及租户隔离。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 上下文链路:从当前请求或异步任务定位上下文;留空时扫描自定义 ThreadLocal、过滤器和线程池,选择一条能追踪到数据库或缓存访问的复用线程链路。 工程与隔离资料:读取上下文类、身份过滤器、任务包装、线程池、鉴权与持久化代码及相关测试,自动确认运行版本和实际存在的用户或租户维度。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 盘点上下文字段的可信写入来源、读取消费者和清理位置。 - 追踪正常、异常、提前返回、重复分发及嵌套切换后的恢复。 - 核对异步提交时的取值快照、定时任务身份和工作线程清理责任。 - 将上下文追踪到 SQL 过滤与缓存 Key,读取已有连续任务隔离测试。 ### 可采用的默认处理 - 默认只读检查,不关闭权限过滤或新增项目不存在的租户模型。 - 缺上下文不默认使用上一次任务或管理员身份,具体拒绝方式沿用可信契约。 - 测试使用匿名用户和最小上下文字段,生命周期候选优先显式传参或受控包装。 ### 必须有依据的事项 - 用户、租户或组织的可信身份来源与合法数据访问范围不明时,不能认定隔离通过或自行制定默认身份。 - 定时或异步任务合法代表哪个主体执行不明时,不自动继承调用线程或全局管理员权限。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 没有工程时交付上下文生命周期表和同线程先后执行不同身份任务的隔离用例。 - 有上下文代码但无数据层时先指出残留路径,给 SQL 与缓存范围取证点,不宣称数据隔离已验证。 ## 执行要求 适用范围:使用ThreadLocal、请求上下文或线程池的Java项目;仅在项目实际存在租户模型时检查租户,不能凭空增加业务隔离维度。 在线程复用场景中,检查自定义 ThreadLocal 是否在使用结束后清理。 检查步骤: 1. 列出所有上下文字段的写入来源、读取位置和清理位置,标注由认证结果生成还是直接来自请求参数;明确客户端传入标识不能自行证明其访问权限。 2. 沿一次请求追踪正常、异常、提前返回和重复分发路径,检查每条路径结束时上下文状态;给出可能残留的位置和下一次请求受影响的具体业务操作。 3. 追踪异步提交、定时执行和回调,确认上下文是否需要传递、传递哪些最小字段、何时冻结取值;不能假定父线程数据自动正确到达工作线程。 4. 核对嵌套调用临时切换上下文后的恢复策略,以及工作线程原有值如何处理;提出显式传参或受控包装方案时说明兼容影响和清理责任。 5. 在相同线程连续处理两个不同用户或租户的任务,第二个任务分别设置有效、缺失和错误上下文,验证数据访问范围;异常完成后再执行同样序列。 6. 把定位结果追踪到数据库查询和缓存键,验证实际数据边界而非只观察日志;如果权限依据缺失,应报告无法判定,不声称通过隔离检查。 ## 交付与验收 输出要求:交付上下文生命周期表、越界场景、最小修复及隔离验证结果。风险表应写明残留字段、复用入口、可能访问的数据和证据,测试使用匿名样本并避免记录真实身份凭证。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 风险说明残留字段、线程复用入口及可能访问的数据,并具有路径证据。 - 覆盖异常清理、嵌套恢复和异步传递,不只检查是否调用 remove。 - 验证第二个任务的有效、缺失与错误上下文对数据库和缓存的实际影响。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里巴巴《P3C-PMD 官方公开规则》](https://github.com/alibaba/p3c/blob/master/p3c-pmd/README.md) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。
用于导出、批量计算、外部调用等异步任务,审查资源边界、拒绝处理及任务结果可追踪性。
## 任务目标 请评审 Java 线程池容量和异步任务的可靠性。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 异步任务:从当前排队或任务失败问题选择执行器;留空时扫描自建线程池和 Spring 异步入口,优先检查共享池中具有业务副作用的任务。 工程与负载资料:读取执行器配置、任务代码、上下游资源、依赖与已有排队耗时指标和测试,自动判断平台线程、虚拟线程或其他调度方式。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 追踪任务来源、提交返回、排队、执行和完成通知,确认是否持久化。 - 核对核心线程、上限、队列、拒绝策略、线程名及所用版本的参数语义。 - 关联数据库连接、远程连接、锁和共享池任务,查找阻塞与相互拖慢的路径。 - 读取异常、取消、停机重启和重试处理,以及现有负载与完成率记录。 ### 可采用的默认处理 - 默认只读评审,不直接扩线程、改拒绝策略或重启服务。 - 没有到达率与耗时分布时给测量方式、容量公式和附假设候选,不设固定最优线程数。 - 虚拟线程和响应式任务按实际实现另列边界,不机械套用传统池规则。 ### 必须有依据的事项 - 任务是否允许丢失、接口何时算业务完成以及拒绝后用户应收到什么结果不明时,不默认静默丢弃或同步执行。 - 带副作用任务在超时、取消和重启后是否允许重试未定义时,不承诺可安全重复执行。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 无工程时提供任务可靠性分类、资源关系和容量估算表,以及排队满、下游慢和重启用例。 - 缺负载环境时交付现有配置的静态风险及所需指标,不把未压测候选作为可直接采用参数。 ## 执行要求 适用范围:传统平台线程池与常见Spring异步执行器;虚拟线程、响应式调度器应另行评估,不机械套用旧线程数量建议。 明确线程池的资源边界,并为线程提供可识别的名称。 检查步骤: 1. 按业务列出任务来源、任务是否持久化、完成期限和失败归属,区分允许丢弃的通知与必须完成的业务任务;明确接口返回时任务处于哪个状态。 2. 绘制提交到执行完成的路径,标记线程池、排队、数据库连接、远程连接和锁等限制,找出共享池中可能互相拖慢的任务类型及调用方。 3. 根据到达率与耗时提出容量估算,写清假设、排队容忍时间和内存占用;资料不足时给测量方法与候选区间,不拍脑袋给固定线程数。 4. 逐项核对任务排队已满、执行超时、下游阻塞和提交失败时的行为,说明拒绝处理是否会让请求线程长时间阻塞、任务静默丢失或产生重复执行。 5. 检查任务异常、取消、应用退出和重新启动后的状态,验证调用者能否获知失败;若业务要求可靠执行,给出持久化任务与补偿的边界。 6. 设计平稳负载、突发负载、下游变慢及停机四组验证,采集排队时间、执行时间、完成率、拒绝数和资源占用;根据证据逐项调整,保留回退配置。 ## 交付与验收 输出要求:输出任务分类、资源关系、参数建议表、失败处理矩阵及验证计划。参数建议必须含当前值、依据、候选值、预期影响和回退条件,不把未压测值写成最优配置。 只报告有证据支持的问题;区分“已验证”“推测”和“待验证”,涉及变更时给出受影响文件或对象、最小修改和复核方法。代码与操作示例使用占位符,不写入真实密码。 ### 本条完成检查 - 任务分类明确完成期限、失败归属、持久化与丢失边界。 - 参数建议关联当前值、资源上限、推导条件及拒绝影响。 - 验证排队、完成、拒绝、异常和重启后的任务结果,未测容量保持待验证。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 来源(核验日期:2026-09-08): [阿里巴巴《P3C-PMD 官方公开规则》](https://github.com/alibaba/p3c/blob/master/p3c-pmd/README.md) 整理范围:仅依据上述公开文档的相关建议,业务场景、变量、检查流程与验收格式均为独立改写,不代表相关企业完整内部规范。