Files

50 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Acceptance: single-react-chat-sse-cutover
## Result
- Status: archived
- OpenSpec tasks: 14/14 complete
- Interface impact: L4 breaking HTTP/frontend contract
- Public Chat protocol: unique named-event SSE `POST /api/chat`
## Static Verification
- 组合路由保持 `/api/chat`、`/api/ai_ops`、`/api/chat/clear`、`/api/chat/session/{sessionId}` 和 `/runs`;`/api/chat_stream` 已删除。
- 生产 Controller/前端 legacy Chat token scan:0。
- `ChatController` forbidden dependency scan:0;结构测试固定其三个 protocol/application dependencies。
- SSE payload 只包含固定 metadata/status/content/failure/done fields,`CANCELLED` 不作为公开 done outcome。
- mode selector DOM、state、consumer 和 CSS 已删除。
## Script Verification
- `mvn -q -DskipTests compile`:通过。
- Stage 2-6B + AiOps regression selection:24 suites / 101 tests,0 failure/error/skipped。
- `openspec validate single-react-chat-sse-cutover --strict`:通过。
- `node --check src/main/resources/static/app.js`:通过。
- `git diff --check`:通过,仅有仓库既存 LF/CRLF 提示。
## Browser or Manual Verification
- 本阶段未运行浏览器人工验证;前端协议由静态 contract test 和 JavaScript syntax check 覆盖。
## Not Verified
- 未运行 live 模型、Redis、日志和 MySQL E2E;按 ISS-014 阶段门禁统一留到阶段 7。
- 未验证外部第三方 Chat API consumer;L4 变更不提供兼容分支,外部消费者必须同步迁移到 named-event SSE。
## Migration and Rollback
- 部署必须将后端 SSE endpoint 与 bundled frontend consumer 作为同一版本原子发布。
- 回滚必须同时回滚 Controller 和 frontend 到阶段 6A commit;V012 additive nullable migration 可保留。
- 不允许通过恢复 `/api/chat_stream`、同步 JSON consumer 或旧 message wrapper 形成双轨兼容。
## Remaining Work
- 阶段 7:物理删除旧 Agent/Graph/Hook/ThreadLocal/ChatService 路径和过时测试,更新文档并完成最终 live E2E、日志与数据库核验。
## Archive
- `.archive-ready`: created
- OpenSpec archive: `openspec/changes/archive/2026-07-22-single-react-chat-sse-cutover`
- Main spec sync: `openspec/specs/single-react-chat-sse-cutover/spec.md` (10 requirements added)