吉鑫升
|
36a3851233
|
feat: inject 3q context into rwfx chat
|
2026-07-02 10:03:34 +08:00 |
|
吉鑫升
|
124eb04a6b
|
Merge remote-tracking branch 'origin/master-dev' into ji-dev
|
2026-06-30 11:34:45 +08:00 |
|
 董宏凯andCursor
|
537e2e4d06
|
fix(登录): token 登录补全 userInfo + 全方式打印路由参数
- 把「拉外部用户信息(yUserId→consumer)」与登录鉴权方式解耦:只要 URL 带
yUserId 就填充 userInfo(含 token 登录,consumer 失败非致命),修复 token
登录后 userInfo 残缺、iframe/轻应用拿不到 yUserId/userName/gateDepartName/
typeName/accessToken 的问题。
- token 登录用 auth.username 写入正确用户名(不覆盖 consumer 已落的 userName)。
- 保留 yUserId 优先级(onlineTicket/toolToken 仅在无 yUserId 时启用)。
- 新增登录路由参数 + 落地结果日志(令牌脱敏),方便排查各登录方式取值问题。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-29 23:36:33 +08:00 |
|
fengxiangdebaozi
|
6378cd33bd
|
统一外部 access_token 存储与轻应用 URL 拼接,修复嵌入会话鉴权隔离。
将 access_token 纳入 scoped storage 迁移,yUserId 登录优先并独立持久化 token;轻应用/按钮管理默认改用 access_token 参数名,支持 hash 路由占位符替换与自动追加。
|
2026-06-29 23:00:31 +08:00 |
|
fengxiangdebaozi
|
8c6d08d6bf
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-06-29 18:08:37 +08:00 |
|
Administrator
|
7d8656bfde
|
fix xdfx task start context recovery
|
2026-06-29 17:45:46 +08:00 |
|
fengxiangdebaozi
|
45ce14e15a
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-06-29 17:39:52 +08:00 |
|
g zy
|
80fce34c1a
|
Revert "Merge branch 'revert-d8af6c8f' into 'master'"
This reverts merge request !158
|
2026-06-29 09:19:17 +00:00 |
|
Administrator
|
b0db8cc3d8
|
feat: 优化定时任务 Markdown 阅读页
|
2026-06-29 17:08:38 +08:00 |
|
g zy
|
0dab5a8121
|
Merge branch 'gzy' into 'master-dev'
fix: chore
See merge request knowledge-base-bj/deerflow-server!161
|
2026-06-29 09:05:30 +00:00 |
|
Rocky Kwok
|
c012146c18
|
fix: chore
|
2026-06-29 17:04:50 +08:00 |
|
fengxiangdebaozi
|
6851c96a45
|
技能提交
|
2026-06-29 16:59:23 +08:00 |
|
g zy
|
f75f4f9db1
|
Merge branch 'gzy' into 'master-dev'
feat: iframe增加智能体显示
See merge request knowledge-base-bj/deerflow-server!159
|
2026-06-29 08:47:03 +00:00 |
|
fengxiangdebaozi
|
210cb5117f
|
fix: polish compact workspace controls
|
2026-06-29 16:44:13 +08:00 |
|
Administrator
|
0c663f5f7c
|
Merge remote-tracking branch 'origin/master' into ji-dev
|
2026-06-29 16:43:45 +08:00 |
|
g zy
|
75e8a90ac7
|
Revert "Merge branch 'gzy' into 'master'"
This reverts merge request !157
|
2026-06-29 08:43:19 +00:00 |
|
Rocky Kwok
|
1ab4216ccb
|
feat: iframe增加智能体显示
|
2026-06-29 16:42:38 +08:00 |
|
Administrator
|
d39b58255d
|
并发版
|
2026-06-29 16:09:51 +08:00 |
|
Administrator
|
637be00946
|
feat: improve agent skill selection
|
2026-06-29 15:09:27 +08:00 |
|
Administrator
|
0dd93421c4
|
feat: enhance public task markdown preview
|
2026-06-29 14:42:47 +08:00 |
|
Rocky Kwok
|
be4b180d92
|
fix: 智能体对应
|
2026-06-29 14:31:55 +08:00 |
|
Rocky Kwok
|
e9e4c181b9
|
feat: 插件管理及域名和智能体对应
|
2026-06-29 14:31:40 +08:00 |
|
Administrator
|
a046d19ce1
|
fix: improve model concurrency limiting
|
2026-06-27 18:57:01 +08:00 |
|
Administrator
|
aca089e8ef
|
feat: add per-model concurrency limits
|
2026-06-27 18:57:01 +08:00 |
|
董宏凯
|
44d7304f8e
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-06-27 16:00:47 +08:00 |
|
 董宏凯andCursor
|
5de74e90dc
|
feat(ai写作): 左栏智能体 Tab 内嵌问答并优化模块侧栏
AI 写作页默认展示智能体 Tab,在页内复用 ai-writing 模块配置与 AgentChatPage;确认类型后侧栏扁平展示类型名并支持整块收起动画。同步历史回看、流式续跑、改写菜单与 researcher 检索相关改动。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-27 15:53:51 +08:00 |
|
Administrator
|
c978a25b7f
|
Fix 3qfx task context fallback
|
2026-06-27 15:12:28 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
9572b66ecb
|
feat(白名单): 账号级登录口令——管理员设明文口令,用户凭 /login/<用户名>?password= 直登
白名单管理页可给单个账号设明文登录口令(users.login_password,可空):
设置后该账号用户名直登(/login/username)须带匹配 ?password=,且优先于全局共享口令门;
未设口令的账号行为不变。前端登录 URL 已支持透传 ?password=,无需改登录页。
- 后端:UserRow/User 新增 login_password + 仓储映射;/login/username 账号级口令闸门
(_lookup_user_by_username 仅查不建);新管理员接口 PUT /users/{id}/login-password;
UserListItem 暴露明文(仅 admin 列表);migration 20260625_04 + 幂等补列 SQL。
- 前端:白名单页新增「登录口令」列(设置/修改/清除 + 复制登录链接);
core/auth api+hooks 增 setUserLoginPassword/useSetUserLoginPassword(含 Y-Log)。
- 文档:根 + 后端 CLAUDE.md 同步。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-27 11:03:39 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
26f8010a57
|
feat(监控): 管理员排行榜实时并发监控 + 真正停止对话 + 409 中文化
- 排行榜页顶部新增「实时并发监控」面板(admin-only):当前并发大模型调用数 +
调用列表(用户/智能体/类型/已运行时长),每行「停止」+「全部停止」经
RunManager.cancel 真正中断 LLM 流式调用,减轻大模型压力
- 并发量折线图(峰值/均值,按分钟/小时):新增轻量后台采样器写入新表
concurrency_samples(create_all 自动建表),可按分/时聚合
- 大模型出字速度折线图(tokens/秒,按分钟/小时):复用 llm_call_metrics 聚合,
便于定位是模型/供应商慢
- 后台采样可开关、默认关闭(opt-in)、运行时切换免重启、对线上零影响
(单条极小 INSERT、保留期清理、查询有上限、全程 best-effort)
- 409 中文化:上一轮未结束又发新问题时返回中文提示,前端 onError 友好映射
后端:runtime/runs/manager.py(list_active)、persistence/concurrency(新模块)、
config/system_settings(ConcurrencyMonitorSettings)、gateway/routers/admin_active_runs、
app.py(采样后台任务)、services.py(409)。前端:core/admin/{active-runs,hooks}、
components/workspace/admin/concurrency-monitor、AdminUserLeaderboardPage、threads/hooks。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-26 20:29:26 +08:00 |
|
吉鑫升
|
38f98cdf5c
|
Merge branch 'ji' into master
# Conflicts:
# offline-backend-20260512/backend/scripts/sql/column_additions_mysql.sql
|
2026-06-25 21:49:12 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
a417124c21
|
feat(auth): 登录白名单细化为黑名单模式(approved 默认放行)+ 同步构建产物
- approved 放行标记默认 True:新账号首次登录即放行,登录白名单开关打开时只拦截
被管理员显式「取消放行」(approved=False) 的用户;enforce_user_approved 放在
各登录端点拿到 user 后、签发 JWT 前调用,admin 永远放行。
- 同步调整 LoginWhitelistPage / local_provider / models / system_settings /
迁移 20260625_02 / user model / column_additions_mysql.sql 与 CLAUDE.md。
- 更新 backend/backend.zip 构建产物。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 21:41:15 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
58357547c9
|
Merge branch 'ji' into master
按钮管理「登录参数」两套实现冲突解决——两分支各自独立给跳转按钮加了登录态追加能力,
二者正交、保留两套,互不影响:
- master: login_params (JSON 列 login_params_json,从 userInfo 解析,类似轻应用登录参数)
- ji: append_auth + auth_token_param + auth_name_param (token 登录时追加 token1+用户名)
迁移 revision 碰撞修复(两分支都用了 20260625_01):重编号为线性链
20260620_02 → 20260625_01 (login_params) → 20260625_02 (auth_params) → 20260625_03 (users_approved)
并同步 column_additions_mysql.sql 注释里的 migration 编号。
前后端 task_buttons(model/sql/memory/router/前端 type·api·admin 页)均保留两套字段;
两份 CLAUDE.md 文档合并为同时记录两种机制。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 19:36:43 +08:00 |
|
 AdministratorandClaude Opus 4.8
|
1d1ab384ef
|
feat(auth): 登录白名单(注册后管理员审批放行 + 全局开关)
用户仍可自助注册,普通账号默认 approved=False(待审批),admin 建号即 True;
存量用户迁移回填 True 避免锁死。系统设置 login_whitelist.enabled 总开关:关=
所有人可登录,开=仅已放行用户(或 admin)可登录。三登录端点建号后、发 token 前
经 enforce_user_approved 拦截,未放行返回 403 PENDING_APPROVAL。管理员在「白名单
管理」页(设置下拉入口)切总开关 + 逐用户放行。取消放行只拦下次登录。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 16:09:38 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
f8b40353ef
|
feat(task-buttons): 跳转按钮可追加登录态 token+username + token 登录离线测试映射
rwfx/3qfx/xdfx 任务工作区的可配置跳转按钮(按钮管理)新增「追加登录态」开关:
url 类型按钮可在外链后拼 ?token=<token1>&username=<登录名>(参数名可配,默认
token/username),供跳转目标外部系统识别当前登录用户。
- 仅 token 登录(login/token)生效: token1 = ?authToken=,username = 后端用
token 调 getTokenInfo 解析出的原始登录名(非邮箱前缀/非解 JWT)。二者登录时
经 persistLoginCredentials 存入 login.token1/login.username(scoped-storage
自动隔离嵌入/独立会话);非 token 登录读不到 token1 则跳过追加。
- 后端 UsernameLoginResponse 回传 username(原始名,规避邮箱归一化有损);
token_login 加 mock_tokens 离线测试映射(123ewq->admin),命中即跳过外网
getTokenInfo,便于本地全链路联调。
- task_buttons 加列 append_auth/auth_token_param/auth_name_param
(migration 20260625_01 + 幂等 SQL)。
Tests: test_task_buttons.py, test_auth_login_modes.py(mock token/username 回传)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 14:52:07 +08:00 |
|
 fengxiangdebaoziandClaude Opus 4.8
|
893f1e6933
|
fix(会商第三步): 流程图入库限 rwfx-A + 修复跳过报告生成流程图出现双调度中卡片
- 入库功能仅 rwfx-A(businessCode 6BF)深链会商模式提供,其它业务深链生成流程图不再出现入库按钮/询问
- 流程图抽取串行化:auto 自动出图与用户「跳过报告直接生成流程图」手动出图竞态时,先中止上一轮、复用/移除被取代气泡,保证任意时刻只有一张流程图卡片
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 12:29:45 +08:00 |
|
fengxiangdebaozi
|
3ea8e73389
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-06-24 19:48:15 +08:00 |
|
吉鑫升
|
1a87077642
|
Merge branch 'ji' into master
并入: loop 跨事件循环 DB 访问修复(asyncmy attached to a different loop)、y-log 前缀、全角参考文献角标识别
# Conflicts:
# CLAUDE.md
|
2026-06-24 17:13:45 +08:00 |
|
 吉鑫升andClaude Opus 4.8
|
5ecf28e60c
|
feat(y-log/knowledge): 日志前缀改 CM助手-全量 + 入库 nodeName 按标题去时间戳保持一致
1. Y-Log 上报 optDetail 前缀 B1-CM助手 → CM助手-全量(全量替换 44 个前端文件 + 文档)
2. 知识库入库 nodeName 改为只取 md5(标题).md(去掉时间戳),同一篇 md 每次入库一致,避免重复记录
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 15:46:51 +08:00 |
|
 xuhdandClaude Sonnet 4.6
|
85cd2c888e
|
fix(notebook): 来源搜索导入后立刻显示占位卡并刷新来源列表
- handleImport 成功后调用 onUploadComplete 通知父组件(原先缺失)并关闭弹窗
- 新增 pendingImportTitles state,同步导入后立刻渲染 PendingSourceCard
- sources 刷新后按标题匹配移除占位卡并自动选中新来源
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-24 13:14:36 +08:00 |
|
 董宏凯andClaude Opus 4.8
|
6673121f3f
|
feat(定时任务): 选内置模板时加「执行数据抽取」开关,关闭则直接用默认数据
- html_config.template_extract(默认关,仅参考选 tpl:<id> 时显示开关):
关闭→跳过检索/转换,直接用模板默认数据填充;开启→才执行检索+转换抽取
- 后端 _run_html_template_reference 在只展示分支后先判开关
- 前端 ScheduledTasksPage:参考选内置模板时显示 Switch,存进 html_config.template_extract,编辑回显
- 测试覆盖 开/关 两条路径
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 13:09:16 +08:00 |
|
 董宏凯andClaude Opus 4.8
|
ec60b77a71
|
feat(定时任务): 必须生成HTML的「参考收藏页面」加入 no.1/no.2 模板作为风格参考
- 引擎 template_fill.style_reference:抽取模板 <style> CSS + 去脚本结构骨架(~13-28KB),
剥掉巨大数据常量,供 require_html 渲染模型模仿风格;reference_template_id 解析 tpl:<id>
- 调度器 _run_html_page_attempt:参考来源为 tpl:<id> 时用模板风格参考,否则走收藏 store
- 前端 ScheduledTasksPage:require_html 模式下「参考收藏页面」列表加入「模板:no.1/no.2」,
值存 tpl:<id>;htmlTemplates 在 require_html 时也拉取
- 文档同步
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 11:09:48 +08:00 |
|
 董宏凯andClaude Opus 4.8
|
ae3788a87d
|
feat(定时任务): 模板数据转换器对话页加「页面模板+渲染预览」调试入口
- 后端 POST /api/scheduled-tasks/template-fill/render:不调模型,抽取回复里的 JSON
→ 校验 → 填充,返回完整 HTML + 校验错误/缺失字段(非法也照样填充便于看效果),
只展示模板原样返回
- 前端仅 template-json-builder 智能体的 AgentChatPage:顶部加页面模板下拉 +「渲染预览」
按钮,取最近一条 AI 回复填进所选模板,弹窗用 sandbox=allow-scripts iframe 预览 +
校验状态;严格按 agent id 门控,不影响其他智能体对话页
- 文档同步
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 10:00:18 +08:00 |
|
 fengxiangdebaoziandClaude Opus 4.8
|
f551c7af9b
|
fix(登录): redirect 透传登录 URL 其余 query 到目标页
?redirect=/page/strategy/dashboard-agent&taskId=3334 时把 taskId 等非登录消费参数
透传到目标页 query(目标自带同名参数优先),鉴权类参数不透传以防泄漏到地址栏。
修复跳转后目标页「缺少 taskId」。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 22:10:40 +08:00 |
|
 fengxiangdebaoziandClaude Opus 4.8
|
8241f8dd6b
|
feat(登录): 新增 ?redirect= 参数,登录后跳转指定站内页面
支持 ?redirect=page/strategy/dashboard-agent(可不带前导斜杠、可自带 query),
优先级高于 taskId/goPath 深链与默认首页;仅接受站内相对路径,拒绝绝对/协议相对
URL 与反斜杠以防开放式跳转。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 21:51:59 +08:00 |
|
fengxiangdebaozi
|
6742346eb4
|
代码提交
|
2026-06-23 21:05:58 +08:00 |
|
fengxiangdebaozi
|
0fedb6ffd8
|
Merge branch 'dhk-1' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-06-23 19:47:54 +08:00 |
|
 董宏凯andClaude Opus 4.8
|
498e3c6a84
|
fix(深链): 「上一步」进大屏绘制页强制显示全局导航栏+侧边栏
- PageLayout 对 /strategy/dashboard-agent 路由强制 pageSidebarAllowed(不受界面模式/
会话级 sidebar 标志影响;仍尊重 embed=1 嵌入态隐藏),避免从去 chrome 的深链工作区进来后整页无顶栏/侧栏
- 「上一步」按钮 openMode 改回 self(同窗导航;forceChrome 后同窗/新窗都能带回 chrome)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 19:47:02 +08:00 |
|
fengxiangdebaozi
|
85aa242fd5
|
Merge branch 'master' into dhk-1
|
2026-06-23 19:45:41 +08:00 |
|
Administrator
|
053d3e300e
|
Merge branch 'ji' into master (操作日志 Y-Log 上报)
# Conflicts:
# CLAUDE.md
|
2026-06-23 19:22:53 +08:00 |
|
 董宏凯andClaude Opus 4.8
|
cd33aaeded
|
feat(定时任务): 内置「模板数据转换器」按 HTML 模板填充 JSON 生成大屏
- 模板填充引擎 template_fill.py:模板注册表 + schema 骨架 + 结构校验 + 行级安全填充;
模板自带 DATA 即 schema 来源。no.1 可转换填充(含 MANIFEST 更新时间刷新),
no.2 暂为「只展示」(convertible=False) 原样输出已有数据
- 内置 agent template-json-builder(seed + SOUL),随 lifespan 注入,自动出现在
定时任务「执行智能体」下拉
- 调度器新增模板填充执行分支 _run_template_fill_attempt:源 JSON→大模型转换→
结构校验→失败回喂重试;空源/只展示模板直接用模板默认数据,绝不失败
- API:GET /api/scheduled-tasks/html-templates
- 前端:选中该 agent 后条件渲染「HTML模板」下拉 + .json 上传,只展示型模板隐藏 JSON 输入
- 文档同步(前后端 CLAUDE.md)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 18:00:00 +08:00 |
|