chiguyong
fe93b0f2a4
docs: compound streaming-event-contract-residuals learning
...
Test / backend-test (pull_request) Has been cancelled
Details
Test / frontend-unit (pull_request) Has been cancelled
Details
Test / api-e2e (pull_request) Has been cancelled
Details
Test / frontend-e2e (pull_request) Has been cancelled
Details
Knowledge sedimentation for PR #14's 4 residual findings (1 P1 + 3 P2)
from ce-code-review of feat/ui-ue-enhancement. ce-compound Full mode run.
Created:
- docs/solutions/integration-issues/streaming-event-contract-residuals.md
Bug-track doc covering the 4-fix cluster: expert_step payload alignment,
execute_stream CancellationToken registration, team_synthesis orphan
milestone cleanup, synthesis_id dedup. Includes code examples, root cause
analysis, and prevention strategies (streaming contract testing,
cancellation registration checklist, terminal event symmetry, milestone
identifier pattern).
Updated:
- AGENTS.md: WebSocket Chat 协议 section expanded with streaming event
types (expert_step/expert_result_chunk/team_synthesis_chunk), synthesis_id
dedup contract, and execute_stream cancellation contract.
- CONCEPTS.md: Added "Streaming Milestone" entry to Expert Orchestration
cluster — the UI pattern for streaming progress indicators that transition
through streaming → completed|error states, including orphan failure mode
and synthesis_id matching semantics.
Overlap with existing docs/solutions/runtime-errors/streaming-event-whitelist-and-accumulation.md
is MODERATE (same area, different specific bugs). Flagged for potential
consolidation via ce-compound-refresh.
2026-07-01 13:53:10 +08:00
chiguyong
4866a16109
docs: compound streaming-event-whitelist-and-accumulation learning
...
Test / backend-test (pull_request) Has been cancelled
Details
Test / frontend-unit (pull_request) Has been cancelled
Details
Test / api-e2e (pull_request) Has been cancelled
Details
Test / frontend-e2e (pull_request) Has been cancelled
Details
Captures the ReAct streaming contract bug + WS event whitelist governance
from PR #13's review fixes. Three intertwined runtime issues documented:
1. P0: final_answer double-accumulated token content (logic_error)
2. P0: _VALID_TEAM_EVENT_TYPES whitelist missing 3 new streaming event types
3. P2: except (RuntimeError, TimeoutError, ConnectionError) too narrow for
LLMProviderError/ConfigValidationError in async generator
Adds ReAct Streaming Contract entry to CONCEPTS.md — defines the protocol
execute_stream() yields (token events with incremental content, then one
final_answer event with the concatenated full text). Consumers must pick
one accumulation strategy, cannot mix both without doubled output.
2026-07-01 13:15:01 +08:00
chiguyong
a872a459a6
docs: add PLAN_EXEC concepts + commit Wave 4 plan
...
Test / backend-test (pull_request) Has been cancelled
Details
Test / frontend-unit (pull_request) Has been cancelled
Details
Test / api-e2e (pull_request) Has been cancelled
Details
Test / frontend-e2e (pull_request) Has been cancelled
Details
CONCEPTS.md: new PLAN_EXEC section (Phase State Machine, PhasePolicy, Phase Violation, AdvancePhaseTool, _build_phase_engine).
docs/plans/: commit the Wave 4 plan document (was untracked).
2026-06-30 12:46:24 +08:00
chiguyong
2747bb4e64
chore(prior): malformed tool call handling, auth whitelist, dev scripts, wave1 plan
2026-06-29 20:25:03 +08:00
chiguyong
a6e1bf5884
feat(bitable): 多维表格文件层 + 默认字段 + 表内字段操作 + ce-code-review 修复 (Stage 1)
...
Test / backend-test (pull_request) Has been cancelled
Details
Test / frontend-unit (pull_request) Has been cancelled
Details
Test / api-e2e (pull_request) Has been cancelled
Details
Test / frontend-e2e (pull_request) Has been cancelled
Details
实现多维表格 UI 完整性 Stage 1(U1-U6),补齐飞书/twenty 对齐缺失的文件层、
默认字段与表内字段操作能力,并修复 ce-code-review 走查发现的 P0/P1 级问题。
后端(U1-U2):
- 新增 BitableFile 实体(models/db/repository/service/routes),三级层级:文件→数据表→字段/记录
- Schema V2 迁移:bitable_files 表 + tables.file_id 列,幂等(IF NOT EXISTS),保留 V1 孤儿表
- 新建数据表自动创建 5 个默认字段(标题/状态/日期/创建人/创建时间)
- agent-owned 字段在 create_record 时自动填充(按 type+owner 匹配,传 actor_user_id)
- 7 个文件 REST 端点 + IDOR ownership 检查(404-before-403,internal token 旁路)
前端(U3-U5):
- 文件列表页(FileCard 网格 + 新建/重命名/删除)+ 文件详情页(侧栏表格列表 + vxe-table 网格)
- Vue Router 嵌套路由 /bitable → /bitable/:fileId → /bitable/:fileId/:tableId
- 列头菜单(编辑/隐藏/删除字段)+ 末尾 + 列新增字段
- select/multiselect 字段自定义单元格编辑器 + Tag 展示
- Pinia store 扩展 file 状态与动作,深链直访回退 getFile,fileId 切换 watch
测试(U6):
- 文件 CRUD(12 例)+ 默认字段(10 例)单元测试
- 3 个 E2E spec(视图加载、文件流、字段操作),后端不可用时优雅跳过
ce-code-review 修复(P0/P1):
- P0 路由冲突:GET /files/{file_id} 遮蔽下载端点 → 下载改 /uploads/{filename}
- P0 IDOR:update/delete field/record/view 五端点补 ownership 检查
- P1 is_initialized property 缺失致二次初始化崩溃
- P1 直接 URL 导航失效(files 数组为空)→ selectFile 回退 getFile
- P1 fileId 切换不重载 → 增加 watch
- P1 轮询丢弃最终公式值(wasCalculating 守卫)+ 复用视图 filters
- P1 测试断言 200→201;test_db 无 URL 用例解除 postgres 标记得以执行
- P2 _check_table_ownership 403→404;输入长度校验;upload field-table 一致性校验
- P2 multiselect 浅比较 → 深比较;E2E bitable-view 补 waitForServer 守卫
验证:ruff check 通过;pytest 91 passed/116 skipped;vue-tsc --noEmit 通过。
2026-06-29 04:07:45 +08:00
chiguyong
5c15238a5a
fix(calendar): 修复 agent 创建日历事件后 UI 不刷新 + 文档化三根因三部曲
...
Test / backend-test (pull_request) Has been cancelled
Details
Test / frontend-unit (pull_request) Has been cancelled
Details
Test / api-e2e (pull_request) Has been cancelled
Details
Test / frontend-e2e (pull_request) Has been cancelled
Details
代码修复 (ce-debug):
- CalendarService.create_event 注入 notify_callback,成功后广播 calendar_event_created WS 消息
- app.py 调整 _calendar_ws_sender 闭包定义顺序,注入 CalendarService(与 ReminderScheduler 共享)
- tauri-auth.ts keychain fallback 修复(localStorage 始终作为备份)
- 新增 2 个广播回归测试
文档 (ce-compound + ce-compound-refresh):
- 新增 docs/solutions/ui-bugs/calendar-agent-create-no-refresh.md(第三根因:WS 广播缺失)
- 更新 calendar-capability-and-ui-fixes.md:刷新 test count + 加 Related Issues 前向引用
- 更新 jwt-secret-dev-mode-user-id-mismatch.md:扩展 e2e bullet + 加第三个根因引用
- CONCEPTS.md 新增 Service Broadcast Callback 条目 (Real-Time Fan-Out 节)
测试:
- 新增 E2E 测试套件 (admin/auth-persistence/bitable/calendar/conversation/documents/evolution/settings/skills)
- 新增 tests/e2e/test_api_coverage.py
- CI: .gitea/.github workflows/test.yml
2026-06-29 02:20:33 +08:00
chiguyong
75e9b58e46
docs(ce-compound): 记录 portal-platform 安全/可靠性修复批次
...
记录 ce-code-review 修复批次(commit 53faa60)的 10 个 P1/P2/P3 修复:
- P1: WeCom 重放、缓存跨用户泄漏、webhook 异常风暴、shutdown 泄漏
- P2: Feishu TTL、无界任务集、配额 N+1、冗余 SHA-256、未用参数
- P3: DIRECT_CHAT 去重
新增 docs/solutions/security-issues/portal-platform-security-reliability-fixes.md
CONCEPTS.md 补充 3 个领域术语:Per-User Cache Namespace、Webhook Signature Freshness、Webhook Backpressure
2026-06-26 01:47:57 +08:00
chiguyong
22c89763e2
docs: add long-horizon reliability fixes learning + scrub CONCEPTS.md
...
- New solution doc: logic-errors/long-horizon-reliability-code-review-fixes.md
Documents 13 code-review fixes (2 P0, 5 P1, 6 P2) across U1-U7
long-horizon reliability features (disclosure_level default, resume
plan_id mismatch, middleware dataclass compat, state offload readback,
checkpoint dedup, dynamic phase persistence, debate count restore,
loop detection reset, concurrent resume lock, FAILED phase handling,
checkpoint cleanup, offload type guard).
- CONCEPTS.md: add Expert Orchestration cluster (Disclosure Level,
State Offloading, Pipeline Checkpoint, Debate Phase, Resume).
Scrub Bitable entries to remove implementation specifics per
vocabulary rules (API paths, library calls, SQL syntax, class names,
enum values).
2026-06-25 02:40:22 +08:00
chiguyong
71eaf8dc7c
docs: add bitable security/reliability patterns solution doc + CONCEPTS.md
...
Deploy to Production / deploy (push) Has been cancelled
Details
- docs/solutions/architecture-patterns/bitable-companion-service-security-reliability-patterns.md
Knowledge-track doc capturing 10 security/reliability patterns from the
bitable companion service (SSRF prevention, SQL injection, IDOR, atomic
task claiming, cache invalidation, composite cursor, batch ops, async
I/O safety, OOM prevention, internal token auth)
- CONCEPTS.md
Seeded with 3 core domain nouns: Bitable, Field Ownership, Recalc
- AGENTS.md
Added discoverability tips for docs/solutions/ and CONCEPTS.md
2026-06-25 01:25:06 +08:00