Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
421 commits
Select commit Hold shift + click to select a range
78bf391
feat: Add Superset plugin support and OIDC authentication integration
zhb-y-agent Apr 10, 2026
c040b8b
feat(plugins): Add plugin localization support and refactor Superset …
zhb-y-agent Apr 10, 2026
6d6e61b
feat(plugins): Add plugin localization support and refactor Superset …
zhb-y-agent Apr 10, 2026
935b548
docs(设计文档): 添加插件i18n自包含方案
zhb-y-agent Apr 10, 2026
9028faf
docs(i18n): Update translation guide to include plugin translation in…
zhb-y-agent Apr 10, 2026
eae255d
feat(auth): Add OAuth2 alias and update authentication documentation
zhb-y-agent Apr 10, 2026
eb4ebd5
docs(oidc): 补充OIDC/OAuth2 Provider对接的详细要求
zhb-y-agent Apr 10, 2026
f4d9e40
feat(plugin): Add password visibility toggle and description text for…
zhb-y-agent Apr 10, 2026
9b7c24c
feat(auth): Support manual OIDC/OAuth2 endpoint configuration and add…
zhb-y-agent Apr 10, 2026
98c83f7
feat(身份迁移): 实现匿名用户到认证用户的身份迁移功能
zhb-y-agent Apr 10, 2026
37017cc
feat(migration): Add anonymous workspace data migration functionality
zhb-y-agent Apr 10, 2026
b3bde64
fix(AuthButton): Improve logout logic to handle missing end_session_e…
zhb-y-agent Apr 10, 2026
72e2ae5
fix(identity migration): Prevent duplicate triggering of anonymous to…
zhb-y-agent Apr 10, 2026
82e916e
feat(authentication): Improve identity migration flow and local stora…
zhb-y-agent Apr 10, 2026
a122e77
feat(workspace): Improve robustness of anonymous workspace migration …
zhb-y-agent Apr 10, 2026
7b98382
feat(login): Add support for IdP-initiated SSO flow
zhb-y-agent Apr 10, 2026
de3559a
Merge pull request #289 from microsoft/feature/plugin-architecture
zhb-ai Apr 10, 2026
5142bc2
feat(auth): Add silent token refresh functionality and enhance securi…
zhb-y-agent Apr 11, 2026
c5f2ad4
fix(bug): Fix abnormal display status when canceling import
zhb-y-agent Apr 11, 2026
e2c9532
fix(IdentityMigrationDialog): Fix issue with preserving workspace dat…
zhb-y-agent Apr 11, 2026
28a526c
docs: 添加数据源插件开发指南文档
zhb-y-agent Apr 11, 2026
eac6515
eat(tables_routes): Add export table to CSV/TSV functionality
zhb-y-agent Apr 11, 2026
ec86904
feat(credential vault): Add credential vault feature to support remem…
zhb-y-agent Apr 11, 2026
67b31ff
Merge pull request #290 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
a4782b1
feat(security): 新增 ConfinedDir 路径安全原语及修复漏洞
zhb-y-agent Apr 11, 2026
0768156
feat(security): Add error message sanitization and unified error resp…
zhb-y-agent Apr 11, 2026
5374ef5
Merge pull request #291 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
ef48ebb
fix: Improve error handling logic to provide more user-friendly error…
zhb-y-agent Apr 11, 2026
3ee96c5
Merge pull request #292 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
4f65c4f
fix(security): Improve error message handling to enhance security
zhb-y-agent Apr 11, 2026
e9ae67f
Merge pull request #293 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
da60eeb
fix(security): Unify error message handling to prevent sensitive info…
zhb-y-agent Apr 11, 2026
c1f9378
Merge pull request #294 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
0cb48cc
feat(security): Add LLM error classification functionality and update…
zhb-y-agent Apr 11, 2026
4cb08c6
Merge pull request #295 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
20b9f40
docs: Add and update multiple documentation files and skills
zhb-y-agent Apr 11, 2026
28088e4
Merge pull request #296 from microsoft/feature/plugin-architecture
zhb-ai Apr 11, 2026
d3a832b
data plugin ui plan
Chenglong-MS Apr 12, 2026
4dc82b6
Merge pull request #297 from microsoft/dev
zhb-ai Apr 12, 2026
e907c81
feat(auth): Improve OIDC/OAuth2 authentication flow and error handling
zhb-y-agent Apr 14, 2026
53dbe31
docs: Add configuration documentation and examples for Superset and D…
zhb-y-agent Apr 14, 2026
69166bd
Merge pull request #298 from microsoft/feature/plugin-architecture
zhb-ai Apr 14, 2026
2e10da7
halfway
Chenglong-MS Apr 14, 2026
86a6f6d
redesign data connector
Chenglong-MS Apr 15, 2026
a184067
updated data connector design
Chenglong-MS Apr 16, 2026
66ef7a0
cleanup
Chenglong-MS Apr 16, 2026
249f877
cleanup
Chenglong-MS Apr 16, 2026
0d31f4f
Merge remote-tracking branch 'origin/dev' into features/data-plugin-ui
Copilot Apr 16, 2026
4215765
Merge pull request #300 from microsoft/features/data-plugin-ui
Chenglong-MS Apr 16, 2026
87229d9
improvements
Chenglong-MS Apr 16, 2026
3023e7e
fix
Chenglong-MS Apr 16, 2026
f770ac1
add cosmosdb support
Chenglong-MS Apr 16, 2026
8ab7b03
Merge pull request #301 from microsoft/dev
zhb-ai Apr 16, 2026
01f0856
bug fix
Chenglong-MS Apr 16, 2026
fc80f38
haha
Chenglong-MS Apr 17, 2026
01b6d56
important agent redesign
Chenglong-MS Apr 17, 2026
bf1d79d
Merge branch 'dev' of https://github.com/IAMkecheng/data-formulator i…
IAMkecheng Apr 17, 2026
5ecbb5b
fix bugs and add test game dataset
IAMkecheng Apr 21, 2026
49169b7
new agent
Chenglong-MS Apr 22, 2026
f0a48a3
sidebar data load
Chenglong-MS Apr 22, 2026
ebc27e0
minor
Chenglong-MS Apr 22, 2026
b8793cc
fixes
Chenglong-MS Apr 22, 2026
50916b4
Update instantiate-spec.ts
IAMkecheng Apr 22, 2026
50323e5
Merge branch 'microsoft:dev' into dev
IAMkecheng Apr 22, 2026
460f496
Merge pull request #302 from IAMkecheng/dev
Chenglong-MS Apr 22, 2026
162cf9a
gallery fixes
Chenglong-MS Apr 22, 2026
3673fe9
gallery fix
Chenglong-MS Apr 22, 2026
22c9388
Merge pull request #305 from microsoft/dev
zhb-ai Apr 22, 2026
fadb7f0
Add SSO token support for auto-connection in DataConnector and Supers…
zhb-y-agent Apr 22, 2026
fe6da49
Enhance DataAgent action handling and retry logic
zhb-y-agent Apr 22, 2026
8f83094
Implement CSV streaming export functionality and enhance download UI
zhb-y-agent Apr 22, 2026
124ac0a
Enhance CSV export functionality with improved filename handling
zhb-y-agent Apr 22, 2026
d805588
docs(design-docs): 添加DataAgent工具调用过多问题的分析文档
zhb-y-agent Apr 22, 2026
4c5e4c7
Enhance internationalization support by implementing message_code pat…
zhb-y-agent Apr 22, 2026
f6bfbf0
Refactor workspace session management and enhance UI components
zhb-y-agent Apr 22, 2026
ed1aeec
Implement delete connector functionality in DataSourceSidebar
zhb-y-agent Apr 22, 2026
4d580a8
Enhance DataAgent and UI components with field display names support
zhb-y-agent Apr 22, 2026
de0d828
Enhance data table formatting and tooltip configuration
zhb-y-agent Apr 22, 2026
145ae4f
Refactor UUID generation for session IDs across components
zhb-ai Apr 23, 2026
6d42f05
Implement secure context check for OIDC authentication
zhb-ai Apr 23, 2026
e5fe11f
docs: 新增SSO门户一键登录和统一错误处理设计文档
zhb-y-agent Apr 23, 2026
9898136
docs(auth): 新增统一认证与凭证管理架构设计文档
zhb-y-agent Apr 23, 2026
530245d
docs: 新增统一错误处理机制和认证架构设计文档
zhb-y-agent Apr 23, 2026
a2da2f3
feat: Add Unified Error Handling System
zhb-y-agent Apr 23, 2026
7d1e9a6
feat: Implement automatic file upload conversion to parquet format an…
zhb-y-agent Apr 23, 2026
b4bc04b
refactor(data stream): Improve NDJSON data parsing and processing logic
zhb-y-agent Apr 23, 2026
483e7dd
fix: Improve error handling and logging
zhb-y-agent Apr 23, 2026
21146b6
docs(streaming-protocol): Add frontend-backend streaming communicatio…
zhb-y-agent Apr 23, 2026
5ef8425
Update data agent tool descriptions and enhance table context informa…
zhb-y-agent Apr 23, 2026
57c2188
feat(agent): Add execution code purpose description and optimize thin…
zhb-y-agent Apr 23, 2026
025175f
Merge pull request #306 from microsoft/feature/plugin-architecture
zhb-ai Apr 24, 2026
17094ec
feat(logging): Implement log sanitization to protect sensitive data
zhb-ai Apr 24, 2026
a32b372
docs(error-handling): Update error handling skill documentation and a…
zhb-ai Apr 24, 2026
c2372b2
docs: change name
zhb-ai Apr 24, 2026
4a88355
refactor(error-handling): Enhance error handling in DataConnector and…
zhb-ai Apr 24, 2026
4d34059
add doc
zhb-ai Apr 24, 2026
29f0dc4
Merge pull request #307 from microsoft/feature/plugin-architecture
zhb-ai Apr 24, 2026
ebc63bf
update doc
zhb-y-agent Apr 24, 2026
0a3bc67
Merge branch 'feature/plugin-architecture' of https://github.com/micr…
zhb-y-agent Apr 24, 2026
fc23f4b
docs: Update documentation and skill descriptions
zhb-y-agent Apr 24, 2026
ae00939
refactor(workspace): Change default workspace name from 'default' to …
zhb-y-agent Apr 24, 2026
1bcd07b
feat(security): Implement safety checks and deployment restrictions
zhb-y-agent Apr 24, 2026
a9bbcf7
docs: Update path security related documentation and test instructions
zhb-y-agent Apr 24, 2026
fad5065
docs: Add test-driven development workflow documentation
zhb-y-agent Apr 24, 2026
5fe5754
fix: Unify error handling protocol, all application errors return HTT…
zhb-y-agent Apr 24, 2026
0eb4149
fix(security): Enhance path security checks and modify workspace crea…
zhb-y-agent Apr 24, 2026
fa0c7ce
fix(security): Enhance security for error handling and path validation
zhb-y-agent Apr 24, 2026
100fe14
fix(tests): Update test cases to match latest implementation
zhb-y-agent Apr 24, 2026
cd9fe9d
Merge pull request #309 from microsoft/feature/plugin-architecture
zhb-ai Apr 24, 2026
cb4578c
feat: Support backend OIDC authentication mode with TokenStore integr…
zhb-y-agent Apr 24, 2026
7204f2a
feat(data source sidebar): Add smart filters and table search functio…
zhb-y-agent Apr 24, 2026
0f26231
feat(data source): Enhance data preview and filtering functionality
zhb-y-agent Apr 24, 2026
a424860
Merge pull request #310 from microsoft/feature/plugin-architecture
zhb-ai Apr 24, 2026
6b97b59
feat(data connector): Add column value query API to support smart fil…
zhb-y-agent Apr 24, 2026
5bd1f58
Merge pull request #311 from microsoft/feature/plugin-architecture
zhb-ai Apr 24, 2026
b31656a
refactor(auth): Refactor OIDC authentication mode auto-detection logic
zhb-y-agent Apr 25, 2026
116bf06
feat(data preview): Add connector table preview component and integra…
zhb-y-agent Apr 25, 2026
5d3a976
docs: Add server migration guide documentation
zhb-y-agent Apr 25, 2026
b55cbd9
test(conftest): Add environment isolation fixtures to prevent test po…
zhb-y-agent Apr 25, 2026
6b7c341
feat(connection management): Add disconnect functionality
zhb-y-agent Apr 25, 2026
d18bc6d
fix: Ensure user identity information fields are string type
zhb-y-agent Apr 25, 2026
e16391f
refactor(i18n): Remove unused "disconnect" translation strings
zhb-y-agent Apr 25, 2026
88637e5
fix(i18n): Update connector preview text and layout
zhb-y-agent Apr 25, 2026
f9c77fc
feat(connector): implement lazy loading catalog and large directory p…
zhb-y-agent Apr 25, 2026
1fba24c
feat(connector): implement identity-isolated connector management mec…
zhb-y-agent Apr 25, 2026
087ef8e
docs: add implementation review checklist document
zhb-y-agent Apr 25, 2026
f6403c5
feat(connector): implement connector disconnect and SSO auto-reconnec…
zhb-y-agent Apr 25, 2026
d7b55a7
Merge pull request #312 from microsoft/feature/plugin-architecture
zhb-ai Apr 25, 2026
be970de
feat(connector): add catalog search functionality
zhb-y-agent Apr 25, 2026
9736eda
Merge pull request #313 from microsoft/feature/plugin-architecture
zhb-ai Apr 25, 2026
31a3a2b
docs: migrate design documents to dev-guides user docs and skills, up…
zhb-y-agent Apr 25, 2026
1cfdaa6
Merge pull request #314 from microsoft/feature/plugin-architecture
zhb-ai Apr 25, 2026
f4de05b
feat(i18n): add row limit warning messages
zhb-y-agent Apr 26, 2026
ababff3
feat(workspace): add lightweight metadata update and list change noti…
zhb-y-agent Apr 26, 2026
49d6fc2
fix(connection error handling): improve connection error message extr…
zhb-y-agent Apr 26, 2026
4b4f592
feat(agent): add reasoning log and knowledge system features
zhb-y-agent Apr 26, 2026
89359d2
feat(workspace): 添加对遗留工作区的自动修复支持
zhb-y-agent Apr 26, 2026
665b3ee
feat(data source): enhance table structure and column description met…
zhb-y-agent Apr 26, 2026
6c09a65
Merge pull request #315 from microsoft/feature/plugin-architecture
zhb-ai Apr 26, 2026
0d193cb
docs: update design documents and add user isolation defense-in-depth…
zhb-y-agent Apr 26, 2026
5e296e3
feat(DataAgent): add reasoning log recording functionality
zhb-y-agent Apr 26, 2026
90343dd
feat(knowledge): implement knowledge management backend functionality
zhb-y-agent Apr 26, 2026
02bdf0e
feat(knowledge system): implement knowledge base integration and expe…
zhb-y-agent Apr 27, 2026
3200934
fix: increase default formulateTimeoutSeconds from 60s to 180s
zhb-y-agent Apr 27, 2026
f9b7443
feat(i18n): add request timeout related error messages
zhb-y-agent Apr 27, 2026
021b480
chore: update .gitignore and remove .vscode/settings.json
zhb-ai Apr 27, 2026
8d30313
feat(logging): refactor ReasoningLogger and ExperienceDistillAgent fo…
zhb-ai Apr 27, 2026
ed5f36e
feat(datetime): establish unified datetime type system and enhance fr…
zhb-ai Apr 27, 2026
5f5ceb0
feat(knowledge): enhance knowledge rules management and introduce limits
zhb-ai Apr 27, 2026
d875252
feat: add date-time type system support
zhb-y-agent Apr 27, 2026
d1f1fdc
fix(experience save): only show save button on final leaf table and c…
zhb-y-agent Apr 27, 2026
a324c06
feat(data display): adjust number formatting based on semantic type
zhb-y-agent Apr 27, 2026
63245d4
feat(knowledge management): improve experience distillation and knowl…
zhb-y-agent Apr 27, 2026
5518355
docs: update multiple development guides and design documents
zhb-y-agent Apr 27, 2026
7091334
feat: add column description support and optimize catalog tree perfor…
zhb-y-agent Apr 27, 2026
4569dd0
feat(knowledge): add type-safe KnowledgeItemMeta class for frontend m…
zhb-y-agent Apr 27, 2026
1bc3294
feat(model support): add vision model support detection functionality
zhb-y-agent Apr 27, 2026
b1e6ad8
feat(recommended questions): add AI generation progress indicator and…
zhb-y-agent Apr 27, 2026
6165adc
docs(agent-knowledge): update design document for reasoning log conte…
zhb-y-agent Apr 27, 2026
1ccac0b
Merge pull request #316 from microsoft/feature/plugin-architecture
zhb-ai Apr 27, 2026
32cd9f4
docs(metadata): design-docs update
zhb-ai Apr 28, 2026
799e6a1
docs: add reference note for development guide 11
zhb-y-agent Apr 28, 2026
25a6bc7
docs: add incremental development rhythm rules document
zhb-y-agent Apr 28, 2026
efac99a
feat(catalog metadata): add catalog metadata synchronization and anno…
zhb-y-agent Apr 28, 2026
82d91b9
feat(catalog): add catalog sync status messages and internationalizat…
zhb-y-agent Apr 28, 2026
bab11ec
refactor(UI): optimize scrollbar styles and add resizable sidebar wid…
zhb-y-agent Apr 28, 2026
342c512
fix(MessageSnackbar): remove unused WarningIcon and use ErrorOutlineI…
zhb-y-agent Apr 28, 2026
dceb4de
feat(interaction strategy): add auto-selection and auto-focus strategies
zhb-y-agent Apr 28, 2026
915c31d
Merge pull request #317 from microsoft/feature/plugin-architecture
zhb-ai Apr 28, 2026
a8efcdb
feat(i18n): add new translations for common actions and enhance exist…
zhb-ai Apr 29, 2026
b5678e3
feat(reporting): enhance report export functionality with image and P…
zhb-ai Apr 29, 2026
2df2c6f
Merge pull request #318 from microsoft/feature/plugin-architecture
zhb-ai Apr 29, 2026
fcb3b3e
feat(clariifcation): implement structured clarification questions and…
zhb-ai Apr 29, 2026
28dd961
Merge pull request #319 from microsoft/feature/plugin-architecture
zhb-ai Apr 29, 2026
85b518b
feat(insight): unify chart insight error handling and timeout configu…
zhb-y-agent Apr 29, 2026
4455d3d
WIP: archive incomplete phase work
zhb-y-agent Apr 30, 2026
59d09e1
feat(error-handling): standardize API error responses and improve err…
zhb-ai Apr 30, 2026
a2efeca
feat(workspace): rename workspace summary endpoint and update naming …
zhb-ai Apr 30, 2026
1630543
feat(error-handling): enhance connector error classification and resp…
zhb-ai Apr 30, 2026
a0340cb
docs: conclude current phase work and update documentation
zhb-y-agent Apr 30, 2026
b92ae9d
feat(frontend state management): implement explicit loading state model
zhb-y-agent Apr 30, 2026
48df290
fix(dfSlice): remove frontend hardcoded timeout and update related do…
zhb-y-agent Apr 30, 2026
4b53bce
feat(i18n): add error messages for model loading failures
zhb-y-agent Apr 30, 2026
55ee4b3
feat(knowledge base): improve experience distillation user experience
zhb-y-agent Apr 30, 2026
59ff27a
feat(catalog tree): optimize virtualization rendering and catalog fet…
zhb-y-agent Apr 30, 2026
e0690ae
fix: fix data catalog tree building and frontend table annotation fet…
zhb-y-agent Apr 30, 2026
53f8859
feat(sandbox): implement cross-call namespace persistent SandboxSession
zhb-y-agent Apr 30, 2026
9393d53
Merge pull request #322 from microsoft/feature/plugin-architecture
zhb-ai Apr 30, 2026
283fd39
fix(security): prevent directory traversal and XSS attacks
zhb-y-agent Apr 30, 2026
7fd637a
refactor: remove type annotations for legacy Python compatibility
zhb-y-agent Apr 30, 2026
464abd5
Merge pull request #323 from microsoft/feature/plugin-architecture
zhb-ai Apr 30, 2026
b18e3cf
fix(security): enhance error handling and sensitive information filte…
zhb-y-agent May 1, 2026
2d4b220
feat(error handling): add error message sanitization and streaming wa…
zhb-y-agent May 1, 2026
6ecdda4
feat(auth): enhance SSO integration security and test coverage
zhb-y-agent May 1, 2026
e9710be
feat(测试): 添加统一docker-compose测试服务和PowerShell管理脚本
zhb-y-agent May 1, 2026
4251221
Merge pull request #324 from microsoft/feature/plugin-architecture
zhb-ai May 1, 2026
aa6ae38
fix(security): enhance log desensitization functionality to support s…
zhb-y-agent May 1, 2026
92ab564
Merge pull request #325 from microsoft/feature/plugin-architecture
zhb-ai May 1, 2026
c52c5da
feat(reasoning_log): add automatic log rotation by date functionality
zhb-y-agent May 1, 2026
fe596c6
docs(knowledge system): add 15.3 knowledge injection and search plann…
zhb-y-agent May 1, 2026
0d34057
feat(元数据同步): 增强目录元数据同步与展示功能
zhb-y-agent May 2, 2026
563e5e7
feat(agents): enhance metadata display with verbose_name and expressi…
zhb-y-agent May 2, 2026
9dcc45b
Merge pull request #326 from microsoft/feature/plugin-architecture
zhb-ai May 2, 2026
58567c8
feat(data loader): add sorting functionality to Superset data loader
zhb-y-agent May 2, 2026
048970f
docs(design-docs): add data loader sorting consistency and identifier…
zhb-y-agent May 2, 2026
1fbe1b2
Merge pull request #327 from microsoft/feature/plugin-architecture
zhb-ai May 2, 2026
37a8661
feat(knowledge system): merge skills and experiences directories into…
zhb-y-agent May 3, 2026
b9d1e64
refactor(knowledge): merge skills and experiences directories into ex…
zhb-y-agent May 3, 2026
2244e46
feat(knowledge distillation): add timeout parameter support for exper…
zhb-y-agent May 3, 2026
93d0369
refactor(knowledge): unify rule injection logic and improve search al…
zhb-y-agent May 3, 2026
e88d282
docs: update document content and structure
zhb-y-agent May 3, 2026
bd04e74
feat(i18n): add Agent log related translations and feature support
zhb-y-agent May 3, 2026
6a9740e
Merge pull request #328 from microsoft/feature/plugin-architecture
zhb-ai May 3, 2026
76330e6
feat(data loading): add AI data assistant functionality and multi-tab…
zhb-y-agent May 4, 2026
db3e4f0
Merge pull request #329 from microsoft/feature/plugin-architecture
zhb-ai May 4, 2026
b948eb3
feat(table): implement pagination and sorting functionality
zhb-y-agent May 5, 2026
6dc04b8
feat: unify data loading row limit and remove frontend row selector
zhb-y-agent May 5, 2026
3a56fae
docs: unify data loading row limit documentation
zhb-y-agent May 5, 2026
45db677
Merge pull request #330 from microsoft/feature/plugin-architecture
zhb-ai May 5, 2026
8be51ae
refactor(data loading): remove rowLimit related code
zhb-y-agent May 5, 2026
7aeef6a
Merge pull request #331 from microsoft/feature/plugin-architecture
zhb-ai May 5, 2026
ea94d8d
update experienes
Chenglong-MS May 6, 2026
79d6707
updates
Chenglong-MS May 7, 2026
1de1328
minor
Chenglong-MS May 7, 2026
d23e85c
refactor(data loading): enhance column metadata handling in SupersetL…
zhb-y-agent May 7, 2026
6c15da2
docs: update SSO OAuth configuration guide and example files
zhb-y-agent May 8, 2026
6d8185a
feat(data loading): update to use Chart Data API for data retrieval
zhb-y-agent May 8, 2026
c3b44e7
clarify+explain
Chenglong-MS May 8, 2026
99c4650
fix some issues with long thread break
Chenglong-MS May 9, 2026
f0975a5
feat(error handling): enhance error message extraction for RTK serial…
zhb-y-agent May 9, 2026
6534fa1
Merge branch 'dev' into feature/plugin-architecture
zhb-ai May 9, 2026
0557b4c
Merge pull request #334 from microsoft/feature/plugin-architecture
zhb-ai May 9, 2026
2e367fc
feat(data loading): add support for temporal column conversion in Sup…
zhb-y-agent May 9, 2026
31b469e
language
Chenglong-MS May 9, 2026
529b545
clarification module update
Chenglong-MS May 9, 2026
2a68c16
update layout algorithm
Chenglong-MS May 9, 2026
5b4aeda
minor
Chenglong-MS May 10, 2026
ca7c5e7
feat(superset): enhance list_tables to include full column metadata v…
zhb-y-agent May 10, 2026
f53b971
fix
Chenglong-MS May 10, 2026
3fa2390
issues: SSO登录态不一致及退出未清空状态问题
zhb-y-agent May 10, 2026
cd2afd4
fixes
Chenglong-MS May 10, 2026
573e6b6
more flexible editing
Chenglong-MS May 11, 2026
45387ea
styling hint
Chenglong-MS May 11, 2026
139b7eb
restyle agent update
Chenglong-MS May 11, 2026
b767bac
ISSUE : refactor agent styling for improved consistency
zhb-y-agent May 11, 2026
b5a71d0
fix ollama issue
Chenglong-MS May 11, 2026
42f0251
some polishment
Chenglong-MS May 11, 2026
9cc1d96
message
Chenglong-MS May 12, 2026
7b436ef
hide issues from main
Chenglong-MS May 12, 2026
3d1a783
remove old design docs
Chenglong-MS May 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat(workspace): rename workspace summary endpoint and update naming …
…logic

- Changed the endpoint from `/workspace-summary` to `/workspace-name` to better reflect its purpose.
- Updated the logic to generate a concise display name for workspaces, ensuring it adheres to user interface language.
- Adjusted the frontend to utilize the new endpoint and handle the updated response structure.
- Enhanced the documentation to clarify the changes in workspace naming conventions and API usage.
  • Loading branch information
zhb-ai committed Apr 30, 2026
commit a2efeca12bc05e50ae8ec52389d44e091de52e60
293 changes: 141 additions & 152 deletions design-docs/18-api-error-guardrails-and-chart-insight-failure.md

Large diffs are not rendered by default.

32 changes: 20 additions & 12 deletions design-docs/18.2-insight-architecture-redesign.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
# 18.2 - Insight 架构重构:结构化数据优先,图片可选

> 状态:方向已定,详细设计待补充
> 状态:方向已定;前置 API 错误契约已完成;Phase 3 / structured-first Insight 实施待启动
> 创建日期:2026-04-30
> 前置依赖:`design-docs/18-api-error-guardrails-and-chart-insight-failure.md` Phase 1 完成
> 前置依赖:`design-docs/18-api-error-guardrails-and-chart-insight-failure.md` Phase 1/2 已完成
> 相关规范:`dev-guides/1-streaming-protocol.md`
> 最近两次提交核对(2026-04-30):
> - ✅ 前置错误契约、`apiRequest()` / `streamRequest()` 迁移、Chart Insight 可见失败治理已完成
> - ❌ `py-src/data_formulator/insights/` 包尚未创建
> - ❌ `TableInsightProfiler` / `ChartInsightProfiler` / `InsightNarratorAgent` / `VisionInsightFallback` 尚未实现
> - ❌ Chart Insight 仍未改为 structured-first,图片路径尚未降级为 fallback

## 1. 动机

Expand Down Expand Up @@ -166,16 +171,19 @@ LLM 的职责是基于这些事实生成自然语言,不再负责从图片中

## 7. 实施内容

- 新增 `py-src/data_formulator/insights/` 包,承载所有不调用 LLM 的 profile 生成逻辑。
- 新增 `TableInsightProfiler`,从 table rows、metadata、schema 和 sample 生成表格 profile,支持 Agent 只生成数据表时直接产出表格洞察。
- 新增 `ChartInsightProfiler`,从 chart spec、encoding map、visual aggregate、table profile 和 lineage 生成图表 profile。
- 新增 `InsightNarratorAgent`,接收 profiler facts 并调用 LLM 生成标题和 takeaways。
- `ChartInsightAgent` 先保留为 `/chart-insight` 的兼容门面,默认走 profile + narrator,不再默认接收 chart image。
- 自动洞察在 profile 可生成时不等待图片缓存;仅 vision fallback 场景使用 `waitForChartImage()`。
- 区分 `profile_generation_failed`、`chart_image_not_ready` 和后端失败。
- 对 `Table` 图表走 table insight profile;对 `Auto` / `?` 图表等待 chart 类型确定后再触发。
- 对自定义图表和 profile 不足的场景,保留低分辨率 image fallback,并在响应 diagnostics 中标记 `image_used`。
- 测试覆盖:profile 大小上限、字段统计正确性、聚合后数据点摘要、无图片路径的洞察生成。
当前最近两次提交只完成了前置稳定性工作,本节 structured-first Insight 仍未开始:

- ✅ 前置:错误 envelope、Chart Insight 失败反馈、前端统一 API client 已完成。
- ❌ 新增 `py-src/data_formulator/insights/` 包,承载所有不调用 LLM 的 profile 生成逻辑。
- ❌ 新增 `TableInsightProfiler`,从 table rows、metadata、schema 和 sample 生成表格 profile,支持 Agent 只生成数据表时直接产出表格洞察。
- ❌ 新增 `ChartInsightProfiler`,从 chart spec、encoding map、visual aggregate、table profile 和 lineage 生成图表 profile。
- ❌ 新增 `InsightNarratorAgent`,接收 profiler facts 并调用 LLM 生成标题和 takeaways。
- ❌ `ChartInsightAgent` 先保留为 `/chart-insight` 的兼容门面,默认走 profile + narrator,不再默认接收 chart image。
- ❌ 自动洞察在 profile 可生成时不等待图片缓存;仅 vision fallback 场景使用 `waitForChartImage()`。
- ❌ 区分 `profile_generation_failed`、`chart_image_not_ready` 和后端失败。
- ❌ 对 `Table` 图表走 table insight profile;对 `Auto` / `?` 图表等待 chart 类型确定后再触发。
- ❌ 对自定义图表和 profile 不足的场景,保留低分辨率 image fallback,并在响应 diagnostics 中标记 `image_used`。
- ❌ 测试覆盖:profile 大小上限、字段统计正确性、聚合后数据点摘要、无图片路径的洞察生成。

## 8. 待详细设计的问题

Expand Down
17 changes: 12 additions & 5 deletions design-docs/19-multi-model-routing.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
# 19 - 多模型路由:后端按任务类型自动选择模型

> 状态:方向已定,Phase 2/3 实施
> 状态:方向已定;前置 API 错误契约已完成;`ModelResolver` 实施待启动
> 创建日期:2026-04-30
> 前置依赖:`design-docs/18-api-error-guardrails-and-chart-insight-failure.md` Phase 1 完成
> 前置依赖:`design-docs/18-api-error-guardrails-and-chart-insight-failure.md` Phase 1/2 已完成
> 相关文档:`design-docs/18.2-insight-architecture-redesign.md`
> 最近两次提交核对(2026-04-30):
> - ✅ 多模型路由的前置错误契约、统一 API client、streaming error 事件清理已完成
> - ❌ `ModelResolver` 类尚未实现
> - ❌ `AGENT_CAPABILITIES` / task type 声明尚未实现
> - ❌ `DF_INSIGHT_MODEL` / `DF_CHEAP_MODEL` 等任务级 env override 尚未实现
> - ❌ `get_completion()` 仍在 `client_utils.py` 内硬编码 `reasoning_effort = "low"`,尚未参数化

## 1. 动机

Expand Down Expand Up @@ -187,9 +193,10 @@ Phase 2 的 `InsightProfiler`(`18.2` 文档)与 `ModelResolver` 协同:

## 10. 实施顺序

1. **Phase 1(已规划)**:`reasoning_effort` 参数化,`get_completion()` 接受参数
2. **Phase 2**:新增 `ModelResolver` 类 + `.env` 配置 + `AGENT_CAPABILITIES` 声明
3. **Phase 3**:前端可选 UI(显示实际使用的模型、高级配置面板)
1. ✅ **前置已完成**:错误契约、`apiRequest()` / `streamRequest()` 和应用错误 HTTP 200 策略已稳定。
2. ❌ **Phase 3a**:`reasoning_effort` 参数化,`get_completion()` 接受调用方传入的 effort(当前仍硬编码 `"low"`)。
3. ❌ **Phase 3b**:新增 `ModelResolver` 类 + `.env` 配置 + `AGENT_CAPABILITIES` 声明。
4. ❌ **Phase 3c**:前端可选 UI(显示实际使用的模型、高级配置面板)。

## 11. Open Questions

Expand Down
85 changes: 47 additions & 38 deletions design-docs/20-phased-api-insight-implementation-plan.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 20 - API 错误契约与 Insight 稳定性分期实施计划

> 状态:Phase 2 已完成(2c/2d 全量迁移 + HTTP 200 策略修订
> 状态:Phase 2 已完成(2c/2d 全量迁移 + HTTP 200 策略修订 + legacy 解析清理);静态扫描/CI 与 Phase 3 待启动
> 创建日期:2026-04-30
> Phase 0 完成日期:2026-04-30
> Phase 1 完成日期:2026-04-30
Expand All @@ -9,9 +9,13 @@
> Phase 2c 进度:credentials ✅ | knowledge ✅ | sessions ✅ | tables ✅ | agents ✅ | data_connector ✅ | app ✅
> Phase 2d 进度:前端 thunk 全部迁移到 apiRequest() ✅
> HTTP 状态码修订:应用错误 HTTP 200,仅 auth 401/403 ✅
> 待办:移除 parseApiResponse legacy 兼容 | 前端 vitest 验证 | 静态扫描 CI
> 待办:`fetchCodeExpl` / `fetchFieldSemanticType` 20s 硬编码 timeout 清理 | 前端全量 vitest/回归验证 | 静态扫描脚本与 CI 接入 | Phase 3 Structured-first Insight + ModelResolver
> 前置文档:`design-docs/18-api-error-guardrails-and-chart-insight-failure.md`、`design-docs/18.2-insight-architecture-redesign.md`、`design-docs/19-multi-model-routing.md`
> 相关规范:`dev-guides/1-streaming-protocol.md`、`dev-guides/7-unified-error-handling.md`
> 最近两次提交核对(2026-04-30):
> - `4455d3d`:完成 Phase 2 大批普通 JSON API 迁移、前端 `apiRequest()` 适配、credentials/knowledge 合约测试和文档归档。
> - `59d09e1`:统一应用错误 HTTP 200 策略、补齐 streaming / auth / storage-full 等错误处理、移除 legacy response 解析和 stream error token、补充后端协议合约与前端 API client 测试。
> - 未完成:`fetchCodeExpl` / `fetchFieldSemanticType` timeout 配置化、静态扫描脚本/CI、structured-first Insight、`ModelResolver`、per-agent `reasoning_effort` 参数化。

## 1. 背景

Expand Down Expand Up @@ -226,8 +230,9 @@ return title and takeaways
新增统一 response helper:

- `json_ok(data)`:成功响应统一为 `{"status": "success", "data": {...}}`。
- `json_error(error)`:错误响应统一为 `{"status": "error", "error": {"code", "message", "retry"}}`。
- `AppError` 根据 `ErrorCode` 映射 HTTP status。
- `raise AppError(...)`:应用错误响应统一为 `{"status": "error", "error": {"code", "message", "retry"}}`。
- `stream_preflight_error(error)`:流建立前应用错误返回 HTTP 200 + JSON error envelope。
- `AppError` 根据 `ErrorCode` 映射 HTTP status:应用错误 200,auth 401/403。

迁移范围:

Expand All @@ -241,17 +246,17 @@ return title and takeaways

`token` 处理:

- 响应 body 不再回传 `token`。
- 请求 body 中的 `token` 可先兼容忽略
- 后续清理时再删除读取逻辑
- 响应 body 不再回传通用 `token`。
- ✅ 前端业务 thunk 不再发送通用 `token`。
- ✅ 后端 route 不再依赖通用请求 `token` 读取逻辑

### 6.3 前端改动

`apiRequest()` 成为普通 JSON API 的标准入口:

- 先检查 `response.ok`。
- 先防御性检查 `response.ok`,捕获 auth / transport 错误
- 成功时只返回 `body.data`。
- 失败时抛出 `ApiRequestError`。
- body `status:"error"` 时抛出 `ApiRequestError`(应用错误通常是 HTTP 200)
- 不再兼容裸 `{error: ...}`、`error_message`、`message`、`body.result`。

业务 thunk 改造:
Expand All @@ -269,63 +274,65 @@ NDJSON endpoint 与普通 JSON endpoint **统一**使用 HTTP 200:

- 流建立后:HTTP 200 + `application/x-ndjson`,运行中错误通过 `{type: "error"}`。
- 流建立前:返回 `200 application/json + status:"error"`(使用 `stream_preflight_error()`)。
- 流式事件中的 `token` 后续移除,但必须等前端消费者不再依赖 `data.token === token` 之后再改后端
- 流式错误事件中的通用 `token` 已移除;请求追踪使用 `X-Request-Id` header

Streaming 剩余待办:

1. ~~先新增后端小 helper。~~ ✅ stream_preflight_error() 已实现。
2. 前端手写 reader 逐步迁到 streamRequest()。(部分完成)
3. 确认前端不再依赖流事件中的 oken 后,后端停止发送 stream oken
2. ~~前端主要手写 reader 逐步迁到 streamRequest()。~~ ✅ 已完成主要 Agent/streaming 消费者迁移。
3. ~~确认前端不再依赖流事件中的 token 后,后端停止发送 stream token。~~ ✅ 已完成;`stream_error_event()` 不再携带通用 `token`
4. ~~把流建立前校验失败从 200 切到 4xx。~~ ❌ **已取消**(统一 HTTP 200 策略)

伪代码:

` ext
```text
if preflight validation failed:
return stream_preflight_error(error) # HTTP 200 + application/json

return ndjson_response(generate) # HTTP 200 + application/x-ndjson
`
```


### 6.5 测试与护栏

后端:

- contract tests 覆盖普通 JSON endpoint 成功和失败 shape。
- `X-Request-Id` header 测试。
- Chart Insight、code explanation、model list 等高风险 endpoint 单独覆盖。
- contract tests 覆盖普通 JSON endpoint 成功和失败 shape。
- `X-Request-Id` header 测试。
- Chart Insight、code explanation、model list 等高风险 endpoint 单独覆盖。

前端:

- `apiRequest()` 对 2xx / 4xx / 5xx 的解析测试
- legacy 格式触发 `PROTOCOL_VIOLATION`
- 业务 thunk 不发送 `token`。
- `apiRequest()` 对 2xx / 4xx / 5xx 和 HTTP 200 应用错误的解析测试已补充
- legacy 格式不再静默兼容,触发 malformed/protocol 类错误
- 业务 thunk 不再发送通用 `token`。

静态扫描:

- 检查裸 `jsonify({"error": ...})`。
- 检查扁平 `status: "ok"`。
- 检查业务代码直接 `fetchWithIdentity().json()`。
- 检查未说明的 LLM 硬编码 timeout。
- 检查裸 `jsonify({"error": ...})`。
- 检查扁平 `status: "ok"`。
- 检查业务代码直接 `fetchWithIdentity().json()`。
- 检查未说明的 LLM 硬编码 timeout。

### 6.6 文档更新

- ~~重写 `dev-guides/7-unified-error-handling.md`。~~ ✅ 已完成
- ~~更新 `dev-guides/1-streaming-protocol.md`:流建立后 200,流建立前校验失败可 4xx JSON。~~ ⚠️ 4xx 切换已取消(统一 200),`dev-guides/1` 中相关描述待同步清理
- ~~更新 `dev-guides/1-streaming-protocol.md`:流建立后 200,流建立前校验失败可 4xx JSON。~~ ✅ 已按统一 HTTP 200 策略同步清理,早期 4xx 切换方案已取消
- ~~更新错误处理 skill 和相关 rule。~~ ✅ 已完成(`unified-error-protocol.mdc`、`error-response-safety.mdc`、`backend-test-conventions.mdc`)
- 将新增 endpoint checklist 改为要求 contract test。

### 6.7 验收标准

- 普通 JSON API 成功响应全部为 `status: "success"` + `data`。
- 普通 JSON API 失败响应全部为 `status: "error"` + `error.code/message/retry`。
- 前端业务代码不再直接消费未解析的 `response.json()`。
- legacy response shape 不再被静默兼容。
- 静态扫描能发现新增违规。
- 普通 JSON API 成功响应全部为 `status: "success"` + `data`。
- 普通 JSON API 失败响应全部为 `status: "error"` + `error.code/message/retry`。
- 前端业务代码不再直接消费未解析的 `response.json()`(文件下载、blob、auth 特例除外)
- legacy response shape 不再被静默兼容。
- 静态扫描能发现新增违规。

## 7. Phase 3:Structured-first Insight 与多模型路由

> 状态:❌ 待启动。最近两次提交没有新增 `insights/` 包、`ModelResolver` 或 per-agent capabilities。

### 7.1 目标

在错误契约和用户反馈稳定后,将 Insight 从 vision-first 改为 structured-first,并引入后端任务级模型路由。
Expand Down Expand Up @@ -386,15 +393,15 @@ Agent 拆分:
2. ~~在 matrix 中把 NDJSON streaming 标成“只统计,不做 Phase 1 行为迁移”。~~ ✅
3. ~~实施 Phase 1 的 Chart Insight 修复,并先跑相关前后端测试。~~ ✅
4. ~~再启动 Phase 2 普通 JSON API 迁移,按 route 分批开发,但最终同步上线。~~ ✅ 已完成(7/7 route 全量迁移 + 前端 thunk 适配 + HTTP 200 策略修订)
5. Phase 2 收尾:移除 legacy 格式兼容、前端 vitest 验证、静态扫描 CI、stream `token` 移除。
6. Phase 2 稳定后再进入 Phase 3 的 structured-first Insight 和 ModelResolver。
5. Phase 2 收尾:~~移除 legacy 格式兼容、stream `token` 移除~~ ✅;前端全量 vitest/回归验证、静态扫描 CI ❌
6. Phase 2 稳定后再进入 Phase 3 的 structured-first Insight 和 ModelResolver(尚未启动)

## 9. 当前不建议做的事

- 不建议第一期直接实现 `InsightProfiler`,因为失败反馈和 API 契约尚未稳定。
- ~~不建议第一期直接实现 `InsightProfiler`,因为失败反馈和 API 契约尚未稳定。~~ ✅ 前置契约已稳定;`InsightProfiler` 可作为 Phase 3 启动项
- ~~不建议第一期直接全量迁移所有 `/api/` JSON endpoint,除非同时安排完整前端适配和 contract tests。~~ ✅ 已全量迁移
- 不建议把 NDJSON streaming 运行中错误改成 HTTP 4xx/5xx,因为流建立后 HTTP status 已经无法改变。
- 不建议第一期移除 streaming `token` 或改 `data-agent-streaming` 的 legacy `{token, status, result}` 事件格式,因为当前前端仍有消费者依赖它。
- ~~不建议第一期移除 streaming `token` 或改 `data-agent-streaming` 的 legacy `{token, status, result}` 事件格式,因为当前前端仍有消费者依赖它。~~ ✅ 已在最近提交中完成主要 reader 迁移并移除通用 stream error `token`
- ~~不建议第一期把 streaming 预检失败从 `200 application/json` 改为 `4xx application/json`。~~ ❌ 已永久取消(统一 HTTP 200 策略)
- 不建议前端通过 `model.supports_vision` 决定是否调用 Insight API,这会阻碍后续后端多模型路由。

Expand All @@ -411,6 +418,7 @@ Agent 拆分:

> 下表是对当前所有 `/api/` 路由的盘点结果。列说明见表头。
> **Phase 1 只改了 `/api/agent/chart-insight`**,其余 endpoint 留待 Phase 2 迁移。
> **状态说明(2026-04-30)**:该 matrix 保留为 Phase 0 历史盘点快照;最近两次提交已经完成 Phase 2 全量迁移,表内大量 “当前响应格式 / 消费方式” 不再代表 HEAD 现状。

### A.1 Agent 路由(`routes/agents.py`,前缀 `/api/agent/`)

Expand Down Expand Up @@ -552,12 +560,13 @@ Agent 拆分:
| `DataLoadingChat` (data-loading-chat) | `setTimeout` → `controller.abort()` | 硬编码 120s | ⚠️ Phase 2 应改为统一配置 |
| `fetchGlobalModelList` / `fetchAvailableModels` | 无 | 无 | 低优先级 |
| `testModel` | 无 | 无 | 低优先级 |
| `fetchFieldSemanticType` | 无 | 无 | ⚠️ Phase 2 应补上 |
| `fetchFieldSemanticType` | `AbortController` | 硬编码 20s | ❌ 待改为统一配置或独立 metadata timeout |
| `fetchCodeExpl` | `AbortController` | 硬编码 20s | ❌ 待改为 `formulateTimeoutSeconds` 或明确短超时策略 |

### A.10 文档不一致标记

| 项目 | 现状 | 文档说法 | 建议 |
|---|---|---|---|
| `/refine-data` | 普通 JSON endpoint(`jsonify` 返回) | `dev-guides/1-streaming-protocol.md` 列为 NDJSON streaming | 从 streaming 表中移除 |
| streaming pre-stream error | 全部返回 `200 application/json` | `design-docs/18` 建议改为 `4xx` | Phase 2 后段处理 |
| `token` 字段 | Agent 相关 endpoint 仍在使用 | `design-docs/18` 建议移除 | Phase 2 后段处理 |
| `/refine-data` | 普通 JSON endpoint(`json_ok` envelope) | 旧版 `dev-guides/1-streaming-protocol.md` 曾列为 NDJSON streaming | ✅ 已从规范中按当前实现校正 |
| streaming pre-stream error | 全部返回 `200 application/json` | 早期 `design-docs/18` 建议改为 `4xx` | ✅ 4xx 方案已取消,统一 HTTP 200 |
| `token` 字段 | 通用 API/stream error token 已移除 | `design-docs/18` 建议移除 | ✅ 已完成主要清理;鉴权/连接器私有 token 不在此范围 |
5 changes: 3 additions & 2 deletions dev-guides/6-i18n-language-injection.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ frontend i18n.language
| 项目 | 当前状态 | 说明 |
|------|----------|------|
| `SortDataAgent` | 已接入 | 构造函数接收 `language_instruction`,route 使用 `compact` 模式 |
| `workspace-summary` | 已接入 | `SimpleAgents` 接收 `language_instruction`,生成短名称使用 `compact` |
| `workspace-name` | 已接入 | `SimpleAgents` 接收 `language_instruction`,生成 session/workspace 展示名使用 `full` |
| `nl-to-filter` | 暂不注入 | 当前返回结构化 JSON;未来若返回用户可见自然语言再接入 |
| `test-model` | 明确豁免 | 健康检查需要固定返回,不应被语言指令影响 |
| `rec_language_instruction` | 已清理 | 当前 `routes/agents.py` 未再保留该误导性参数 |
Expand Down Expand Up @@ -96,7 +96,8 @@ agent = SortDataAgent(client=client, language_instruction=language_instruction)
|------|------|
| `DataAgent`、`ChartInsightAgent`、`InteractiveExploreAgent`、`ReportGenAgent` | `full` |
| `DataRecAgent`、`DataTransformationAgent`、`DataLoadAgent` | `compact` |
| `SortDataAgent`、`workspace-summary` | `compact` |
| `SortDataAgent` | `compact` |
| `workspace-name` | `full` |
| `test-model`、模型列表、纯状态检查 | 不注入 |

### 2.2 Agent 层
Expand Down
Loading