Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1632 commits
Select commit Hold shift + click to select a range
d9cb139
fix(channel): reconcile subscription state with effective access
SuperstructureJH Oct 28, 2026
d3d832a
refactor(sidebar): remove navigation customization
KinyooZ Oct 28, 2026
059b7da
fix(client): align app square cards with dark theme surfaces
SuperstructureJH Oct 28, 2026
9a077fd
fix(apps): 修复发现广场应用对话返回应用中心 (#2543)
SuperstructureJH Oct 28, 2026
96690eb
Merge remote-tracking branch 'upstream/feat/bisheng-work-120-main' in…
SuperstructureJH Oct 28, 2026
cd658cf
docs: record current baseline and app theme verification
SuperstructureJH Oct 28, 2026
bdfdfed
Merge remote-tracking branch 'upstream/feat/bisheng-work-120-main' in…
SuperstructureJH Oct 28, 2026
a35ac9b
fix(dsh): simplify sensitive word settings and recovery controls
zgqgit Oct 28, 2026
20f3281
docs: record PR and current app navigation compatibility
SuperstructureJH Oct 28, 2026
b872e47
fix(client): 修复发现广场应用卡片暗色主题 (#2544)
SuperstructureJH Oct 28, 2026
60aa3ad
fix(apps): persist assistant pin state through unified app lookup
SuperstructureJH Oct 28, 2026
502edc3
fix(apps): 修复助手置顶状态保存与取消置顶 (#2545)
SuperstructureJH Oct 28, 2026
ff422d3
fix(work): complete knowledge tool registration and permission upgrade
SuperstructureJH Oct 28, 2026
5dfb2e7
fix(work): 补齐知识检索旧库升级的工具登记与权限校准 (#2546)
SuperstructureJH Oct 28, 2026
0856c3e
test(knowledge): 覆盖搜索命中 TXT 的正文预览回归 (#2538)
SuperstructureJH Oct 28, 2026
4436fb9
fix(deploy): require knowledge tool upgrade before release completion
SuperstructureJH Oct 28, 2026
d3ea271
fix(deploy): 将知识工具升级接入发布完成检查 (#2547)
SuperstructureJH Oct 28, 2026
1e1c2b9
fix(permission): scope department grants to mounted tenant roots
zgqgit Oct 28, 2026
62ad8ec
fix(dsh): deduplicate safety details and simplify audit request infor…
zgqgit Oct 28, 2026
5666a78
feat(open-api): enforce service account and app tenant consistency (F…
zgqgit Oct 28, 2026
d2ff49e
merge: integrate F113 tenant consistency into feat/3.0.0
zgqgit Oct 28, 2026
a098e63
Merge beta7 into feat/3.0.0
Oct 28, 2026
1b55e45
fix(client): replace retired tool selector component
Oct 28, 2026
6d56b06
fix(vibe): close publishing approval and tenant management defects
zgqgit Oct 29, 2026
9ef489d
merge: integrate Vibe QA fixes into feat/3.0.0
zgqgit Oct 29, 2026
ee61212
fix(dsh): 每月积分上限调整为 100 万,支持一位小数 (#2551)
SuperstructureJH Oct 29, 2026
39f6db2
fix(dsh): simplify safety settings and conversation audit presentation
zgqgit Oct 29, 2026
3df5598
Merge branch 'feat/3.0.0' into release
Oct 29, 2026
6b0e4c4
fix: scope tenant-admin app management and separate permission error …
zgqgit Oct 29, 2026
3eb8f15
merge: fix tenant-admin build scope and permission error codes
zgqgit Oct 29, 2026
3950752
fix(dsh): gate sensitive word controls on commercial edition
zgqgit Oct 29, 2026
ac3a39d
Feat/3.0.0 (#2553)
zgqgit Oct 29, 2026
63e9d67
fix(subscription): explain crawl failures and manual support on work …
SuperstructureJH Oct 29, 2026
073a5e0
恢复工作台语音输入框样式
binfeng1018 Oct 29, 2026
e30dd8f
fix(vibe): reduce data helper startup latency and serialize reads
zgqgit Oct 29, 2026
4721204
fix(linsight): let workspace grep treat | as keyword alternation
jieyuhuayang Oct 29, 2026
5b763a6
fix(platform): unify tenant views and hosted app management
zgqgit Oct 29, 2026
511a996
fix: improve management UI and isolate business tenant views
Oct 29, 2026
d7f7943
merge: integrate latest 3.0.0 fixes with isolated business views
Oct 29, 2026
d4544aa
merge: sync 3.0.0 management and UI fixes to release
Oct 29, 2026
5f069eb
docs(agents): shorten root AGENTS.md by moving scoped rules out
jieyuhuayang Oct 29, 2026
06ded20
fix(app-runtime): keep declared egress domains on automatic recovery
jieyuhuayang Oct 29, 2026
638f0f1
fix: apply global admin tenant view to application and knowledge lists
Oct 29, 2026
481381e
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
Oct 29, 2026
4048281
merge: sync global admin tenant view behavior to release
Oct 29, 2026
1154174
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
Oct 29, 2026
847105c
merge: include latest 3.0.0 recovery fix
Oct 29, 2026
1a07073
fix(dsh): uncap users no credit rule matches and explain credit rejec…
jieyuhuayang Oct 29, 2026
2c9f82d
fix(platform): restore management layout and align credit scope controls
KinyooZ Oct 30, 2026
2bd8d8e
fix(vibe): allow platform super admins to delete hosted apps
zgqgit Oct 30, 2026
dd66c1d
调整录音按钮样式
binfeng1018 Oct 30, 2026
2a4d6aa
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
binfeng1018 Oct 30, 2026
cfcefd6
fix(ui): size segmented items by content and preserve square equal wi…
KinyooZ Oct 30, 2026
bb62790
fix(tools): give the knowledge search seed category its own id
jieyuhuayang Oct 30, 2026
6b69ead
fix(sandbox): restore the container default for fresh installs (F068 …
jieyuhuayang Oct 30, 2026
85d968c
feat(deploy): simplify compose install and publish runtime images to CR
zgqgit Oct 30, 2026
06ffc6f
fix(permission): reuse compatible IDs for all-member grant changes
zgqgit Oct 30, 2026
c9a6b81
style(ui): refine tabs and segmented navigation visuals
KinyooZ Oct 30, 2026
a40f4ad
fix(model): only offer rerank for supported providers and add OpenAI …
jieyuhuayang Oct 30, 2026
ac4805e
fix(client): stop task-mode sidebar selector from retaining every str…
jieyuhuayang Oct 30, 2026
d214381
feat(linsight): guide per-source subagent delegation and scratch note…
jieyuhuayang Oct 30, 2026
ec53ba0
fix(sandbox): harden runner and container executor against F068 test …
jieyuhuayang Oct 30, 2026
1c55fe7
docs(f068): add sandbox test report and correct test-case preconditions
jieyuhuayang Oct 30, 2026
b557477
fix(permission): show subject-specific search empty messages
SuperstructureJH Oct 30, 2026
0f460f7
fix: resolve 3.0 tenant administration and knowledge chat regressions
Oct 30, 2026
b8965c7
merge: include 3.0 tenant and knowledge chat fixes
Oct 30, 2026
af67d2e
merge: integrate 3.0 fixes into release
Oct 30, 2026
9668ebe
ci(runtime): leave deployment integration validation to QA
zgqgit Oct 30, 2026
842eba3
chore(client): prune obsolete console lint suppression
Oct 30, 2026
0b5568d
merge: sync frontend lint cleanup into release
Oct 30, 2026
d396112
Merge branch 'fix/3.0.0/linsight-per-source-delegation' into feat/3.0.0
jieyuhuayang Oct 30, 2026
5b57e74
merge: preserve latest 3.0 updates before publishing fixes
Oct 30, 2026
4d878c4
merge: sync latest 3.0 updates and fixes into release
Oct 30, 2026
d9f2f47
perf(client): fold task-mode stream frames by call_id at ingest
jieyuhuayang Oct 30, 2026
6b958e9
chore(deploy): pin freshly published compose test images
zgqgit Oct 30, 2026
48a5aef
fix(permission): allow grant subject pickers for linsight skills
zgqgit Oct 30, 2026
55c6ddf
fix(permission): allow grant subject pickers for linsight skills
zgqgit Oct 30, 2026
5a2052c
style(platform): add navigation icons and align knowledge library icons
KinyooZ Oct 30, 2026
f09240e
fix(ui): show only final level in cascader trigger
KinyooZ Oct 30, 2026
9ee57b7
Merge origin/feat/3.0.0 into codex/compose-install
zgqgit Oct 30, 2026
142a5a9
fix(deploy): wait for object storage before starting application serv…
zgqgit Oct 30, 2026
ac2b09c
fix(license): accept empty gateway remaining days
zgqgit Oct 30, 2026
b82c38b
fix(license): accept empty gateway remaining days
zgqgit Oct 30, 2026
d641f73
fix(3.0): correct hosted app filters and cascade chat model selection
Oct 30, 2026
f3d47b2
merge: integrate latest 3.0 updates and complete picker regressions
Oct 30, 2026
6dcef3f
merge: sync hosted app and model selection fixes into release
Oct 30, 2026
92ae1e0
fix(work): localize built-in skill names and descriptions
SuperstructureJH Oct 30, 2026
dd1c0e1
fix(linsight): bisheng-docx 支持按用户模板排版,不再套国标版式重建
jieyuhuayang Oct 30, 2026
8d93aff
fix(subscription): 修复新增网站失败原因与人工处理邮箱占位(1.2.0) (#2554)
SuperstructureJH Oct 30, 2026
3c8d67e
Merge latest Work 1.2.0 baseline and reconcile PR 2561 status records
SuperstructureJH Oct 30, 2026
78815c6
fix(permission): 按授权对象显示搜索空态文案 (#2561)
SuperstructureJH Oct 30, 2026
a13758e
fix(openfga): serialize startup store and model bootstrap
zgqgit Oct 30, 2026
a6b0e8d
Merge latest Work 1.2.0 baseline and reconcile PR 2563 status records
SuperstructureJH Oct 30, 2026
ffb2ed1
fix(work): 补齐内置 Skill 名称与说明的语言切换 (#2563)
SuperstructureJH Oct 30, 2026
1954f60
fix(chat): 修复知识空间问答跳转新会话后崩溃 (#2564)
SuperstructureJH Oct 30, 2026
3567016
fix(cli): complete release notes guidance and version smoke check
zgqgit Oct 30, 2026
a66353e
fix(linsight): export_docx/export_pdf no longer crash on markdown images
jieyuhuayang Oct 30, 2026
c49b5a9
merge: integrate Work 120 updates into compose deployment branch
zgqgit Oct 30, 2026
5276aad
fix(permission): preserve revocable grants during system bootstrap
zgqgit Oct 30, 2026
ee3a978
chore(deploy): use r5 images for fresh installation validation
zgqgit Oct 30, 2026
30b80d4
feat(linsight): download a markdown deliverable together with its images
jieyuhuayang Oct 30, 2026
59c3e47
fix: restore chat defaults and guidance, refine knowledge selection a…
Oct 30, 2026
caa82ba
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
Oct 30, 2026
d1e6151
merge: sync 3.0 chat and audit fixes into release
Oct 30, 2026
1bce273
feat(model): add an OpenAI-compatible provider type
jieyuhuayang Oct 30, 2026
d72dbff
merge: OpenAI-compatible provider type into release
jieyuhuayang Oct 30, 2026
6ac7704
feat(vibe): unify permission actions and v2 authorization (F114)
zgqgit Oct 30, 2026
fb4841a
docs(sdd): pin F114 implementation evidence and open gates
zgqgit Oct 30, 2026
a56540a
chore(deploy): simplify Docker directory and log in to public CR regi…
zgqgit Oct 30, 2026
a59e3ce
merge: integrate compose-install branch into feat/3.0.0
zgqgit Oct 30, 2026
56f543e
fix(ui): tidy the header, model form labels and grouped select panels
jieyuhuayang Oct 30, 2026
5d04b82
Merge branch 'feat/3.0.0' into codex/114-vibe-permission-actions
zgqgit Oct 30, 2026
20f2cef
fix(ui): tidy the header, model form labels and grouped select panels
jieyuhuayang Oct 30, 2026
e1280d0
merge: integrate F114 with latest feat/3.0.0
zgqgit Oct 30, 2026
bf7ad32
fix(client): keep desktop dialog backgrounds transparent
SuperstructureJH Oct 30, 2026
05d3290
fix(client): 桌面内弹窗取消视觉蒙版 (#2566)
SuperstructureJH Oct 30, 2026
eb41813
fix: retain daily parsed images and correct workflow runtime and subs…
Oct 30, 2026
ccab1de
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
Oct 30, 2026
38837dd
merge: sync daily image and workflow runtime fixes into release
Oct 30, 2026
9510e96
fix(i18n): shorten the model provider form field hints
jieyuhuayang Oct 30, 2026
f59ee8d
fix(i18n): shorten the model provider form field hints
jieyuhuayang Oct 30, 2026
250fdce
fix(chat): 修复桌面应用会话下拉闪烁与侧栏操作 (#2567)
SuperstructureJH Oct 30, 2026
6da80ac
merge: sync latest 3.0 into release
Oct 30, 2026
590fb1e
Merge remote-tracking branch 'origin/feat/3.0.0' into codex/114-vibe-…
zgqgit Oct 30, 2026
63f3759
fix(subscription): 调整订阅首页留白与栏目比例
SuperstructureJH Oct 30, 2026
4cc8f56
fix(subscription): 调整订阅首页留白与栏目比例 (#2569)
SuperstructureJH Oct 30, 2026
32573ac
Merge remote-tracking branch 'origin/feat/3.0.0' into release
zgqgit Oct 30, 2026
6bdff72
fix(vibe): derive preview tenant from owning application
zgqgit Oct 30, 2026
4d9c989
Merge feat/3.0.0: fix preview tenant lock found in F114 acceptance
zgqgit Oct 30, 2026
5e71c6a
fix(vibe): preserve service account management scope and deleted-app …
zgqgit Oct 30, 2026
ea0c5f5
Merge feat/3.0.0: close F114 service-account cleanup found by E2E
zgqgit Oct 30, 2026
cc7ac6e
fix(linsight): fail a model turn cut off by the token limit instead o…
jieyuhuayang Oct 30, 2026
a71bb30
fix(frontend): retain task skills after send and correct touch number…
Oct 30, 2026
497256d
Merge remote-tracking branch 'origin/feat/3.0.0' into feat/3.0.0
Oct 30, 2026
c40d3b3
merge: sync task skill persistence and latest 3.0 fixes into release
Oct 30, 2026
e359807
fix(chat): keep app return action visible in compact headers
SuperstructureJH Oct 31, 2026
f3b2dae
fix(knowledge): preserve selected list tab when returning from space
SuperstructureJH Oct 31, 2026
6d5651a
fix(chat): 恢复紧凑布局应用会话返回按钮 (#2573)
SuperstructureJH Oct 31, 2026
d4273d0
fix(client): preserve desktop typography in embedded panes
SuperstructureJH Oct 31, 2026
2ebff30
fix(client): 修复桌面知识空间设置页字号偏大 (#2575)
SuperstructureJH Oct 31, 2026
8547017
Merge latest release into knowledge-return-tab and reconcile delivery…
SuperstructureJH Oct 31, 2026
9a985f4
fix(knowledge): 返回空间列表时保留所选标签 (#2574)
SuperstructureJH Oct 31, 2026
de390d4
fix(app-chat): show stopped status for interrupted streaming answers
SuperstructureJH Nov 2, 2026
3120e71
fix(app-chat): 手动停止流式回答后显示已停止标识 (#2577)
SuperstructureJH Nov 2, 2026
5c68cf5
fix(client): resolve application attachment downloads through bucket …
SuperstructureJH Nov 2, 2026
611fb0f
fix(client): 修复应用历史 PDF 附件下载返回 HTML (#2578)
SuperstructureJH Nov 2, 2026
ebbcf46
fix(chat): hide deleted application sessions from history and details
SuperstructureJH Nov 2, 2026
7807235
fix(chat): 已删除的应用会话旧链接返回空历史 (#2579)
SuperstructureJH Nov 2, 2026
23661b5
fix(client): restore full-window desktop dialog dimming
SuperstructureJH Nov 2, 2026
d52a730
Merge remote-tracking branch 'upstream/feat/bisheng-work-120-main' in…
SuperstructureJH Nov 2, 2026
47ac3bc
test(client): separate native overlay geometry from OS input acceptance
SuperstructureJH Nov 2, 2026
a6c3aec
fix(chat): preserve usable application content width when scaled
SuperstructureJH Nov 2, 2026
037d603
fix(client): 桌面弹窗恢复整窗统一蒙层 (#2580)
SuperstructureJH Nov 2, 2026
38864a9
Merge latest release and preserve both delivery records
SuperstructureJH Nov 2, 2026
e3a1b3f
fix(knowledge): reconcile square join state with effective access
SuperstructureJH Nov 2, 2026
26eb25b
fix(chat): 修复缩放后应用侧栏挤占返回与对话区域 (#2581)
SuperstructureJH Nov 2, 2026
a0e84fc
Merge remote-tracking branch 'upstream/feat/bisheng-work-120-main' in…
SuperstructureJH Nov 2, 2026
76e6210
fix(knowledge): 撤销查看权限后同步广场加入状态并支持重新申请 (#2582)
SuperstructureJH Nov 2, 2026
22220ed
fix(knowledge): avoid concurrent retrieval on a shared async session
zgqgit Nov 2, 2026
36e916a
fix(knowledge): 修复 Work 多选知识空间检索失败
zgqgit Nov 2, 2026
2cbced3
fix(upload): exempt shared temporary uploads from management write scope
Nov 2, 2026
1663724
merge: sync temporary upload scope fix from 3.0 into release
Nov 2, 2026
8cc6c1a
Merge Work 120 fixes into feat/3.0.0
Nov 2, 2026
841504e
Merge branch 'feat/3.0.0' into release
Nov 2, 2026
98f24ba
fix(vibe): report runtime status and current approval visibility
zgqgit Nov 2, 2026
c6d5ed3
Merge F115 runtime review fixes into feat/3.0.0
zgqgit Nov 2, 2026
368894d
fix(open-api): raise task-mode text limit from 20000 to 100000 charac…
jieyuhuayang Nov 2, 2026
94f3b7b
Merge local feat/3.0.0 retrieval history with latest release line
zgqgit Nov 2, 2026
f13c294
fix(permission): preserve versions when reactivating membership sources
zgqgit Nov 2, 2026
954f8ba
fix(permission): 修复成员重新加入后退出的可见性残留
zgqgit Nov 2, 2026
f1a5162
perf(knowledge): port visible-first managed space batching to release…
zgqgit Nov 2, 2026
cbd755b
Merge concurrent membership reactivation fix with managed-list perfor…
zgqgit Nov 2, 2026
a6ea4a7
perf(knowledge): port space info access hints to release line
zgqgit Nov 2, 2026
3b3b507
fix(dsh): simplify credit allocation list and clarify allowance
SuperstructureJH Oct 29, 2026
14894c5
docs(dsh): record restored credit allocation delivery checks
SuperstructureJH Nov 2, 2026
ff2b89a
fix(permission): retain existing grants for inactive models
zgqgit Nov 2, 2026
86203e7
Merge inactive-model grant visibility fix into feat/3.0.0
zgqgit Nov 2, 2026
2bfa7f4
feat(client): show full skill text on hover in command skill picker
jieyuhuayang Nov 2, 2026
510738b
Feat/3.0.0 (#2584)
zgqgit Nov 2, 2026
725ee5b
fix(dsh): 精简积分分配列表并补充额度说明 (#2583)
SuperstructureJH Nov 2, 2026
0a913ab
fix(client): restore knowledge square preview navigation
SuperstructureJH Nov 2, 2026
23a4b97
fix(client): 修复发现广场知识空间预览返回与重复导航 (#2585)
SuperstructureJH Nov 2, 2026
0080b2d
feat(tutorial): localize hosted app tutorial for en-US and ja
jieyuhuayang Nov 2, 2026
aeda002
fix(tutorial): drop raw Chinese CLI message from en/ja FAQ title
jieyuhuayang Nov 2, 2026
f42b35a
fix(client): show conversation share after user input
SuperstructureJH Nov 2, 2026
d10ed82
fix(client): add search to composer skill menu (IKPKNU)
SuperstructureJH Nov 2, 2026
b388b7b
fix(linsight): flatten nested ask_user options instead of rendering r…
jieyuhuayang Nov 2, 2026
82a5155
上传的技能需要区分技能文件和技能压缩包,文件的大小限制在200Mib,压缩文件限制在50MiB
binfeng1018 Nov 2, 2026
25e50ec
feat(linsight): land uploaded Excel as the original workbook, no ETL
jieyuhuayang Nov 2, 2026
ac625c8
fix(client): 应用会话有用户输入后显示分享入口 (#2586)
SuperstructureJH Nov 2, 2026
0b3df5c
fix(linsight): normalize every ask_user field, not just questions and…
jieyuhuayang Nov 2, 2026
0eb3ba4
fix(client): render empty shared conversations as read-only
SuperstructureJH Nov 2, 2026
1e495e1
fix(client): 修复空分享页的新建会话无效入口 (#2589)
SuperstructureJH Nov 2, 2026
2495da1
feat: isolate application templates by tenant and fix configuration i…
Nov 2, 2026
5b2ecf9
merge: integrate template tenancy and concurrent fixes into 3.0
Nov 2, 2026
ad51769
fix(annotation): constrain QA dropdowns with the shared knowledge sel…
Nov 2, 2026
86d5223
merge: sync annotation QA dropdown fix into 3.0
Nov 2, 2026
afe6c98
fix(client): align knowledge preview navigation and header layout
SuperstructureJH Nov 3, 2026
29dc41f
perf(knowledge): batch uploadable space permission checks
zgqgit Nov 3, 2026
521e036
fix(audit): display runtime identities and explain empty export fields
zgqgit Nov 3, 2026
5a359d8
merge: integrate runtime audit identity display fixes into 3.0
zgqgit Nov 3, 2026
54475c5
fix(workbench): preserve IME input and validate menu names on save
Nov 3, 2026
44b1508
Merge commit '54475c5dc' into HEAD
Nov 3, 2026
c0ed253
fix(client): remove legacy module navigation from app sidebar
SuperstructureJH Nov 3, 2026
8439b7a
fix(workspace): resolve each workspace file against the turn that pro…
jieyuhuayang Nov 3, 2026
fd32804
fix(workspace): stamp the turn's versionId on files previewed from th…
jieyuhuayang Nov 3, 2026
a641446
fix(knowledge): pin upload tenant scope and surface settings failures
Nov 3, 2026
234c154
Merge commit 'a641446e2' into HEAD
Nov 3, 2026
d7f478b
fix(client): 移除应用侧栏旧版模块导航 (#2593)
SuperstructureJH Nov 3, 2026
744d7fe
fix(app-chat): finalize stopped assistant responses before accepting …
SuperstructureJH Nov 3, 2026
2b63d9f
fix(app-chat): 修复手动停止后的输入恢复与截断历史保存 (#2594)
SuperstructureJH Nov 3, 2026
78ed282
fix(task-mode): render the pre-hydration answer as markdown without r…
jieyuhuayang Nov 3, 2026
5630b11
fix(workstation): preserve chat completions protocol
yaojin3616 Nov 3, 2026
0a8db74
fix(approval): prevent failed executions from appearing pending
zgqgit Nov 3, 2026
c9a070f
Merge remote-tracking branch 'origin/feat/3.0.0' into codex/knowledge…
zgqgit Nov 3, 2026
8f3c722
fix(llm): choose chat protocol in shared adapter
yaojin3616 Nov 3, 2026
463d6fc
feat(eval): add task-mode evaluation harness built from real 106 queries
jieyuhuayang Nov 3, 2026
d4ada98
fix(llm): select chat and responses protocols per request (#2596)
yaojin3616 Nov 3, 2026
3b47f90
fix(chat): revalidate knowledge space access for retained conversations
SuperstructureJH Nov 3, 2026
2169eeb
fix(chat): 核验旧会话知识空间权限并提示失效选择 (#2598)
SuperstructureJH Nov 3, 2026
e731907
fix(approval): report failed join requests without phantom pending state
zgqgit Nov 3, 2026
40e7886
fix: restore knowledge tag handoff and address workspace UI issues
Nov 3, 2026
b23fdea
Merge commit '40e7886c0' into HEAD
Nov 3, 2026
11f8f67
feat(client): support creating chats within projects (port to 3.0)
jieyuhuayang Nov 3, 2026
990d1a0
fix(chat): apply admin default after model catalog loads
Nov 3, 2026
1280dfa
Merge commit '990d1a08d' into HEAD
Nov 3, 2026
03149a2
Merge release branch into knowledge preview layout fix
SuperstructureJH Nov 3, 2026
e5941f3
fix(client): 修复知识空间详情返回对齐与顶部操作布局 (#2591)
SuperstructureJH Nov 3, 2026
14bf8a8
merge: align skill menu search PR with feat/3.0.0
SuperstructureJH Nov 3, 2026
d3e723d
test(client): type late admin model fixture for rerenders
SuperstructureJH Nov 3, 2026
af89882
fix: repair citation rendering, space exit actions and department labels
Nov 3, 2026
10a816a
Merge citation, space exit and department display fixes into 3.0.0
Nov 3, 2026
49cade9
Merge feat/3.0.0 into skill-menu search and resolve test conflict
zgqgit Nov 3, 2026
57e8717
fix(client): 为日常模式技能菜单补充搜索(IKPKNU) (#2587)
zgqgit Nov 3, 2026
eb480ff
fix(client): expose dialog modality to desktop host
SuperstructureJH Nov 3, 2026
f30c854
fix(chat): defer streaming citation fragments until final validation
Nov 3, 2026
6d1e626
Merge streaming citation buffering fix into 3.0.0
Nov 3, 2026
6ce40b7
fix(client): declare modal semantics for desktop window overlays (#2600)
SuperstructureJH Nov 3, 2026
e9a020b
fix(chat): revalidate retained knowledge space selections on 3.0.0
Nov 3, 2026
f17ece3
fix(app-chat): settle stopped turns before accepting new input
Nov 3, 2026
62a71a9
Merge selected Work 120 updates into feat/3.0.0
Nov 3, 2026
6ce42b1
feat(service-account): allow granting the owner tier to service accounts
jieyuhuayang Nov 3, 2026
a65f130
test(service-account): provide the admitted tenant scope in component…
jieyuhuayang Nov 3, 2026
4a91ec6
fix(app-factory): align delivery contracts and retained diagnostics
zgqgit Nov 3, 2026
03d8d82
Merge F119 delivery contract and diagnostic fixes into feat/3.0.0
zgqgit Nov 3, 2026
fe7dd95
docs(f119): record release integration verification
zgqgit Nov 3, 2026
b93165f
chore(release): use v3.0.0 deployment images and publish sandbox builds
zgqgit Nov 3, 2026
d2f3b63
fix(client): give recommended app cards a wide, content-sized layout
jieyuhuayang Nov 3, 2026
32cfb71
fix(release): preserve two-stage image publication during tag reissues
zgqgit Nov 3, 2026
f945f9e
fix(client): give recommended app cards a wide, content-sized layout …
jieyuhuayang Nov 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
147 changes: 135 additions & 12 deletions .claude/skills/approval-module/SKILL.md

Large diffs are not rendered by default.

154 changes: 0 additions & 154 deletions .claude/skills/code-review/SKILL.md

This file was deleted.

2 changes: 1 addition & 1 deletion .claude/skills/e2e-test/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ cd src/backend
```markdown
# E2E 验证清单: {feature_name}

**测试环境**: http://192.168.106.114:4001 (Platform) / :4001/workspace (Client)
**测试环境**: http://192.168.106.114:4101 (Platform) / :4101/workspace (Client)
**前置条件**: <描述测试前需要的数据/账号>

## Platform 前端
Expand Down
170 changes: 170 additions & 0 deletions .claude/skills/sdd-code-review/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
---
name: sdd-code-review
description: >-
SDD 第 8 步:Feature 全部任务完成后、合入前的特性级多维度代码审查,对照 spec/design/tasks 按 7 个维度出 PASS / NEEDS_FIX 报告。
用法:/sdd-code-review --base <目标分支>(通常是发版线,如 feat/3.0.0)。
TRIGGER when: 用户运行 /sdd-code-review,或在 SDD feature 合入前要求特性级代码审查。
与 Claude Code 自带的 /code-review(云端多 agent 找缺陷)不是同一个工具。
---

# Skill: sdd-code-review

## 描述

L2 特性级多维度代码审查。Feature 全部任务完成后执行(SDD 第 8 步)。

本 skill 是仓库内的唯一原件:`.cursor/skills` 与 `.agents/skills` 都是指向 `.claude/skills` 的软链接,改这里即可。

## 触发

```
/sdd-code-review --base feat/3.0.0
```

`--base` 取 Feature 要合入的目标分支,下文用 `<base>` 指代。

---

## 审查流程

1. 执行 `git diff <base>...HEAD --stat` 获取变更文件列表
2. 执行 `git diff <base>...HEAD` 获取完整 diff
3. 对照 Feature 的 `spec.md`、`design.md` 和 `tasks.md`
4. 按 7 维度逐一审查
5. 输出审查报告

---

## 7 维度审查框架

### 维度 1:边界条件

| 检查项 | 说明 |
|--------|------|
| null/None 处理 | 外部输入是否校验 None/空字符串 |
| 空集合 | 列表/字典为空时是否正确处理(不抛异常) |
| 数值边界 | 分页 page/size 合法性、ID 为 0/-1 |
| 字符串长度 | 数据库字段长度限制是否在 API 层校验 |
| 超时处理 | 外部调用(LLM/MCP/HTTP)是否设置超时 |
| 分页溢出 | 请求超出总页数时返回空列表而非错误 |

### 维度 2:权限与认证

> 以 `docs/constitution.md` C4 为准;本表只列审查时要看的点。

| 检查项 | 说明 |
|--------|------|
| 认证注入 | 需要认证的端点是否使用 `UserPayload = Depends(UserPayload.get_login_user)` |
| 资源动作鉴权 | 资源操作是否走 `permission.application` 的 `require_business_action` / `check_business_action`(F048 统一运行时),而不是直接查 `role_access`、OpenFGA 或旧的 relation/`permission_id` 模板(RULE-8) |
| 判定顺序 | 不自行重写 super_admin → 租户不匹配拒绝 → 租户管理员 → Catalog/动作闸 → OpenFGA 的短路顺序;RBAC 菜单权限不能当资源动作的兜底放行 |
| 资源生命周期 | 资源创建、移动、复制、删除与授权变更是否走权限模块的投影台账,而不是业务代码自己写 tuple(RULE-9) |
| tenant_id 隔离 | 跨租户访问被阻止;批量 `update()` / `delete()` 和原生 SQL 是否手写了 tenant 条件(自动过滤只拦 SELECT) |
| 普通用户验证 | 权限相关的测试或手动验证是否用了非管理员账号(super_admin 会短路) |
| WebSocket 认证 | WS 端点是否使用 `UserPayload.get_login_user_from_ws` |

### 维度 3:并发安全

| 检查项 | 说明 |
|--------|------|
| OpenFGA 双写 | MySQL + OpenFGA 写入是否有失败补偿(failed_tuples 表) |
| 数据库事务 | 多表写入是否在同一事务内 |
| Celery 幂等 | 异步任务是否支持重试不产生副作用 |
| 竞态条件 | 并发创建同名资源是否有唯一约束或乐观锁 |
| 会话状态 | Redis 缓存读写是否考虑过期和并发更新 |

### 维度 4:信息泄漏

| 检查项 | 说明 |
|--------|------|
| 硬编码敏感信息 | 代码中无明文密码/密钥/token |
| 错误信息 | 异常响应不暴露堆栈/SQL/内部路径 |
| 日志脱敏 | logger 输出中敏感字段已脱敏 |
| 前端暴露 | 前端代码不包含后端 IP/密钥/内部 API 路径 |
| tenant_id 泄漏 | API 响应不向前端返回其他租户的 tenant_id |

### 维度 5:测试覆盖

| 检查项 | 说明 |
|--------|------|
| Service 测试 | 核心 Service 方法有单元测试(mock DAO) |
| API 测试 | 新端点有集成测试(happy path + 主要 error path) |
| AC 覆盖 | spec 中每条 AC 都有对应测试或手动验证 |
| 错误路径 | 权限拒绝、参数校验失败等错误路径有测试 |
| 测试质量 | mock 合理,不 mock 掉核心逻辑 |

> **务实适配**:核心 Service 方法必须有测试。
> 前端:可抽成纯函数的逻辑(数据转换、校验、兼容升级)要有 vitest 单测;交互与视觉走 `/e2e-test` 的手动验证清单,tasks.md 只写「手动验证」不算覆盖。

### 维度 6:代码风格

| 检查项 | 说明 |
|--------|------|
| DDD 分层 | 新代码在正确的层级(domain/services vs api/endpoints) |
| 命名一致 | DAO/Service/错误码命名遵循项目约定 |
| 代码重复 | 无复制粘贴式重复逻辑(应提取到 Service 或工具函数) |
| 未使用代码 | 无 dead code、注释掉的代码块、空函数 |
| 格式化 | Python 代码通过 ruff check(hook 自动处理) |

### 维度 7:文档同步(design.md 现状快照)

> **目的**:确保 feature 合入后,新 agent 接手时读 design.md 能 5 分钟建立准确认知 —— 没有过期描述、没有缺失的反直觉坑、没有未声明的对外契约。

| 检查项 | 说明 | 严重度 |
|--------|------|--------|
| design.md 存在 | feature 目录下有 `design.md`(按 `features/_templates/design.md` 起的稿) | HIGH(缺失直接 NEEDS_FIX) |
| 决策同步 | diff 中新增/替换的关键技术决策(数据格式、配对/匹配策略、同步 vs 异步、二进制依赖等)在 §3 方案对比有记录,且给出"何时该重新考虑" | HIGH |
| 数据流/契约同步 | diff 触及 API 路径 / 请求响应字段 / 内部 Service 入参出参 / 数据库新表新字段 / 关键文件职责变化 → §4.1 数据流、§4.2 字段约定、§4.3 模块职责对应章节已更新 | HIGH |
| 已知坑同步 | 修了一个"代码里看不出的"反直觉 bug(典型:上游字段格式不符合直觉、运行时值与文档不符、必须的兜底逻辑)→ §5 已知坑 表新增一行(带"如果不知道会怎样"+"在哪处理") | HIGH |
| 契约/依赖同步 | 新增对外 endpoint / 新依赖 chat/knowledge/permission 等模块的隐式契约 / 新增系统二进制依赖 → §6 Outgoing / Incoming 已补 | HIGH |
| 修订历史 | §修订历史 末尾追加了本次 feature 完成的条目(日期 + 改动 + 触发原因) | MEDIUM |
| 与 spec 不冲突 | design.md 对当前实现的描述未与 spec.md AC 矛盾(spec 是不变目标,design 是当前实现,二者口径必须对齐) | HIGH |

**判定要点**:
- 若 design.md 与代码现状偏离 → 必须修复(视为 HIGH),不能合入
- 仅本地小修小补(不改变对外行为、不引入新坑、不动决策)→ 本维度全 PASS 即可
- design.md 不存在但已在 SDD 流程要求之内 → HIGH,要求按模板补全后再审

---

## 判定规则

| 结果 | 条件 | 动作 |
|------|------|------|
| **PASS** | 无 HIGH 或 MEDIUM | 可合并 |
| **PASS_WITH_WARNINGS** | 仅 MEDIUM 级 | 可合并,记录待改进 |
| **NEEDS_FIX** | 有 HIGH 级 | 修复后重审(最多 2 轮) |

---

## 输出格式

```markdown
# Code Review Report

**Feature**: <feature_name>
**Review scope**: <描述>
**Base branch**: <base>
**Changed files**: <数量>

## Summary

| Dimension | High | Medium | Low | Status |
|-----------|------|--------|-----|--------|
| Boundary Conditions | 0 | 0 | 0 | PASS |
| Permission & Auth | 0 | 0 | 0 | PASS |
| Concurrency Safety | 0 | 0 | 0 | PASS |
| Information Leakage | 0 | 0 | 0 | PASS |
| Test Coverage | 0 | 0 | 0 | PASS |
| Code Style | 0 | 0 | 0 | PASS |
| Docs Sync (design.md) | 0 | 0 | 0 | PASS |

## Findings(如有)

### HIGH
- [Permission] `xxx_endpoint.py:42` — 资源删除前未调用 require_business_action(action="delete")

### MEDIUM
- [Style] `xxx_service.py:18` — DAO 方法未使用 @classmethod

## Overall: PASS / PASS_WITH_WARNINGS / NEEDS_FIX
```
15 changes: 7 additions & 8 deletions .cursor/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
|-------------|--------|------|
| `.claude/settings.json` | `.cursor/hooks.json` | Agent 钩子配置 |
| `.claude/hooks/` | `.cursor/hooks/` | 钩子脚本 |
| `.claude/skills/` | `.cursor/skills/` | 项目级 Agent Skills |
| `.claude/skills/` | `.cursor/skills/`(软链接) | 项目级 Agent Skills,唯一原件在 `.claude/skills/` |

## Hooks

Expand All @@ -26,23 +26,22 @@

## Skills

从 `.claude/skills/` 同步,命令用法不变:
`.cursor/skills` 是指向 `../.claude/skills` 的软链接(`.agents/skills` 同理),三处读到的是同一份文件,命令用法不变:

| Skill | 触发 |
|-------|------|
| `sdd-review` | `/sdd-review <feature_dir> <spec\|design\|tasks>` |
| `task-review` | `/task-review <feature_dir> <task_id>` |
| `code-review` | `/code-review --base <branch>` |
| `sdd-code-review` | `/sdd-code-review --base <branch>` |
| `e2e-test` | `/e2e-test [feature_dir]` |
| `approval-module` | 审批相关改动前自动加载 |
| `i18n-localizer` | 模块国际化 |
| `react-component-refactor` | 大组件拆分重构 |

## 维护

更新 Skill 或 Hook 时,建议同时维护 `.claude/` 与 `.cursor/` 两份,或从 `.claude/` 复制后做格式适配。
Skill 只改 `.claude/skills/` 下的原件,不要在 `.cursor/skills` 或 `.agents/skills` 里另建副本;新增 Skill 放进 `.claude/skills/` 后三处自动可见。

```bash
cp -R .claude/skills/* .cursor/skills/
# 然后检查 hooks 脚本是否需要同步
```
Hooks 仍是两份(事件名与输出格式不同),改 `.claude/hooks/` 时检查 `.cursor/hooks/` 是否需要同步。

Windows 检出需要 `git config core.symlinks true`(并具备创建符号链接的权限),否则软链接会变成一个只含路径文本的普通文件。
1 change: 1 addition & 0 deletions .cursor/skills
Loading
Loading