@openprd/cli 0.1.18 → 0.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.openprd/changes/openprd-control-plane-v020/.openprd.yaml +2 -0
- package/.openprd/changes/openprd-control-plane-v020/design.md +78 -0
- package/.openprd/changes/openprd-control-plane-v020/proposal.md +54 -0
- package/.openprd/changes/openprd-control-plane-v020/specs/agent-requirements/spec.md +16 -0
- package/.openprd/changes/openprd-control-plane-v020/task-events.jsonl +27 -0
- package/.openprd/changes/openprd-control-plane-v020/tasks-002.md +35 -0
- package/.openprd/changes/openprd-control-plane-v020/tasks.md +427 -0
- package/.openprd/changes/openprd-generated-change/.openprd.yaml +2 -0
- package/.openprd/changes/openprd-generated-change/design.md +50 -0
- package/.openprd/changes/openprd-generated-change/proposal.md +37 -0
- package/.openprd/changes/openprd-generated-change/specs/agent-requirements/spec.md +16 -0
- package/.openprd/changes/openprd-generated-change/task-events.jsonl +21 -0
- package/.openprd/changes/openprd-generated-change/tasks.md +357 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/.openprd.yaml +2 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/design.md +52 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/proposal.md +35 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/specs/agent-requirements/spec.md +16 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/task-events.jsonl +1 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/tasks.md +170 -0
- package/.openprd/design/active/asset-spec.md +19 -14
- package/.openprd/design/active/direction-plan.md +19 -3
- package/.openprd/design/active/facts-sheet.md +16 -7
- package/.openprd/design/active/image-preflight.md +6 -5
- package/.openprd/design/active/review-studio-v020-directions/compare-plan.json +34 -0
- package/.openprd/design/active/review-studio-v020-directions/contact-sheet.jpg +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/01.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/02.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/03.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/focus-board.template.json +69 -0
- package/.openprd/design/active/review-studio-v020-directions/parallel-board.template.json +45 -0
- package/.openprd/design/active/review-studio-v020-directions/reference-set.json +143 -0
- package/.openprd/design/active/review-studio-v020-directions/source.png +0 -0
- package/.openprd/design/active/selected-direction.md +23 -9
- package/.openprd/engagements/active/control-plane-architecture.json +203 -0
- package/.openprd/engagements/active/control-plane-intake.json +418 -0
- package/.openprd/engagements/active/prd.md +186 -100
- package/.openprd/engagements/active/review-presentation-v0018.json +176 -0
- package/.openprd/i18n-config.json +12 -0
- package/.openprd/ledger/events.jsonl +6 -0
- package/.openprd/ledger/heads/ebea1a71a9daa566f1c91b53.json +10 -0
- package/.openprd/manifest.json +21 -0
- package/AGENTS.md +1 -0
- package/README.md +22 -0
- package/README_EN.md +27 -0
- package/package.json +1 -1
- package/skills/openprd-frontend-design/SKILL.md +16 -0
- package/skills/openprd-harness/SKILL.md +1 -1
- package/skills/openprd-quality/SKILL.md +1 -1
- package/skills/openprd-requirement-intake/SKILL.md +1 -1
- package/skills/openprd-shared/SKILL.md +1 -1
- package/src/adapters/adapter-spi.js +193 -0
- package/src/adapters/capability-envelope.js +98 -0
- package/src/adapters/event-normalizer.js +55 -0
- package/src/adapters/index.js +4 -0
- package/src/adapters/install-safety.js +249 -0
- package/src/agent-canonical-content.js +6 -2
- package/src/agent-integration.js +147 -42
- package/src/canvas-app-client-app.js +838 -0
- package/src/canvas-app-client-helpers.js +1138 -0
- package/src/canvas-app-styles.js +898 -0
- package/src/canvas-app.html.js +6 -2781
- package/src/canvas-binding.js +414 -0
- package/src/canvas-codex-relay.js +430 -0
- package/src/canvas-i18n.js +8 -0
- package/src/canvas-scene.js +377 -0
- package/src/canvas-session-store.js +148 -0
- package/src/canvas-workspace.js +59 -1066
- package/src/cli/args.js +63 -4
- package/src/cli/gate-print.js +17 -0
- package/src/cli/quality-commands.js +18 -0
- package/src/cli/quality-print.js +10 -0
- package/src/cli/runtime-print.js +24 -0
- package/src/codex-hook-runner-template.mjs +87 -77
- package/src/codex-runtime.js +48 -5
- package/src/context/cache.js +245 -0
- package/src/context/compiler.js +438 -0
- package/src/context/constants.js +30 -0
- package/src/context/index.js +39 -0
- package/src/context/redaction.js +84 -0
- package/src/context/stable.js +69 -0
- package/src/context/telemetry.js +42 -0
- package/src/dev-standards.js +57 -0
- package/src/fleet.js +112 -95
- package/src/gates/index.js +2 -0
- package/src/gates/scoped-gates.js +256 -0
- package/src/gates/store.js +126 -0
- package/src/gates/workspace.js +41 -0
- package/src/html-artifacts.js +725 -28
- package/src/kernel/atomic-store.js +299 -0
- package/src/kernel/event-envelope.js +166 -0
- package/src/kernel/index.js +4 -0
- package/src/kernel/project-ledger.js +467 -0
- package/src/kernel/project-manifest.js +205 -0
- package/src/knowledge-v3/index.js +1 -0
- package/src/knowledge-v3/lifecycle.js +290 -0
- package/src/knowledge.js +14 -7
- package/src/openprd.js +71 -2
- package/src/review-model.js +413 -0
- package/src/review-presentation.js +1 -1
- package/src/run-harness.js +431 -37
- package/src/runtime/cli_runtime_README.md +28 -0
- package/src/runtime/errors.js +66 -0
- package/src/runtime/index.js +44 -0
- package/src/runtime/lane-schema.js +141 -0
- package/src/runtime/lane-store.js +279 -0
- package/src/runtime/task-runtime.js +449 -0
- package/src/runtime/workspace.js +179 -0
- package/src/runtime/write-set.js +206 -0
- package/src/session-binding.js +16 -3
- package/src/session-registry.js +59 -1
- package/src/upgrade/fleet-mutation.js +166 -0
- package/src/upgrade/fleet-transaction.js +398 -0
- package/src/upgrade/transaction-store.js +416 -0
- package/src/visual-compare-core.js +66 -27
- package/src/visual-compare.js +18 -12
- package/src/workspace-core.js +109 -7
- package/src/workspace-registry.js +39 -1
- package/src/workspace-workflow.js +18 -15
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
# 任务
|
|
2
|
+
|
|
3
|
+
- [x] T001.01 评审生成的 spec 覆盖
|
|
4
|
+
- type: governance
|
|
5
|
+
- done: 生成的 agent-requirements spec 符合 PRD 意图
|
|
6
|
+
- verify: openprd change . --validate --change openprd-generated-change
|
|
7
|
+
- test-layer: manual
|
|
8
|
+
- test-size: manual
|
|
9
|
+
- test-scope: governance
|
|
10
|
+
- evidence-plan: openprd change . --validate --change openprd-generated-change
|
|
11
|
+
- upgrade-reason: 治理任务以结构校验、评审确认和变更状态证据为主
|
|
12
|
+
- execution-mode: serial
|
|
13
|
+
- parallel-group: governance
|
|
14
|
+
- write-scope: .openprd/changes/**, .openprd/**
|
|
15
|
+
- owner-role: main-agent
|
|
16
|
+
- local-verify: openprd change . --validate --change openprd-generated-change
|
|
17
|
+
- integration-owner: main-agent
|
|
18
|
+
|
|
19
|
+
- [x] T001.02 对齐共享契约与 Host API 调用边界
|
|
20
|
+
- type: implementation
|
|
21
|
+
- deps: T001.01
|
|
22
|
+
- done: 共享契约、Host API 和上下游调用边界已经对齐,后续功能可以直接接线。 涉及: 依赖 0.1.18 生图路由协议。
|
|
23
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.02 --evidence-required
|
|
24
|
+
- test-layer: integration, e2e
|
|
25
|
+
- test-size: large
|
|
26
|
+
- test-scope: visual-flow
|
|
27
|
+
- evidence-plan: 主流程自动化、截图或 visual-compare 证据 + 本任务 verify 命令;轻量 UI 可视优化也需要 before/after、verification-board 或 alignment-board 证据,同构卡片/列表要覆盖内部内容槽位
|
|
28
|
+
- upgrade-reason: 触达用户可见路径,需要端到端或视觉级证据;轻量 UI 可视优化不能只用构建或 dev-check 收口
|
|
29
|
+
- execution-mode: parallel-workers
|
|
30
|
+
- parallel-group: contracts
|
|
31
|
+
- write-scope: src/**, test/**, docs/basic/backend-structure.md
|
|
32
|
+
- owner-role: worker
|
|
33
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.02 --evidence-required
|
|
34
|
+
- integration-owner: main-agent
|
|
35
|
+
|
|
36
|
+
- [x] T001.03 接通界面入口、导航与页面挂载
|
|
37
|
+
- type: implementation
|
|
38
|
+
- deps: T001.02
|
|
39
|
+
- done: 用户可以从正确入口进入对应界面,页面挂载与状态收尾已经接通。 涉及: 依赖 0.1.18 生图路由协议。
|
|
40
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.03 --evidence-required
|
|
41
|
+
- test-layer: integration, e2e
|
|
42
|
+
- test-size: large
|
|
43
|
+
- test-scope: visual-flow
|
|
44
|
+
- evidence-plan: 主流程自动化、截图或 visual-compare 证据 + 本任务 verify 命令;轻量 UI 可视优化也需要 before/after、verification-board 或 alignment-board 证据,同构卡片/列表要覆盖内部内容槽位
|
|
45
|
+
- upgrade-reason: 触达用户可见路径,需要端到端或视觉级证据;轻量 UI 可视优化不能只用构建或 dev-check 收口
|
|
46
|
+
- execution-mode: parallel-workers
|
|
47
|
+
- parallel-group: contracts
|
|
48
|
+
- write-scope: src/**, test/**, docs/basic/backend-structure.md
|
|
49
|
+
- owner-role: worker
|
|
50
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.03 --evidence-required
|
|
51
|
+
- integration-owner: main-agent
|
|
52
|
+
|
|
53
|
+
- [x] T001.04 实现选区状态随画布保存并可查询
|
|
54
|
+
- type: implementation
|
|
55
|
+
- deps: T001.03
|
|
56
|
+
- done: 已完成:选区状态随画布保存并可查询
|
|
57
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.04 --evidence-required
|
|
58
|
+
- test-layer: integration, e2e
|
|
59
|
+
- test-size: large
|
|
60
|
+
- test-scope: visual-flow
|
|
61
|
+
- evidence-plan: 主流程自动化、截图或 visual-compare 证据 + 本任务 verify 命令;轻量 UI 可视优化也需要 before/after、verification-board 或 alignment-board 证据,同构卡片/列表要覆盖内部内容槽位
|
|
62
|
+
- upgrade-reason: 触达用户可见路径,需要端到端或视觉级证据;轻量 UI 可视优化不能只用构建或 dev-check 收口
|
|
63
|
+
- execution-mode: parallel-workers
|
|
64
|
+
- parallel-group: domain
|
|
65
|
+
- write-scope: src/**, test/**
|
|
66
|
+
- owner-role: worker
|
|
67
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.04 --evidence-required
|
|
68
|
+
- integration-owner: main-agent
|
|
69
|
+
|
|
70
|
+
- [x] T001.05 实现插图 API 支持 left/right/below 摆放与 holder 替换
|
|
71
|
+
- type: implementation
|
|
72
|
+
- deps: T001.04
|
|
73
|
+
- done: 已完成:插图 API 支持 left/right/below 摆放与 holder 替换
|
|
74
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.05 --evidence-required
|
|
75
|
+
- test-layer: unit, integration
|
|
76
|
+
- test-size: medium
|
|
77
|
+
- test-scope: api-contract
|
|
78
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
79
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
80
|
+
- execution-mode: parallel-workers
|
|
81
|
+
- parallel-group: contracts
|
|
82
|
+
- write-scope: src/**, test/**, docs/basic/backend-structure.md
|
|
83
|
+
- owner-role: worker
|
|
84
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.05 --evidence-required
|
|
85
|
+
- integration-owner: main-agent
|
|
86
|
+
|
|
87
|
+
- [x] T001.06 实现标注导出携带 annotationEdit 与源图形 ID 元数据
|
|
88
|
+
- type: implementation
|
|
89
|
+
- deps: T001.05
|
|
90
|
+
- done: 已完成:标注导出携带 annotationEdit 与源图形 ID 元数据
|
|
91
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.06 --evidence-required
|
|
92
|
+
- test-layer: unit, integration
|
|
93
|
+
- test-size: medium
|
|
94
|
+
- test-scope: cli-contract
|
|
95
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
96
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
97
|
+
- execution-mode: parallel-workers
|
|
98
|
+
- parallel-group: domain
|
|
99
|
+
- write-scope: src/**, test/**
|
|
100
|
+
- owner-role: worker
|
|
101
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.06 --evidence-required
|
|
102
|
+
- integration-owner: main-agent
|
|
103
|
+
|
|
104
|
+
- [x] T001.07 实现生图占位卡 handoff 记录携带宽高与比例契约
|
|
105
|
+
- type: implementation
|
|
106
|
+
- deps: T001.06
|
|
107
|
+
- done: 已完成:生图占位卡 handoff 记录携带宽高与比例契约
|
|
108
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.07 --evidence-required
|
|
109
|
+
- test-layer: unit, integration
|
|
110
|
+
- test-size: medium
|
|
111
|
+
- test-scope: cli-contract
|
|
112
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
113
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
114
|
+
- execution-mode: parallel-workers
|
|
115
|
+
- parallel-group: contracts
|
|
116
|
+
- write-scope: src/**, test/**, docs/basic/backend-structure.md
|
|
117
|
+
- owner-role: worker
|
|
118
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.07 --evidence-required
|
|
119
|
+
- integration-owner: main-agent
|
|
120
|
+
|
|
121
|
+
- [x] T001.08 实现hook 识别画布协同意图并注入闭环指引
|
|
122
|
+
- type: implementation
|
|
123
|
+
- deps: T001.07
|
|
124
|
+
- done: 已完成:hook 识别画布协同意图并注入闭环指引
|
|
125
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.08 --evidence-required
|
|
126
|
+
- test-layer: unit, integration
|
|
127
|
+
- test-size: medium
|
|
128
|
+
- test-scope: cli-contract
|
|
129
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
130
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
131
|
+
- execution-mode: serial
|
|
132
|
+
- parallel-group: integration
|
|
133
|
+
- write-scope: src/**, test/**, docs/basic/**
|
|
134
|
+
- owner-role: main-agent
|
|
135
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.08 --evidence-required
|
|
136
|
+
- integration-owner: main-agent
|
|
137
|
+
|
|
138
|
+
- [x] T001.09 打通主流程闭环:用户在画布圈选原图并批注,点“标注修改请求”,Agent 读标注生成修订图并放回原图右侧 等 4 项
|
|
139
|
+
- type: implementation
|
|
140
|
+
- deps: T001.08
|
|
141
|
+
- done: 主流程关键节点已经打通,用户可以按预期从入口走到结果收尾。 涉及: 用户在画布圈选原图并批注,点“标注修改请求”,Agent 读标注生成修订图并放回原图右侧 等 4 项。
|
|
142
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.09 --evidence-required
|
|
143
|
+
- test-layer: integration, e2e
|
|
144
|
+
- test-size: large
|
|
145
|
+
- test-scope: user-flow
|
|
146
|
+
- evidence-plan: 主流程自动化、截图或 visual-compare 证据 + 本任务 verify 命令;轻量 UI 可视优化也需要 before/after、verification-board 或 alignment-board 证据,同构卡片/列表要覆盖内部内容槽位
|
|
147
|
+
- upgrade-reason: 触达用户可见路径,需要端到端或视觉级证据;轻量 UI 可视优化不能只用构建或 dev-check 收口
|
|
148
|
+
- execution-mode: serial
|
|
149
|
+
- parallel-group: integration
|
|
150
|
+
- write-scope: src/**, test/**, docs/basic/**
|
|
151
|
+
- owner-role: main-agent
|
|
152
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.09 --evidence-required
|
|
153
|
+
- integration-owner: main-agent
|
|
154
|
+
|
|
155
|
+
- [x] T001.10 验证canvas 服务新增 GET /api/selection 与 POST /api/insert-image 且测试通过
|
|
156
|
+
- type: verification
|
|
157
|
+
- deps: T001.09
|
|
158
|
+
- done: 已验证:canvas 服务新增 GET /api/selection 与 POST /api/insert-image 且测试通过
|
|
159
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.10 --evidence-required
|
|
160
|
+
- test-layer: unit, integration
|
|
161
|
+
- test-size: medium
|
|
162
|
+
- test-scope: api-contract
|
|
163
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
164
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
165
|
+
- execution-mode: parallel-workers
|
|
166
|
+
- parallel-group: verification
|
|
167
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
168
|
+
- owner-role: worker
|
|
169
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.10 --evidence-required
|
|
170
|
+
- integration-owner: main-agent
|
|
171
|
+
|
|
172
|
+
- [x] T001.11 验证标注导出带 annotationEdit 元数据并能被 hook 指引消费
|
|
173
|
+
- type: verification
|
|
174
|
+
- deps: T001.10
|
|
175
|
+
- done: 已验证:标注导出带 annotationEdit 元数据并能被 hook 指引消费
|
|
176
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.11 --evidence-required
|
|
177
|
+
- test-layer: unit, integration
|
|
178
|
+
- test-size: medium
|
|
179
|
+
- test-scope: cli-contract
|
|
180
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
181
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
182
|
+
- execution-mode: parallel-workers
|
|
183
|
+
- parallel-group: verification
|
|
184
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
185
|
+
- owner-role: worker
|
|
186
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.11 --evidence-required
|
|
187
|
+
- integration-owner: main-agent
|
|
188
|
+
|
|
189
|
+
- [x] T001.12 验证hook 对画布协同意图注入引导语
|
|
190
|
+
- type: verification
|
|
191
|
+
- deps: T001.11
|
|
192
|
+
- done: 已验证:hook 对画布协同意图注入引导语
|
|
193
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.12 --evidence-required
|
|
194
|
+
- test-layer: unit, integration
|
|
195
|
+
- test-size: medium
|
|
196
|
+
- test-scope: cli-contract
|
|
197
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
198
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
199
|
+
- execution-mode: parallel-workers
|
|
200
|
+
- parallel-group: verification
|
|
201
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
202
|
+
- owner-role: worker
|
|
203
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.12 --evidence-required
|
|
204
|
+
- integration-owner: main-agent
|
|
205
|
+
|
|
206
|
+
- [x] T001.13 回归非功能约束:界面文案面向普通用户 / API 只监听本地回环地址
|
|
207
|
+
- type: verification
|
|
208
|
+
- deps: T001.12
|
|
209
|
+
- done: 非功能约束已经回归确认。 涉及: 界面文案面向普通用户 / API 只监听本地回环地址。
|
|
210
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.13 --evidence-required
|
|
211
|
+
- test-layer: integration, e2e
|
|
212
|
+
- test-size: large
|
|
213
|
+
- test-scope: user-flow
|
|
214
|
+
- evidence-plan: 主流程自动化、截图或 visual-compare 证据 + 本任务 verify 命令;轻量 UI 可视优化也需要 before/after、verification-board 或 alignment-board 证据,同构卡片/列表要覆盖内部内容槽位
|
|
215
|
+
- upgrade-reason: 触达用户可见路径,需要端到端或视觉级证据;轻量 UI 可视优化不能只用构建或 dev-check 收口
|
|
216
|
+
- execution-mode: parallel-workers
|
|
217
|
+
- parallel-group: verification
|
|
218
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
219
|
+
- owner-role: worker
|
|
220
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.13 --evidence-required
|
|
221
|
+
- integration-owner: main-agent
|
|
222
|
+
|
|
223
|
+
- [x] T001.14 回归非功能约束:新增代码有集成测试覆盖
|
|
224
|
+
- type: verification
|
|
225
|
+
- deps: T001.13
|
|
226
|
+
- done: 非功能约束已经回归确认。 涉及: 新增代码有集成测试覆盖。
|
|
227
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.14 --evidence-required
|
|
228
|
+
- test-layer: unit, integration
|
|
229
|
+
- test-size: medium
|
|
230
|
+
- test-scope: cli-contract
|
|
231
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
232
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
233
|
+
- execution-mode: parallel-workers
|
|
234
|
+
- parallel-group: verification
|
|
235
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
236
|
+
- owner-role: worker
|
|
237
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.14 --evidence-required
|
|
238
|
+
- integration-owner: main-agent
|
|
239
|
+
|
|
240
|
+
- [x] T001.15 回归边界条件与失败处理:边界情况:无选区时 selection API 返回空且 Agent 收到明确提示 等 5 项
|
|
241
|
+
- type: verification
|
|
242
|
+
- deps: T001.14
|
|
243
|
+
- done: 边界条件与失败处理已经回归确认。 涉及: 边界情况:无选区时 selection API 返回空且 Agent 收到明确提示 等 5 项。
|
|
244
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.15 --evidence-required
|
|
245
|
+
- test-layer: unit, integration
|
|
246
|
+
- test-size: medium
|
|
247
|
+
- test-scope: api-contract
|
|
248
|
+
- evidence-plan: 单元测试锁定规则 + 集成或命令行契约验证
|
|
249
|
+
- upgrade-reason: 触达 CLI/API/Agent 契约或生成物,需要中间层验证
|
|
250
|
+
- execution-mode: parallel-workers
|
|
251
|
+
- parallel-group: verification
|
|
252
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
253
|
+
- owner-role: worker
|
|
254
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.15 --evidence-required
|
|
255
|
+
- integration-owner: main-agent
|
|
256
|
+
|
|
257
|
+
- [x] T001.16 验证成本与额度护栏
|
|
258
|
+
- type: verification
|
|
259
|
+
- deps: T001.15
|
|
260
|
+
- done: 已验证免费、试用或低权限用户不能绕过额度、并发、频率或总量限制
|
|
261
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.16 --evidence-required
|
|
262
|
+
- test-layer: integration, security
|
|
263
|
+
- test-size: medium
|
|
264
|
+
- test-scope: security
|
|
265
|
+
- evidence-plan: 正向路径 + 越权、额度、并发或敏感信息负向验证
|
|
266
|
+
- upgrade-reason: 触达权限、安全、成本或滥用边界,需要至少集成级证据
|
|
267
|
+
- execution-mode: parallel-workers
|
|
268
|
+
- parallel-group: verification
|
|
269
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
270
|
+
- owner-role: worker
|
|
271
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.16 --evidence-required
|
|
272
|
+
- integration-owner: main-agent
|
|
273
|
+
|
|
274
|
+
- [x] T001.17 验证滥用与越权路径
|
|
275
|
+
- type: verification
|
|
276
|
+
- deps: T001.16
|
|
277
|
+
- done: 已覆盖重复请求、并发请求、越权身份和异常恢复等负向场景
|
|
278
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.17 --evidence-required
|
|
279
|
+
- test-layer: integration, security
|
|
280
|
+
- test-size: medium
|
|
281
|
+
- test-scope: security
|
|
282
|
+
- evidence-plan: 正向路径 + 越权、额度、并发或敏感信息负向验证
|
|
283
|
+
- upgrade-reason: 触达权限、安全、成本或滥用边界,需要至少集成级证据
|
|
284
|
+
- execution-mode: parallel-workers
|
|
285
|
+
- parallel-group: verification
|
|
286
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
287
|
+
- owner-role: worker
|
|
288
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.17 --evidence-required
|
|
289
|
+
- integration-owner: main-agent
|
|
290
|
+
|
|
291
|
+
- [x] T001.18 验证成本监控、报警和止损
|
|
292
|
+
- type: verification
|
|
293
|
+
- deps: T001.17
|
|
294
|
+
- done: 已确认用量或成本信号、报警阈值和人工/自动止损动作可执行
|
|
295
|
+
- verify: openprd tasks . --change openprd-generated-change --item T001.18 --evidence-required
|
|
296
|
+
- test-layer: integration, security
|
|
297
|
+
- test-size: medium
|
|
298
|
+
- test-scope: security
|
|
299
|
+
- evidence-plan: 正向路径 + 越权、额度、并发或敏感信息负向验证
|
|
300
|
+
- upgrade-reason: 触达权限、安全、成本或滥用边界,需要至少集成级证据
|
|
301
|
+
- execution-mode: parallel-workers
|
|
302
|
+
- parallel-group: verification
|
|
303
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
304
|
+
- owner-role: worker
|
|
305
|
+
- local-verify: openprd tasks . --change openprd-generated-change --item T001.18 --evidence-required
|
|
306
|
+
- integration-owner: main-agent
|
|
307
|
+
|
|
308
|
+
- [x] T001.19 维护 docs/basic 项目基础文档
|
|
309
|
+
- type: documentation
|
|
310
|
+
- deps: T001.18
|
|
311
|
+
- done: 已检查 docs/basic 是否缺失或因本次需求、流程、结构、依赖、产品行为变化而过期;若涉及后端、脚本、Agent 或工具链变更,已同步评估 CLI 与 API 接入面,并在 backend-structure.md 中记录事实或不适用原因;需要更新的基础文档已同步
|
|
312
|
+
- verify: openprd standards . --verify
|
|
313
|
+
- test-layer: manual
|
|
314
|
+
- test-size: manual
|
|
315
|
+
- test-scope: docs
|
|
316
|
+
- evidence-plan: openprd standards . --verify
|
|
317
|
+
- upgrade-reason: 文档任务以标准校验和人工审查证据为主
|
|
318
|
+
- execution-mode: parallel-workers
|
|
319
|
+
- parallel-group: docs
|
|
320
|
+
- write-scope: docs/basic/**, README*.md
|
|
321
|
+
- owner-role: worker
|
|
322
|
+
- local-verify: openprd standards . --verify
|
|
323
|
+
- integration-owner: main-agent
|
|
324
|
+
|
|
325
|
+
- [x] T001.20 更新文件说明书和文件夹 README
|
|
326
|
+
- type: documentation
|
|
327
|
+
- deps: T001.19
|
|
328
|
+
- done: 本次变更涉及的文件说明书和文件夹 README 已检查;缺失的已补齐,过期的已更新
|
|
329
|
+
- verify: openprd standards . --verify
|
|
330
|
+
- test-layer: manual
|
|
331
|
+
- test-size: manual
|
|
332
|
+
- test-scope: docs
|
|
333
|
+
- evidence-plan: openprd standards . --verify
|
|
334
|
+
- upgrade-reason: 文档任务以标准校验和人工审查证据为主
|
|
335
|
+
- execution-mode: parallel-workers
|
|
336
|
+
- parallel-group: docs
|
|
337
|
+
- write-scope: docs/basic/**, README*.md
|
|
338
|
+
- owner-role: worker
|
|
339
|
+
- local-verify: openprd standards . --verify
|
|
340
|
+
- integration-owner: main-agent
|
|
341
|
+
|
|
342
|
+
- [x] T001.21 运行 OpenPrd spec 校验
|
|
343
|
+
- type: governance
|
|
344
|
+
- deps: T001.20
|
|
345
|
+
- done: 生成的 change 通过 OpenPrd 校验
|
|
346
|
+
- verify: openprd change . --validate --change openprd-generated-change
|
|
347
|
+
- test-layer: manual
|
|
348
|
+
- test-size: manual
|
|
349
|
+
- test-scope: governance
|
|
350
|
+
- evidence-plan: openprd change . --validate --change openprd-generated-change
|
|
351
|
+
- upgrade-reason: 治理任务以结构校验、评审确认和变更状态证据为主
|
|
352
|
+
- execution-mode: serial
|
|
353
|
+
- parallel-group: governance
|
|
354
|
+
- write-scope: .openprd/changes/**, .openprd/**
|
|
355
|
+
- owner-role: main-agent
|
|
356
|
+
- local-verify: openprd change . --validate --change openprd-generated-change
|
|
357
|
+
- integration-owner: main-agent
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# 设计
|
|
2
|
+
|
|
3
|
+
## 背景
|
|
4
|
+
|
|
5
|
+
对标 Cowart 已验证“标注改图闭环 + 画布双向结构化工具 + 生图尺寸契约 + 具名 skill 唤起”四件能力能显著降低人机视觉协同成本;OpenPrd 0.1.18 刚落地生图路由,正好把尺寸契约与路由串起来。
|
|
6
|
+
|
|
7
|
+
## 目标
|
|
8
|
+
|
|
9
|
+
- 用户在画布上标注后,一句话就能让 Agent 读懂标注并生成修订图放回原图旁
|
|
10
|
+
- Agent 能结构化读取画布选区并把图片锚定回填
|
|
11
|
+
- 生图请求自动携带占位卡尺寸契约
|
|
12
|
+
- 用户能用自然语言稳定唤起画布协同
|
|
13
|
+
|
|
14
|
+
## 范围
|
|
15
|
+
|
|
16
|
+
- canvas-workspace.js 新增选区状态持久化与查询 API
|
|
17
|
+
- canvas-workspace.js 新增锚定插图 API(anchorShapeId/placement/replaceHolder)
|
|
18
|
+
- canvas-app.html.js 标注修改请求导出(带元数据)与选区上报
|
|
19
|
+
- 生图占位卡尺寸契约写入 handoff 与生图指引
|
|
20
|
+
- codex-hook-runner-template.mjs 画布协同意图识别与引导注入
|
|
21
|
+
- agent-canonical-content.js 画布协同指引
|
|
22
|
+
- docs/basic 与 README 同步
|
|
23
|
+
|
|
24
|
+
## 约束
|
|
25
|
+
|
|
26
|
+
- 沿用 Excalidraw embed 与现有 canvas-sessions 文件存储
|
|
27
|
+
- Node 内置测试框架
|
|
28
|
+
- 不新增外部依赖
|
|
29
|
+
- hook 热路径(每次工具调用)禁止读取全局 sessions.jsonl 等 O(N) 追加文件;会话级状态一律 per-session 本地文件 O(1) 直读。
|
|
30
|
+
- workspace 级单例状态文件(turn-state/run-state)里会话相关字段不得被并行窗口互相覆写;真相源收敛到 change 文件夹与任务台账。
|
|
31
|
+
- 不写入敏感信息
|
|
32
|
+
- 画布数据留在本地项目目录
|
|
33
|
+
- 依赖 openprd canvas 本地服务
|
|
34
|
+
- 依赖 0.1.18 生图路由协议
|
|
35
|
+
|
|
36
|
+
## 业务护栏
|
|
37
|
+
|
|
38
|
+
- 成本来源: 主要成本是生图调用次数与画布服务本地资源
|
|
39
|
+
- 额度限制: 首版按单画布会话协同,不开放批量自动改图
|
|
40
|
+
- 滥用防护: insert-image 校验锚点与文件存在性,避免脏写
|
|
41
|
+
- 滥用防护: API 仅本地回环访问
|
|
42
|
+
- 监控信号: ops.json handoff 记录数、回填成功率、API 错误率
|
|
43
|
+
- 报警阈值: 回填连续失败时提示用户检查画布服务状态
|
|
44
|
+
- 止损动作: 异常时停止自动回填,保留原画布快照并回退到手动流程
|
|
45
|
+
|
|
46
|
+
## 风险与开放问题
|
|
47
|
+
|
|
48
|
+
- 假设: 用户接受标注截图作为修改指令载体
|
|
49
|
+
- 假设: Excalidraw selection 数据足以表达锚定需求
|
|
50
|
+
- 风险: Excalidraw 与 tldraw 数据模型差异导致锚定语义需要适配
|
|
51
|
+
- 风险: 标注文字识别依赖 Agent 视觉能力
|
|
52
|
+
- 问题: 后续是否把画布协同扩展为独立 MCP server 另行评估
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# 去会话追踪化:changes 为真相源 + 人话确认
|
|
2
|
+
|
|
3
|
+
## 背景与原因
|
|
4
|
+
|
|
5
|
+
OpenPrd 画布目前只有单向的“发送给 Codex”整体交接:Agent 不能结构化读取用户在画布上的选区与标注,不能把生成图片精准放回画布锚点旁,标注修改意图靠用户口述或手动截图传递,协同链路断在“人标注完之后”这一步。
|
|
6
|
+
|
|
7
|
+
## 变更内容
|
|
8
|
+
|
|
9
|
+
- canvas-workspace.js 新增选区状态持久化与查询 API
|
|
10
|
+
- canvas-workspace.js 新增锚定插图 API(anchorShapeId/placement/replaceHolder)
|
|
11
|
+
- canvas-app.html.js 标注修改请求导出(带元数据)与选区上报
|
|
12
|
+
- 生图占位卡尺寸契约写入 handoff 与生图指引
|
|
13
|
+
- codex-hook-runner-template.mjs 画布协同意图识别与引导注入
|
|
14
|
+
- agent-canonical-content.js 画布协同指引
|
|
15
|
+
- docs/basic 与 README 同步
|
|
16
|
+
- [object Object]
|
|
17
|
+
- [object Object]
|
|
18
|
+
- [object Object]
|
|
19
|
+
- canvas 服务新增 GET /api/selection 与 POST /api/insert-image 且测试通过
|
|
20
|
+
- 标注导出带 annotationEdit 元数据并能被 hook 指引消费
|
|
21
|
+
- hook 对画布协同意图注入引导语
|
|
22
|
+
|
|
23
|
+
## 能力范围
|
|
24
|
+
|
|
25
|
+
- `agent-requirements`: 去会话追踪化:changes 为真相源 + 人话确认 需求。
|
|
26
|
+
|
|
27
|
+
## 影响范围
|
|
28
|
+
|
|
29
|
+
- 主要用户: 使用 OpenPrd 画布做视觉协同的开发者与产品设计协作者
|
|
30
|
+
- 成本来源: 主要成本是生图调用次数与画布服务本地资源
|
|
31
|
+
- 额度限制: 首版按单画布会话协同,不开放批量自动改图
|
|
32
|
+
- 依赖: 依赖 openprd canvas 本地服务
|
|
33
|
+
- 依赖: 依赖 0.1.18 生图路由协议
|
|
34
|
+
- 风险: Excalidraw 与 tldraw 数据模型差异导致锚定语义需要适配
|
|
35
|
+
- 风险: 标注文字识别依赖 Agent 视觉能力
|
package/.openprd/changes/remove-session-tracking-humane-approval/specs/agent-requirements/spec.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
## 新增需求
|
|
2
|
+
|
|
3
|
+
### 需求:去会话追踪化:changes 为真相源 + 人话确认
|
|
4
|
+
OpenPrd 画布目前只有单向的“发送给 Codex”整体交接:Agent 不能结构化读取用户在画布上的选区与标注,不能把生成图片精准放回画布锚点旁,标注修改意图靠用户口述或手动截图传递,协同链路断在“人标注完之后”这一步。
|
|
5
|
+
|
|
6
|
+
#### 场景:主流程成功
|
|
7
|
+
- **当** 用户在同一项目开第二个对话窗口,直接读活跃变更清单继续工作,两个窗口状态互不覆盖
|
|
8
|
+
- **则** canvas 服务新增 GET /api/selection 与 POST /api/insert-image 且测试通过
|
|
9
|
+
|
|
10
|
+
#### 场景:边界情况保持可见
|
|
11
|
+
- **当** 旧全局 sessions.jsonl 存在时停止写入、保留只读兼容,读取入口平滑降级
|
|
12
|
+
- **则** 产品应保持该情况明确可见,以支持实现和验证
|
|
13
|
+
|
|
14
|
+
#### 场景:失败模式得到处理
|
|
15
|
+
- **当** 画布服务未启动时 API 调用失败要提示先运行 openprd canvas
|
|
16
|
+
- **则** 产品应提供有边界且可评审的结果
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":1,"at":"2026-07-07 10:55:08","changeId":"remove-session-tracking-humane-approval","action":"advance","taskId":"T001.01","taskTitle":"评审生成的 spec 覆盖","ok":true,"verify":{"ok":true,"command":"openprd change . --validate --change remove-session-tracking-humane-approval","exitCode":0,"stdout":"OpenPrd change 验证: 通过\nChange: remove-session-tracking-humane-approval\n- OpenPrd change remove-session-tracking-humane-approval: 1 个 spec delta。\n- .openprd/changes/remove-session-tracking-humane-approval/specs/agent-requirements/spec.md: 1 个需求。\n- 结构化 OpenPrd 任务: 10 个任务,9 条依赖;测试策略显式 10 个、推导 0 个;执行策略显式 10 个、推导 0 个。\n- OpenPrd 任务文件: 1 个文件,10 个 checkbox 任务,每个文件最多 25 个。\n- Standards docs root: docs/basic\n- Required docs: 6/6.\n- Docs quality: 6 docs analyzed, 0 with mega-lines > 300 chars.\n- Manual templates: 2/2.\n- Development standards: code files ok <= 700 lines, attention <= 1500 lines.\n- Growth layer: enabled; code-extension candidates can auto-apply, remaining candidates stay in wrap-up review.\n","stderr":""},"evidence":null,"notes":null}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# 任务
|
|
2
|
+
|
|
3
|
+
- [x] T001.01 评审生成的 spec 覆盖
|
|
4
|
+
- type: governance
|
|
5
|
+
- done: 生成的 agent-requirements spec 符合 PRD 意图
|
|
6
|
+
- verify: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
7
|
+
- test-layer: manual
|
|
8
|
+
- test-size: manual
|
|
9
|
+
- test-scope: governance
|
|
10
|
+
- evidence-plan: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
11
|
+
- upgrade-reason: 治理任务以结构校验、评审确认和变更状态证据为主
|
|
12
|
+
- execution-mode: serial
|
|
13
|
+
- parallel-group: governance
|
|
14
|
+
- write-scope: .openprd/changes/**, .openprd/**
|
|
15
|
+
- owner-role: main-agent
|
|
16
|
+
- local-verify: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
17
|
+
- integration-owner: main-agent
|
|
18
|
+
|
|
19
|
+
- [ ] T001.02 hook 热路径去全局扫描:automation lane 记忆改为 per-session 本地文件
|
|
20
|
+
- type: implementation
|
|
21
|
+
- deps: T001.01
|
|
22
|
+
- done: codex-hook-runner-template 里 latestSessionRegistryEntry 不再全量读取全局 sessions.jsonl;automation lane 记忆读写改为 .openprd/harness/session-bindings 下 per-session 小文件 O(1) 直读;rememberAutomationMode 不再向全局 registry 每事件追加流水
|
|
23
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.02 --evidence-required
|
|
24
|
+
- test-layer: unit, integration
|
|
25
|
+
- test-size: medium
|
|
26
|
+
- test-scope: cli-contract
|
|
27
|
+
- evidence-plan: 单元测试锁定 per-session 文件读写 + hook 集成回归
|
|
28
|
+
- upgrade-reason: 触达 hook 契约与生成物,需要中间层验证
|
|
29
|
+
- execution-mode: serial
|
|
30
|
+
- parallel-group: implementation
|
|
31
|
+
- write-scope: src/**, test/**
|
|
32
|
+
- owner-role: main-agent
|
|
33
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.02 --evidence-required
|
|
34
|
+
- integration-owner: main-agent
|
|
35
|
+
|
|
36
|
+
- [ ] T001.03 CLI 侧去会话追踪:移除全局 session registry 写入与跨 workspace 扫描
|
|
37
|
+
- type: implementation
|
|
38
|
+
- deps: T001.02
|
|
39
|
+
- done: session-registry 停止向 ~/.openprd/registry/sessions.jsonl 写入(保留只读兼容);resolveSessionTarget 不再做跨 workspace 候选扫描和 promptPreview 语义匹配兜底,找不到本地绑定时返回活跃 change 清单请用户指认
|
|
40
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.03 --evidence-required
|
|
41
|
+
- test-layer: unit, integration
|
|
42
|
+
- test-size: medium
|
|
43
|
+
- test-scope: cli-contract
|
|
44
|
+
- evidence-plan: 单元测试锁定降级行为 + run --message 会话续接集成验证
|
|
45
|
+
- upgrade-reason: 触达 CLI/Agent 契约,需要中间层验证
|
|
46
|
+
- execution-mode: serial
|
|
47
|
+
- parallel-group: implementation
|
|
48
|
+
- write-scope: src/**, test/**
|
|
49
|
+
- owner-role: main-agent
|
|
50
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.03 --evidence-required
|
|
51
|
+
- integration-owner: main-agent
|
|
52
|
+
|
|
53
|
+
- [ ] T001.04 运行态状态按会话隔离:turn-state 分文件,消除多窗口覆写
|
|
54
|
+
- type: implementation
|
|
55
|
+
- deps: T001.03
|
|
56
|
+
- done: 会话相关运行态(turn-state 等)按 sessionId 分文件存放在 .openprd/harness/session-states/;无 sessionId 证据时退化为无状态读 change 清单;workspace 级只保留共享的变更台账与质量报告
|
|
57
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.04 --evidence-required
|
|
58
|
+
- test-layer: unit, integration
|
|
59
|
+
- test-size: medium
|
|
60
|
+
- test-scope: cli-contract
|
|
61
|
+
- evidence-plan: 双会话并发写入互不覆盖的单元/集成测试
|
|
62
|
+
- upgrade-reason: 触达状态模型与并发正确性,需要中间层验证
|
|
63
|
+
- execution-mode: serial
|
|
64
|
+
- parallel-group: implementation
|
|
65
|
+
- write-scope: src/**, test/**
|
|
66
|
+
- owner-role: main-agent
|
|
67
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.04 --evidence-required
|
|
68
|
+
- integration-owner: main-agent
|
|
69
|
+
|
|
70
|
+
- [ ] T001.05 高风险门禁改为挂起审批加人话确认
|
|
71
|
+
- type: implementation
|
|
72
|
+
- deps: T001.04
|
|
73
|
+
- done: autonomy-risk 拦截时写入 pending approval 记录并要求 agent 用业务人话说明影响与回滚;用户回普通确认语(确认/同意/可以/继续)即放行最近一条挂起风险;不再要求粘贴字面技术授权句
|
|
74
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.05 --evidence-required
|
|
75
|
+
- test-layer: unit, integration
|
|
76
|
+
- test-size: medium
|
|
77
|
+
- test-scope: cli-contract
|
|
78
|
+
- evidence-plan: 拦截-挂起-普通确认放行链路的单元与集成测试,含多条挂起风险只放行最近一条的负向用例
|
|
79
|
+
- upgrade-reason: 触达安全门禁契约,需要中间层验证
|
|
80
|
+
- execution-mode: serial
|
|
81
|
+
- parallel-group: implementation
|
|
82
|
+
- write-scope: src/**, test/**
|
|
83
|
+
- owner-role: main-agent
|
|
84
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.05 --evidence-required
|
|
85
|
+
- integration-owner: main-agent
|
|
86
|
+
|
|
87
|
+
- [ ] T001.06 打通主流程闭环:多窗口并行、automation 高频调用、人话确认放行
|
|
88
|
+
- type: implementation
|
|
89
|
+
- deps: T001.05
|
|
90
|
+
- done: 同项目两个会话并行工作状态互不覆盖;automation 会话数百次工具调用只读本会话小文件、全局账本不再增长;高风险拦截后一句人话确认即继续
|
|
91
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.06 --evidence-required
|
|
92
|
+
- test-layer: integration, e2e
|
|
93
|
+
- test-size: large
|
|
94
|
+
- test-scope: user-flow
|
|
95
|
+
- evidence-plan: 端到端集成测试 + 测试报告
|
|
96
|
+
- upgrade-reason: 触达用户可见主流程,需要端到端证据
|
|
97
|
+
- execution-mode: serial
|
|
98
|
+
- parallel-group: integration
|
|
99
|
+
- write-scope: src/**, test/**, docs/basic/**
|
|
100
|
+
- owner-role: main-agent
|
|
101
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.06 --evidence-required
|
|
102
|
+
- integration-owner: main-agent
|
|
103
|
+
|
|
104
|
+
- [ ] T001.07 回归边界条件与失败处理:旧账本兼容、无绑定续接、多条挂起风险
|
|
105
|
+
- type: verification
|
|
106
|
+
- deps: T001.06
|
|
107
|
+
- done: 旧全局 sessions.jsonl 存在时停止写入且读取入口平滑降级;给出会话 ID 但本地无记录时列活跃变更请用户指认而不语义猜测;多条 pending approval 时确认只放行最近一条
|
|
108
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.07 --evidence-required
|
|
109
|
+
- test-layer: unit, integration
|
|
110
|
+
- test-size: medium
|
|
111
|
+
- test-scope: cli-contract
|
|
112
|
+
- evidence-plan: 边界用例单元与集成测试
|
|
113
|
+
- upgrade-reason: 触达降级兼容与安全边界,需要中间层验证
|
|
114
|
+
- execution-mode: serial
|
|
115
|
+
- parallel-group: verification
|
|
116
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
117
|
+
- owner-role: main-agent
|
|
118
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.07 --evidence-required
|
|
119
|
+
- integration-owner: main-agent
|
|
120
|
+
|
|
121
|
+
- [ ] T001.08 回归非功能约束:热路径 O(1) 与安全边界不放松
|
|
122
|
+
- type: verification
|
|
123
|
+
- deps: T001.07
|
|
124
|
+
- done: hook 热路径不再读取任何 O(N) 追加文件;高风险动作仍会先拦截,仅确认方式简化;新增代码有测试覆盖
|
|
125
|
+
- verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.08 --evidence-required
|
|
126
|
+
- test-layer: unit, integration
|
|
127
|
+
- test-size: medium
|
|
128
|
+
- test-scope: cli-contract
|
|
129
|
+
- evidence-plan: 性能形状断言 + 门禁负向用例 + 全量测试
|
|
130
|
+
- upgrade-reason: 触达性能与安全非功能约束,需要中间层验证
|
|
131
|
+
- execution-mode: serial
|
|
132
|
+
- parallel-group: verification
|
|
133
|
+
- write-scope: test/**, .openprd/harness/test-reports/**
|
|
134
|
+
- owner-role: main-agent
|
|
135
|
+
- local-verify: openprd tasks . --change remove-session-tracking-humane-approval --item T001.08 --evidence-required
|
|
136
|
+
- integration-owner: main-agent
|
|
137
|
+
|
|
138
|
+
- [ ] T001.09 维护 docs/basic 项目基础文档
|
|
139
|
+
- type: documentation
|
|
140
|
+
- deps: T001.08
|
|
141
|
+
- done: 已检查 docs/basic 是否因本次状态模型、hook 行为、确认流程变化而过期;backend-structure.md 已同步会话状态与审批链路事实
|
|
142
|
+
- verify: openprd standards . --verify
|
|
143
|
+
- test-layer: manual
|
|
144
|
+
- test-size: manual
|
|
145
|
+
- test-scope: docs
|
|
146
|
+
- evidence-plan: openprd standards . --verify
|
|
147
|
+
- upgrade-reason: 文档任务以标准校验和人工审查证据为主
|
|
148
|
+
- execution-mode: serial
|
|
149
|
+
- parallel-group: docs
|
|
150
|
+
- write-scope: docs/basic/**, README*.md
|
|
151
|
+
- owner-role: main-agent
|
|
152
|
+
- local-verify: openprd standards . --verify
|
|
153
|
+
- integration-owner: main-agent
|
|
154
|
+
|
|
155
|
+
- [ ] T001.10 运行 OpenPrd spec 校验
|
|
156
|
+
- type: governance
|
|
157
|
+
- deps: T001.09
|
|
158
|
+
- done: 生成的 change 通过 OpenPrd 校验
|
|
159
|
+
- verify: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
160
|
+
- test-layer: manual
|
|
161
|
+
- test-size: manual
|
|
162
|
+
- test-scope: governance
|
|
163
|
+
- evidence-plan: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
164
|
+
- upgrade-reason: 治理任务以结构校验、评审确认和变更状态证据为主
|
|
165
|
+
- execution-mode: serial
|
|
166
|
+
- parallel-group: governance
|
|
167
|
+
- write-scope: .openprd/changes/**, .openprd/**
|
|
168
|
+
- owner-role: main-agent
|
|
169
|
+
- local-verify: openprd change . --validate --change remove-session-tracking-humane-approval
|
|
170
|
+
- integration-owner: main-agent
|