docs: 增加红线清单,并把约束下沉到代码文件
起因:实测发现 Codex 不会主动把 338 行的规则手册当判断依据—— 问“能用 PySide6 吗”答“可以评估”,问“加个 emoji 图标”直接给改法, 问“改错别字要建工单吗”结论对但依据是通用常识、不是 §0 的实际条件。 三次都表现为“知道代码事实,但不应用项目规则”。 对策一:红线上收 - 根 AGENTS.md 开头新增 5 条红线(Qt 绑定、下单开关、风控、凭据、 不可逆阶段),并明确“不要论证其可行性,先停下来问用户” 对策二:把约束放到 agent 必然会打开的文件里 - pdd_ui.py / pdd_ui_event.py / settings_ui.py / settings_ui_event.py 写入模块 docstring,说明各自职责和最易踩的硬性规则 - 四个文件目前只有 docstring,无实现 同步修正 - ui_event.py 已拆成按页面分的四个文件,更新 client/AGENTS.md 的代码分层规则和 02 §3.1 的现状差异表 未包含:ui_main.py 和 demo1/auto_v1.py 的同类 docstring, 这两个文件承载尚未提交的代码,留待代码提交时一并处理。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
"""PDD 任务页的界面结构。
|
||||
|
||||
这一页显示**本机已领取的全部任务**(正在做的和早已做完的),
|
||||
提供搜索、筛选、详情,以及启动/停止自动获取。
|
||||
完整规范见 `docs/client/05-ui-specification.md`。
|
||||
|
||||
改动本文件前必读 `client/AGENTS.md`。以下几条最容易踩:
|
||||
|
||||
- 本文件只负责显示和把用户操作转发出去,**不写业务逻辑**,
|
||||
不发 Admin 请求、不查数据库、不碰手机。这些放 `pdd_ui_event.py`。
|
||||
- 任务表格必须用**模型/视图**(`QAbstractTableModel` + `TableView`),
|
||||
并用 `remote_task_id` 作为任务身份。**不要用表格行号**——
|
||||
行号会随排序和筛选变化,拿它当身份必出错。
|
||||
- 不要为每个单元格创建常驻 `QWidget`(几万行会把内存吃光)。
|
||||
“详情”那一列用委托绘制。
|
||||
- 不要把完整的 `pdd_data` 放进表格模型,那是详情数据,
|
||||
查看详情时再从数据库读。
|
||||
- 表格数据只增不减(已完成任务永久保留),所以增量加载是必须的,
|
||||
照抄 `docs/client/05-ui-specification.md` §5.3 的模板。
|
||||
- 空状态要分情况:从没领过任务、筛选无结果、加载失败,文案不能一样。
|
||||
- 图标用 `FluentIcon`,**不得用表情符号**。
|
||||
- 页面 `objectName` 固定为 `pddTaskPage`,不要改。
|
||||
|
||||
注意:本页唯一会产生外部后果(真的去操作手机、可能下单)的命令是
|
||||
“开始自动获取”。其余操作全部只读本地数据库。
|
||||
"""
|
||||
Reference in New Issue
Block a user