Commit f16820e
feat(ai): WPS 前后端契约命名双轨迁移——doc_*/editor_command 新名与 wps_* 旧名并行一个发布周期 (#192)
Phase 3 遗留项落地(docs/AI_ARCHITECTURE.md §编辑器前后端契约):
后端双发(新名在前、旧名在后,顺序即契约):
- SSE 流式写入:doc_stream_data + wps_stream_data(AgentOrchestrator)
- client_action 命令:tool editor_command + wps_command,同 requestId;
同步打开 action doc_open_file_sync ↔ 旧名 wps_open_file_sync 映射(EditorBridgeService)
- client_action 打开/刷新:doc_open_file / doc_reload_file + wps_*(sendDualNamedAction)
- 结果回调路由:/api/ai/agent/editor-result 新路由,/wps-result 保留别名(EditorResultController)
前端双听 + 去重闩锁(project-overview handleClientAction):
- 一旦见到任一新名即判定新后端(SSE 单连接有序),此后丢弃所有旧名事件,
新旧后端×新旧前端四种搭配下每条指令都恰好执行一次
- sendEditorResult 改发新路由 /editor-result
前端零散 WPS 遗留清理:
- VariablePanel getWps prop → getEditor(绑定点/局部变量/注释同步)
- ChatInterface wps-tip-*/wps-link-text CSS 类 → doc-tip-*/doc-link-text
文档:AI_ARCHITECTURE.md 契约表改双轨状态并勾掉 Phase 3 待办(留摘旧名项);
ai_agent_dev.md §2.2 事件字典改为实际契约(移除已不存在的 wps_write)。
明确不动(存量数据,另立迁移方案):ProjectFile.wpsFileId、wps-files/ 存储前缀、
write_docx 的 wps_file_id 键、FeatureNotConfiguredException "wps" 标识。
验收:backend mvn test 全绿(JDK 21);npm run check:emits 过;
Electron 真机三链路实测通过——AI 打开文档(后端 Sent doc_open_file + 编辑器拉流)、
查找替换修订(双发各 1 次/去重后执行 1 次/新路由 200/success=true)、
流式写入新文档(产物标记恰出现一次,无双写);
双 e2e:test:lowa-e2e 33/33,test:app-e2e 29 步全过 0 异常。
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>1 parent 394a3e3 commit f16820e
15 files changed
Lines changed: 154 additions & 105 deletions
File tree
- backend/src/main/java/com/checkba
- controller/ai
- service/ai
- tools
- docs
- frontend/src
- components
- composables
- pages/project-overview
- services
- zetaoffice/public
Lines changed: 3 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
27 | | - | |
| 28 | + | |
28 | 29 | | |
29 | 30 | | |
30 | 31 | | |
| |||
Lines changed: 3 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
368 | 368 | | |
369 | 369 | | |
370 | 370 | | |
371 | | - | |
| 371 | + | |
| 372 | + | |
372 | 373 | | |
373 | 374 | | |
| 375 | + | |
374 | 376 | | |
375 | 377 | | |
376 | 378 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| |||
Lines changed: 41 additions & 26 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
33 | 35 | | |
34 | 36 | | |
35 | 37 | | |
| |||
98 | 100 | | |
99 | 101 | | |
100 | 102 | | |
101 | | - | |
102 | | - | |
| 103 | + | |
103 | 104 | | |
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
114 | 114 | | |
115 | 115 | | |
116 | 116 | | |
| |||
128 | 128 | | |
129 | 129 | | |
130 | 130 | | |
131 | | - | |
132 | | - | |
| 131 | + | |
133 | 132 | | |
134 | 133 | | |
135 | 134 | | |
136 | 135 | | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
142 | 140 | | |
143 | 141 | | |
144 | 142 | | |
145 | 143 | | |
146 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
147 | 158 | | |
148 | 159 | | |
149 | 160 | | |
| |||
210 | 221 | | |
211 | 222 | | |
212 | 223 | | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
223 | 238 | | |
224 | 239 | | |
225 | 240 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | | - | |
| 192 | + | |
193 | 193 | | |
194 | 194 | | |
195 | 195 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
61 | | - | |
| 61 | + | |
62 | 62 | | |
63 | | - | |
64 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
65 | 78 | | |
66 | 79 | | |
67 | 80 | | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | 81 | | |
74 | | - | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
75 | 85 | | |
76 | 86 | | |
77 | 87 | | |
| |||
171 | 181 | | |
172 | 182 | | |
173 | 183 | | |
174 | | - | |
175 | | - | |
| 184 | + | |
| 185 | + | |
176 | 186 | | |
177 | 187 | | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
183 | 195 | | |
184 | 196 | | |
185 | 197 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
21 | 23 | | |
22 | 24 | | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
23 | 30 | | |
24 | 31 | | |
25 | 32 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
142 | | - | |
143 | | - | |
144 | | - | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
145 | 145 | | |
146 | | - | |
| 146 | + | |
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
| |||
3475 | 3475 | | |
3476 | 3476 | | |
3477 | 3477 | | |
3478 | | - | |
| 3478 | + | |
3479 | 3479 | | |
3480 | 3480 | | |
3481 | 3481 | | |
| |||
3485 | 3485 | | |
3486 | 3486 | | |
3487 | 3487 | | |
3488 | | - | |
| 3488 | + | |
3489 | 3489 | | |
3490 | 3490 | | |
3491 | 3491 | | |
3492 | 3492 | | |
3493 | | - | |
| 3493 | + | |
3494 | 3494 | | |
3495 | 3495 | | |
3496 | 3496 | | |
3497 | 3497 | | |
3498 | 3498 | | |
3499 | 3499 | | |
3500 | | - | |
| 3500 | + | |
3501 | 3501 | | |
3502 | 3502 | | |
3503 | 3503 | | |
| |||
0 commit comments