weichen
8341168271
test(docs): extend Phase 0 security gates and archive test report
...
Add P0 negative tests, prod bundle forbidden-string scan, and the Phase 0
security止血 acceptance report with PASS results.
2026-09-12 01:00:58 +00:00
weichen
b600c9d518
fix(auth): restrict demo seed users to dev/test environments
...
Main no longer creates fixed-password demo accounts and legacy anonymous
fallback is limited to explicit dev/test in-memory fixtures.
2026-09-12 01:00:58 +00:00
weichen
00ec89a6b3
fix(security): add CORS allowlist and enforce principal on chat handlers
...
Replace wildcard CORS with configured origins and bind chat/task user
identity to the authenticated principal instead of request body fields.
2026-09-12 01:00:58 +00:00
weichen
2772c9e526
feat(security): complete P0 release blocking remediation
...
Unify auth middleware and remove X-User-ID trust, add project_members
authorization, sandbox workspaces via resolver, and admin-only reconcile
by run_id. Introduce goose migrations with startup schema gate, fail closed
when DB unavailable outside explicit ALLOW_IN_MEMORY, bundle web/dist in
app Dockerfile, and remove frontend pseudo-login fallback.
2026-09-11 16:04:53 +00:00
WeiCHEN and Cursor
28faa4932d
fix(agent): Chat Agent 全链路 P0-P5 整改
...
封堵鉴权旁路与导出 IDOR,DocGov 改服务端身份;对话层 PendingAction 接真实 docgov/taskrun;修复流式租约假死与会话级任务流;加固配置/doc_id/NULL;补齐 slog 与测试;前端 ErrorBoundary 与受控文档重试。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 18:22:45 +08:00
WeiCHEN and Cursor
bcfb9f415b
feat(api): add workflow document list, content read, and backfill script
...
Expose project controlled documents from DocGov, serve authenticated
output.md content by doc_id, and add idempotent backfill for run_1789111889557885000.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 16:46:53 +08:00
WeiCHEN and Cursor
6e489733ec
feat(agent): unify async task FinalizeTaskRun projection to chat and runs
...
Extend taskrun executors to return full TaskRunResult, finalize assistant
placeholder content with artifact metadata, and map quality_failed terminal
state instead of metadata-only updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 16:46:49 +08:00
WeiCHEN and Cursor
63cc8ab1da
feat(api): observer task runs decoupled from SSE lifecycle
...
Add POST/GET/POST cancel task run APIs, background worker with event replay,
workspace reconcile, runner child cancel, and chat message metadata updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 15:15:15 +08:00
WeiCHEN and Cursor
463f7d5ea5
feat(agent): project asset upload and squad materials assembly
...
Register uploads via CAS, resolve project asset pools into task materials
with server-side extraction, and propagate asset_id through the bizdev/squad chain.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 15:15:15 +08:00
WeiCHEN and Cursor
7d2f86bdc4
fix(api): pass materials through task/stage stream handlers
...
Stream SSE path now forwards Materials to ExecuteTask/ExecuteStage, and
TestTaskStream_MaterialsInjection targets the real /tasks/run/stream endpoint.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 15:15:11 +08:00
WeiCHEN
d084056638
feat(task): inject uploaded documents into task materials and enable LAN host access
...
- backend: add Materials field to TaskRunRequestDTO and forward to ExecuteTask
- backend: add TestTaskStream_MaterialsInjection test case in taskstream_test.go
- web: serialize materials in buildTaskRequest and add unit test
- web: improve isSameMessage identity comparison in messageIdentity.ts
- web: configure host: '0.0.0.0' in vite.config.ts for LAN collaboration access
2026-09-11 13:22:02 +08:00
WeiCHEN and Cursor
1438af18f7
feat(api): gate chat stream on chat_turns with session serial execution
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 13:18:16 +08:00
WeiCHEN
8f08a8dbe1
fix(chat): resolve intent recognition, workflow auth, and message ordering
2026-09-11 10:34:47 +08:00
WeiCHEN
0d3cc6a6ce
feat(review): seed 10 real medical device projects with dual workflows, multi-role dialogues and fix account-switch chat isolation
2026-09-11 00:47:23 +08:00
WeiCHEN
dc12bc5794
fix(workflow): fix 405/404/403 errors on workflow switcher by updating CORS, 5201 demo permissions and server restart
2026-09-11 00:13:06 +08:00
WeiCHEN
e9238c0ab1
feat(workflow): Phase 5 智能测试经理工作流、前置强依赖校验与文档血缘级联失效
2026-09-10 23:51:59 +08:00
WeiCHEN
0961e180a3
feat(workflow): Phase 3 Coordinator 上下文、动作路由与工作流运行 API 集成
2026-09-10 23:41:24 +08:00
WeiCHEN
7c899605ea
feat(workflow): Phase 1 & 2 数据库迁移、项目创建人权威化与多工作流控制面
2026-09-10 23:35:44 +08:00
WeiCHEN
4962cefdae
feat(export): 实现单次智能体回复导出、私密文档保存与隐私防泄露全套闭环 (Phase 0 - Phase 2)
...
- Phase 0: 实现服务端回复导出策略矩阵引擎 (replyexport.EvaluatePolicy)、数据库迁移 (2026-09-11-message-export-policy.sql)、SSE done 事件挂载与能力探测 API
- Phase 1: 构建前端 ReplyDocumentIR 语法树解析与渲染管道,支持 Markdown / DOCX 文件下载及带格式富文本剪贴板复制
- Phase 2: 实现私密自由文档 (freeform_documents) 领域服务、PostgreSQL 乐观锁版本管理、ACL 隐私隔离、一键共享与右侧栏编辑联动
- 专项修复:
1. 修复后台 API 路由注册并加入双向拉取同步,确保私密保存实时进入我的私密列表
2. 实现轻量回复专属 DOCX 生成与静默下载逻辑 (downloadDocxReply)
3. 将 LaTeX 公式转为标准 MathML 矢量标记,支持粘贴到 Microsoft Word / WPS 自动识别为原生公式
2026-09-10 23:04:04 +08:00
WeiCHEN
2c0c6a0348
feat(category): implement recategorize backfill engine and fallback mapping (Spec §3.4-3.5 A4-A5)
2026-09-10 15:56:53 +08:00
WeiCHEN
5a83b9fa44
feat(chat): 完成分类锚点坞(CategoryDock)与双轨制未读重构 (含方案A轮次归一化与起始位置居中)
2026-09-10 15:44:05 +08:00
WeiCHEN
709fadcef2
feat(history): 完成 Phase P3 虚拟滚动、聊天记录导出与协同未读提醒
...
- 虚拟滚动:接入 @tanstack/react-virtual,封装 useVirtualMessages 动态测高与 overscan 预渲染,迁移 anchorNavigator 锚点定位与 SSR 兼容降级
- 聊天记录导出:基于既有 docx 与 xlsx 依赖实现 chatExporter 与 ChatExportModal,新增服务端 /api/v1/chat/export/messages 支持按条件导出
- 协同未读标记:新增 useUnreadMarks 30s 轮询与服务端 /api/v1/chat/unread 接口,日历格与工具栏支持橙色未读徽标提示
- 测试与验证:新增 chat_unread_and_export_api_test.go,前端全量 126 项单元/组件测试及生产打包 100% 通过
2026-09-10 14:25:13 +08:00
WeiCHEN
de015d694a
feat(history): 实现三模历史搜索、每日智能协同摘要与时间轴侧栏 (Phase P2)
2026-09-10 13:53:07 +08:00
WeiCHEN
ad57685665
feat(history): 实现多级历史导航、分类筛选、日历联动与消息双向引用 (Phase P1)
...
- 后端核心与 API:
- 实现 ChatCategoryStat 结构体与 ListChatCategories 统计引擎 (Postgres + In-Memory 内存降级双轨)
- 注册 GET /api/v1/chat/categories 聚合接口
- 增强 GetChatDayMessages 支持自动根据 anchor_id 逆查 day_key,实现免猜测跨日检索
- 前端锚点导航引擎:
- 实现 anchorNavigator 模块 (快路径 DOM scrollIntoView + 1.8s 发光脉冲、慢路径跨日拉取、深链 Hash 解析)
- 编写 anchorNavigator.test.ts 单元测试并 100% 通过
- 分类过滤与轻量月历:
- 实现 CategoryFilterBar 水平分类筛选栏 (8 类业务标签,暗淡/高亮模式)
- 实现 HistoryCalendar 零依赖原生悬浮月历组件 (热度点与消息数,jumpToDate 快速定位)
- 消息引用与双向追溯:
- 消息气泡悬浮“引用”入口,点击提取发言人与摘要至输入框
- 实现 QuoteChip 待发引用标签与 QuoteCard 已发引用卡片
- 引用卡片点击直连锚点定位,快慢路径自动回溯
2026-09-10 13:40:44 +08:00
WeiCHEN
2ece0ce882
feat(history): 实现超长对话历史按日归档与滑动窗口 (Phase P0)
2026-09-10 13:24:32 +08:00
WeiCHEN
2c3e303561
feat(ctxmgr): implement chat memory vectorization, privacy dual-gate retrieval and memory composer (P2)
2026-09-10 11:38:36 +08:00
WeiCHEN
6a88ceb94d
feat(chat): wire multi-turn dialogue broken links (G1/G2/G3/G9) with session restore
2026-09-10 11:05:14 +08:00
WeiCHEN
747cd39e97
feat(core): update backend coordinator, docgov lease, squad workflow and web governance integration
2026-09-10 09:38:35 +08:00
WeiCHEN
7c1383768f
test(server): task stream transient injection, classification and resume integration tests
2026-09-09 18:35:51 +08:00
WeiCHEN
0b846e132a
feat(api): task stream request-id, resume mode and workspace-aware error classification
2026-09-09 18:27:29 +08:00
WeiCHEN and Cursor
8f29d84908
feat(agent): emit dialogue phases and classified SSE errors with request id
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-09 16:16:25 +08:00
WeiCHEN and Cursor
d548f773bc
feat(api): add auth and admin management endpoints
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 23:19:04 +08:00
WeiCHEN and Cursor
b80a6863c7
feat(server): integrate web spa static assets hosting and route fallback
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 14:51:50 +08:00
WeiCHEN and Cursor
1ec53b76d8
feat(cli): 终端自推荐标杆案例渲染与全业务链 E2E 端到端回归实操
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 14:00:59 +08:00
WeiCHEN and Cursor
7416a9fb35
feat(server): 新增会话列表、多轮历史消息查询与标杆案例语义检索 RESTful API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 13:44:05 +08:00
WeiCHEN and Cursor
c1e2575e0a
test(api): add e2e integration tests for claimed document SSE and docgov RESTful APIs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 13:07:31 +08:00
WeiCHEN and Cursor
8ff574c08b
feat(api): add RESTful endpoints and SSE streams for context and docgov lifecycle
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 13:07:26 +08:00
WeiCHEN and Cursor
67e52ffd42
feat(agent): 实现混合上下文装配引擎(Context Blender)与智能体小队沙箱对接
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 10:23:28 +08:00
WeiCHEN and Cursor
e938c99468
test(api): 补充SSE流式长连接端到端自动化测试套件
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 09:33:03 +08:00
WeiCHEN and Cursor
dce8431b82
feat(api): 实现HTTP服务骨架与Server-Sent Events流式交互接口
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 09:17:37 +08:00