From 03b6fb724ccb25da030c1b21d0f709878b76a582 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=87=AF?= Date: Thu, 18 Jun 2026 17:38:40 +0800 Subject: [PATCH] =?UTF-8?q?feat(roundtable):=20=E6=B7=B1=E9=93=BE=E7=AD=96?= =?UTF-8?q?=E5=88=92=E6=B5=81=E7=A8=8B=E5=B0=8F=E5=9B=BE=20+=20=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=9B=BE=E5=BC=B9=E7=AA=97=E6=A8=AA=E5=90=91/?= =?UTF-8?q?=E7=BC=A9=E7=95=A5=E5=9B=BE/=E6=B7=B1=E8=93=9D=E9=80=82?= =?UTF-8?q?=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Step1 消息列表头部:深链 taskId 模式取到目的树后,左侧标题换成「策划流程」 彩色层级小图(任务→目的→…→叙事,每级配色对齐流程图节点 + 类型小图标), 点击打开任务目的流程图弹窗;仅第一步、有数据时出现。 - TaskPurposeDialog 流程图:横向(LR)布局 + 右下角缩略图(MiniMap)。 - FlowGraphPanel 深蓝主题适配(随 ThemeContext):容器/头部/画布点阵/连线/图例/ 小地图/节点详情弹窗 + 节点配色(FLOW_NODE_TYPE_META_DARK),浅色红主题不受影响。 - 圆桌侧栏深色兜底:neutral 家族 + 米色 hex(#FAF6F5/#ECE7E4/#E8D0CC) 映射到深蓝 token(关系图背板、第N步 tag 等不再泛白)。 附带提交工作区其余暂存改动(AI 写作等),不含 config.yaml。 Co-Authored-By: Claude Opus 4.8 (1M context) --- .../admin/position-management-page.tsx | 2 +- .../workspace/admin/user-management-page.tsx | 2 +- .../workspace/agents/agent-gallery.tsx | 4 +- .../workspace/agents/agent-module-sidebar.tsx | 6 +- frontend-web/src/core/auth/task-purpose.ts | 83 +++ .../open-canvas/api/ai-writing-sessions.ts | 44 ++ .../ai-writing/AIWritingFlowChart.tsx | 138 +++++ .../ai-writing/AIWritingFlowDialog.tsx | 124 ++++ .../ai-writing/AIWritingHistoryDropdown.tsx | 21 +- .../ai-writing/AIWritingHistoryView.tsx | 46 +- .../components/ai-writing/AIWritingPanel.tsx | 79 ++- .../components/ai-writing/ResearchSidebar.tsx | 2 +- .../open-canvas/contexts/AIWritingContext.tsx | 7 + .../open-canvas/hooks/useAIWritingStream.ts | 14 +- frontend-web/src/pages/AgentModulePage.tsx | 4 +- .../src/pages/BusinessChainMappingPage.tsx | 4 +- frontend-web/src/pages/LlmMetricsPage.tsx | 21 +- frontend-web/src/pages/MemoryPage.tsx | 2 +- .../src/pages/PublicLeaderboardPage.tsx | 8 +- frontend-web/src/pages/SkillEvolutionPage.tsx | 2 +- frontend-web/src/pages/SkillsPage.tsx | 2 +- .../components/FlowGraphPanel.tsx | 218 +++++-- .../components/Step1Panel.tsx | 24 +- .../src/roundtable-planning/lib/flow-graph.ts | 68 ++- .../pages/RoundtablePlanningPage.tsx | 125 ++++ .../styles/roundtable-planning.css | 48 ++ .../task-components/TaskPurposeDialog.tsx | 93 +++ frontend-web/src/styles/globals.css | 93 +++ offline-backend-20260512/backend/CLAUDE.md | 6 + .../app/gateway/ai_writing_job_executor.py | 546 ++++++++++++++++++ .../backend/app/gateway/deps.py | 24 + .../backend/app/gateway/routers/ai_writing.py | 92 +++ .../deerflow/agents/ai_writing/graph.py | 26 +- .../agents/ai_writing/nodes/_agent_runner.py | 10 +- .../agents/ai_writing/nodes/_skill_agent.py | 177 ++++++ .../agents/ai_writing/nodes/_utils.py | 30 +- .../agents/ai_writing/nodes/researcher.py | 50 +- .../agents/ai_writing/nodes/writer_draft.py | 24 +- .../ai_writing/search/duckduckgo_search.py | 2 +- .../persistence/ai_writing_sessions/sql.py | 15 + 40 files changed, 2167 insertions(+), 119 deletions(-) create mode 100644 frontend-web/src/open-canvas/components/ai-writing/AIWritingFlowChart.tsx create mode 100644 frontend-web/src/open-canvas/components/ai-writing/AIWritingFlowDialog.tsx create mode 100644 frontend-web/src/strategy-components/components/task-components/TaskPurposeDialog.tsx create mode 100644 offline-backend-20260512/backend/app/gateway/ai_writing_job_executor.py create mode 100644 offline-backend-20260512/backend/packages/harness/deerflow/agents/ai_writing/nodes/_skill_agent.py diff --git a/frontend-web/src/components/workspace/admin/position-management-page.tsx b/frontend-web/src/components/workspace/admin/position-management-page.tsx index a747510c..dd80a765 100644 --- a/frontend-web/src/components/workspace/admin/position-management-page.tsx +++ b/frontend-web/src/components/workspace/admin/position-management-page.tsx @@ -401,7 +401,7 @@ export function PositionManagementPage() { }; return ( -
+

岗位管理

diff --git a/frontend-web/src/components/workspace/admin/user-management-page.tsx b/frontend-web/src/components/workspace/admin/user-management-page.tsx index 0c61d323..5847263c 100644 --- a/frontend-web/src/components/workspace/admin/user-management-page.tsx +++ b/frontend-web/src/components/workspace/admin/user-management-page.tsx @@ -12,7 +12,7 @@ export function UserManagementPage() { const { data: users, isLoading, error } = useAllUsers(true); return ( -
+
+
{/* Page header */}
@@ -392,7 +392,7 @@ export function AgentGallery() { setSort("time_desc"); setPublisher(null); }} - className="flex flex-1 flex-col overflow-hidden" + className="flex min-h-0 flex-1 flex-col overflow-hidden" >
diff --git a/frontend-web/src/components/workspace/agents/agent-module-sidebar.tsx b/frontend-web/src/components/workspace/agents/agent-module-sidebar.tsx index a30f74af..54a8902f 100644 --- a/frontend-web/src/components/workspace/agents/agent-module-sidebar.tsx +++ b/frontend-web/src/components/workspace/agents/agent-module-sidebar.tsx @@ -170,8 +170,10 @@ export function AgentModuleSidebar({ }); return ( - // 背景按需求固定白色(不走 sidebar token),与全量版 GeneralQaSidebar 的卡片视觉看齐。 -