fix(websocket): 修复 app.py 不可导入并新增真实链路验证
- 将 /api/sessions/{sid}/ws 端点移入 create_app(此前置于模块级导致整模块 import NameError,回归被验证拦截)
- register_loop + subscribe 调整至 accept 之前,缩小连接已开但未订阅期间的进度丢失窗口
- 新增 tests/test_verify_ws_real_flow.py:驱动真实 HTTP 聊天流程断言 WS 收到 agent 实际发射的 parse/impact 进度
- 同步 WebSocket 计划文档 Task 3 代码片段(标注端点必须位于 create_app 内)
- 全量 pytest 实测 583 passed / 99.03% 达标
This commit is contained in:
@@ -1,25 +1,26 @@
|
||||
Task 1: complete (commits 35d845f..df9427c, review clean)
|
||||
Task 2: complete (commits df9427c..66753e4, review clean; fix: added (コード,MASTER) per design §3.5.1); Minor backlog: trailing newlines in excel_reader/provenance/excel_helpers/sheet_detector files, detect_sheet_type no docstring
|
||||
Task 3: complete (commits 66753e4..4f61d24 + log b5bd21b, review clean); Minor backlog += sheet_nature MIXED branch/test coverage gap, empty-row threshold boundary test, max_cols based on len(row) vs effective cols
|
||||
Task 4: complete (commits 4f61d24..63d0c90 + log 0051ad5, review clean); Minor backlog += merge_fill invalid min_row=0 branch, extract_table header_row out-of-range IndexError, trailing newlines in merge_fill/table_extractor, coverage gaps (empty matrix/row-start/header_row param)
|
||||
Task 5: complete (commits 63d0c90..5818dd0 includes log, review clean); Minor backlog += formatting_detector: real tinted theme colors silently None (doc note: explicit RGB only), missing positive assertions for font/fill color, trailing newlines
|
||||
Task 6: complete (commit a9cc3c9, review clean; impl matches plan placeholder-table design, no FreeText types needed); Minor backlog += free_text_extractor: hardcoded extraction_method string vs enum value, Provenance.row is block index not physical row (doc note)
|
||||
Task 7: complete (commit 18da20d, review approved); IMPORTANT design gaps tracked -> (1) MIXED sheet collapsed to pure-table path (design 3.5.2 wants per-paragraph best-parse) — will surface in Task 8 real samples or Impact; (2) comments collected flat, CellValue.comment never attached — consumers must re-link via source_uri
|
||||
FINAL: milestone2 有条件通过 -> must-fix x2 修复闭环 (eebed38, 41 passed) -> 交付报告 docs/milestone2-excel-parser-review.md; remaining deferred list documented (MIXED segmented parse, comments re-link contract, ExtractionMethod enum, theme colors, empty-sheet, formula/hidden/merged-header). Coverage report optional (pytest-cov not installed).
|
||||
M2.5 Task 9: complete (commits 81c6b6c..34ef28b + log 0f137b9, review clean); Minor backlog += trailing newlines in paragraph_splitter.py/test_paragraph_splitter.py
|
||||
M2.5 Task 10: complete (commits 0f137b9..539945b, review clean); Minor backlog += mid-file import placement in test_excel_parser.py (style)
|
||||
M2.5 Task 11: complete (commits 539945b..1e3f702 + log bc79945, review approved); MIXED 装配分支(分割→每段 classify,TABLE 段 seg_fmt_map 段内坐标修正 formatting_map 错位;free_text 段防二次递归),TABLE/FREE_TEXT 路径不变; Minor backlog += MixedParagraph.matrix stores forward-filled segment vs docstring raw matrix wording, duplicate fmt_map loops in excel_parser (extractable later)
|
||||
M2.5 Task 12: complete (commit 7592516, review approved; minor: assert msg tweak for brief typo)
|
||||
M2.5 Task 13: complete (commit d93cc77, review approved; minor: inline comments in test, enum-to-enum assert fine given literal-assert exists)
|
||||
M2.5 FINAL: 整体评审通过(base 81c6b6c..d93cc77,58 passed,无 skip); Minor backlog unchanged (progress dedup done this edit; log 范式步骤 "整体迭代"→"反馈迭代" for Task13 row; delivery report docs/milestone2-5-mixed-parser-review.md pending creation)
|
||||
M3.1 IE Task 1: dispatch (base 2fbff07)
|
||||
M3.1 IE Task 1: complete (commit c2fad77, review clean; Minor backlog: types.py unused Any import, test_inference_errors.py unused pytest import, __init__.py missing trailing newline — all verbatim from brief)
|
||||
M3.1 IE Task 2: complete (commit 71d38b9, review clean; Minor: unused pytest import in token test, weak fake-encoder discrimination, check _AI_USAGE_LOG mid-table blank line)
|
||||
M3.1 IE Task 3: complete (commit 59c1ea7, review clean; Minor: unused Prompt import in prompt_registry, duplicate jinja2 import)
|
||||
M3.1 IE Task 4: complete (commit per git log, review clean; Minor backlog: retry_backoff consumed via time.sleep affects latency in real calls, client not closed via __enter__ context manager)
|
||||
M3.1 IE Task 4: complete (commit add7b15, review clean; Minor: 5xx chain message redundancy, test comment mismatch 0.01, un-typed 3xx/malformed-JSON JSONDecodeError passthrough - leave to Task5/engine fold)
|
||||
M3.1 IE Task 5: complete (commit 8bc5e5e, review clean 3 deviations all justified; Minor: for-loop var name in failed chat, test import hygiene, raw-template leak known tradeoff, api-design patch +source column slight overreach)
|
||||
M3.1 IE final review: base 2fbff07..8bc5e5e -> With fixes; fixed 2 Important (LLMResponseError wrap for malformed 2xx, explicit 2xx check re 3xx); Issue3 chat_structured no model fallback confirmed intentional per plan L1142 (v1 single-model, prod passes explicit model); Minors logged (LLMResponseError now live, truncation in chat_structured, prompt renderer duplicate import, prompts-dir load not v1, no context manager, last-error only)
|
||||
RETRO 2026-08-09: snapshot saved (.superpowers/sdd/retro-2026-08-09.json); first recorded for this workspace
|
||||
M3.1 backlog clean (cb2deda): chat_structured truncation, engine test import hygiene, client context manager; remaining backlog: [none critical]
|
||||
WEB UI REVIEW 2026-08-09 (docs/web-ui-design-review-v1.1.md): v1.0→v1.1, 7 findings all fixed (F1 write_instruction file_type + api §2.2, F2 TaskQueue abstraction, F3 settings page, F4 preview path, F5 conflict card, F6 history page, F7 a11y); synced design.md §8 mirror
|
||||
# SDD Progress Ledger - feat/websocket-progress
|
||||
|
||||
Branch: feat/websocket-progress
|
||||
Base: 014a51a (规划产物提交)
|
||||
|
||||
- [ ] Task 1: ProgressHub
|
||||
- [ ] Task 2: ChatAgent emit
|
||||
- [ ] Task 3: WS endpoint
|
||||
- [ ] Task 4: chat_ws.js + 集成
|
||||
- [ ] Task 5: e2e + docs
|
||||
- [ ] Final whole-branch review
|
||||
|
||||
- Task 1: complete (commits 74d15cc..91ac52d, review clean; 补充 pytest-asyncio 依赖)
|
||||
|
||||
- Task 2: complete (commit 8493bea, review clean; agent 发射接线正确)
|
||||
|
||||
- Task 3: complete (commit 61611b6, review clean; 端点置于 create_app 内)
|
||||
|
||||
- Task 4: complete (commit 14a7dc3, review clean; chat_ws.js 路由+集成正确)
|
||||
|
||||
- Task 5: complete (commit 6cb92e3, 全量 582 passed / 99.03%)
|
||||
- [ ] Final whole-branch review
|
||||
|
||||
- Final whole-branch review: APPROVED_WITH_MINORS (非阻塞 I1/I2 已记录)
|
||||
- Merged to main @ 9f5342e (ff-only)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user