wengzh
|
60c2a7ee17
|
Merge pull request #3431 from xinnan-tech/py-content-text
Py content text
|
2026-10-13 17:13:42 +08:00 |
|
Sakura-RanChen
|
a01f0aa29b
|
去除没必要的测试,上游为str不需要防御性增加
|
2026-10-13 16:54:42 +08:00 |
|
korexil
|
4445aa7510
|
fix: FunASR 识别结果以 JSON 原样进入对话历史 (#3411)
FunASR 返回 {"content","language","emotion"} 时,startToChat 只在含 speaker
字段时才解包,否则整段 JSON 字符串会作为用户消息交给 LLM 并写入对话历史。
现在没有 speaker 时只取 content。
|
2026-10-13 16:44:13 +08:00 |
|
wengzh
|
dc86a780a2
|
Merge pull request #3418 from xinnan-tech/py-test
Py test
|
2026-10-13 15:47:30 +08:00 |
|
Sakura-RanChen
|
a5e47f2c4e
|
补充字符,调整字符判断
|
2026-10-13 15:29:28 +08:00 |
|
Sakura-RanChen
|
2057b99aeb
|
迁移测试用例,优化相关注释
|
2026-10-13 14:31:21 +08:00 |
|
wengzh
|
7957817a72
|
Merge pull request #3425 from xinnan-tech/chore/dependabot-monthly-groups
Dependabot 改月度更新并按用途分组
|
2026-10-13 11:41:15 +08:00 |
|
hrz
|
a6eeb107f4
|
fix(deps): 补 dependabot ignore portalocker
requirements.txt 把 portalocker 锁在 3.x,4.x 与 qdrant-client<1.20 的
portalocker<4.0 冲突 (PR #3360)。Dependabot 默认推 4.x 升级会破约束。
依 openrz 评审 P1 在 ignore 列表追加 portalocker 一项。
|
2026-10-13 11:28:37 +08:00 |
|
wengzh
|
847337cabb
|
Merge pull request #3419 from xinnan-tech/fix/3391-route-guard-whiteList
fix(router): 路由守卫改 anon 白名单反向匹配
|
2026-10-13 11:15:15 +08:00 |
|
Sakura-RanChen
|
b8f23ffa66
|
调整相关代码
|
2026-10-13 10:40:47 +08:00 |
|
lww9029
|
dc581d7185
|
fix: 修复登录状态下还能访问白名单路由问题
|
2026-10-13 10:36:25 +08:00 |
|
hrz
|
741ec299c0
|
fix(tts): edge-tts 失声改走 msedgeservices (#3420)
* fix(tts): edge-tts 失声改走 msedgeservices
微软 2026-10 起对 legacy 消费者接口返回 403,
edge-tts 7.2.8 仍走 speech.platform.bing.com 走不通。
上游 PR rany2/edge-tts#491 切到 api.msedgeservices.com 修好,
但 7.2.8 仍是 PyPI 最新版本。
仓库在 edge.py 顶部临时把 WSS_URL 顶住,等 7.2.9 出了删掉。
* fix(tts): patch 还要写 communicate.WSS_URL
edge-tts 7.2.8 仍指 legacy bing 接口,10 月起微软 403。
上游 PR #491 已切到 msedgeservices.com,7.2.9 才进 PyPI,先顶住。
上次只改 constants.WSS_URL 不够,communicate 用 from import 是模块局部名,
LEGB 找不到新值。这次同时改 communicate.WSS_URL 才生效。
|
2026-10-13 09:58:30 +08:00 |
|
hrz
|
505925fb21
|
Dependabot 改月度更新并按用途分组
原本每周跑一次会刷很多零碎 PR,看着烦。改成每月一次,并把第三方 AI 服务、本地模型、网络栈拆成几组聚一起,每组出一个 PR 就行。被锁住的 torch/numpy/websockets 几个直接忽略掉,免得它推升级 PR 进来。
|
2026-10-13 09:34:02 +08:00 |
|
hrz
|
4aa63baf75
|
fix(router): 路由守卫改 anon 白名单反向匹配
业务路由越加越多,原来硬编码的 8 项守卫名单跟不上了,
未登录直接进十来个业务页看到骨架再被踢,体感抖。
守卫改成只对登录、注册、找回密码、根路径这四页放行,其余一律查 token。
顺手把 9 处没人读的 meta.requiresAuth 和 meta.title 死字段删了。
|
2026-10-12 18:02:36 +08:00 |
|
korexil
|
70ab19d23f
|
fix: TTS 分句在引号内切开句子 (#3413)
_get_segment_text 会在引号内的标点处切分(如「わぁ!」って、“好!”然后),
把引号拆到两段里,或留下只有「。」的片段。新增 _quote_safe_cut:切分点后的
右引号与句末标点一并带走;位于未闭合引号内或右引号后句子仍在继续时,顺延到
下一个标点。不含引号的文本切分结果不变。
|
2026-10-12 16:26:40 +08:00 |
|
Sakura-RanChen
|
e5f326285e
|
update: 优化client 生命周期对齐业务请求——重试内连接复用、锁外构造、safe_close 可打断重试
|
2026-10-12 15:42:51 +08:00 |
|
hrz
|
4576e391bb
|
fix(ci): 阿里云 PyPI 镜像 metadata 缺失回退官方源 (#3417)
基镜像构建挂了——日志显示 pip 在装 requirements.txt 阶段退出码 1,
罪魁是阿里云 pypi 镜像对 mcp==1.22.0 的元数据文件 404。
装包那行加 --extra-index-url https://pypi.org/simple,
主源没货时自动去官方源捞。
|
2026-10-12 10:28:35 +08:00 |
|
Yanhan Ruan
|
ef1d24e40d
|
fix(server): 修复临时事件循环结束后 HTTP 客户端未释放的问题 (#3416)
|
2026-10-12 10:00:28 +08:00 |
|
wengzh
|
c30c40bf56
|
Merge pull request #3415 from xinnan-tech/chore/bump-deps-20261010065106-1659
chore(deps): 批量升级 4 个允许的依赖
|
2026-10-10 15:24:17 +08:00 |
|
Sakura-RanChen
|
199c4ce365
|
chore(deps): batch bump 允许升级的依赖
|
2026-10-10 14:53:30 +08:00 |
|
hrz
|
a6cd755cf2
|
聊天记录弹框底部不再留大量空白 (#3410)
弹框本身和 body 用 !important 撑到视口(body 顶开 size="large" 默认多扣的 56px footer 高度)。body 的高度由 flex: 1 自动撑满,max-height 只用来顶开原来的 950px 上限。
|
2026-10-09 17:24:39 +08:00 |
|
hrz
|
23d0e64d9d
|
召回测试弹框与切片弹框样式对齐 (#3409)
召回测试弹框宽度从 900px 调到 1200px 并启用大弹框样式,高度、上下间距与切片弹框保持一致。结果区域改用 flex 填充而不是写死的 400px 高度。
|
2026-10-09 17:18:06 +08:00 |
|
hrz
|
96c224c4e4
|
切片和聊天记录弹框统一为大弹框样式 (#3407)
知识库查看切片弹框加 size="large",聊天记录弹框去掉旧样式覆盖并把 body 改成 flex 列布局,底部下载按钮不再绝对定位,两个弹框跟历史版本对齐。
|
2026-10-09 17:02:49 +08:00 |
|
hrz
|
2b6483662a
|
召回测试弹框回车不再刷新页面 (#3408)
给 el-form 加阻止默认提交的处理,按回车时不再触发浏览器刷新。
|
2026-10-09 17:01:52 +08:00 |
|
hrz
|
aef973e6b9
|
7 处 el-select 加 filterable 支持输入筛选 #3405 (#3406)
主诉:手动添加设备下拉无搜索(FIRMWARE_TYPE 字典 54 项)。统一修同类位置:替换词多选加 collapse-tags;登录/注册/找回密码的区号下拉加 filterable(海外 200+ 项)。无新依赖、纯 element-ui 原生属性。
|
2026-10-08 15:39:46 +08:00 |
|
hrz
|
7a260ee143
|
弹框关掉后再点不开以及宽度高度统一收口 (#3388)
* 统一管理后台弹框更舒展
把 CustomDialog 默认宽度从 600 加到 720,正文给到至少 360 的高度,
默认弹框就不再显得局促。参数编辑弹框也跟着加宽。智能体历史版
本那条列表、对比和恢复预览都给到至少 420 的最小高度,避免内容
少时框太矮看起来小气。其他像添加智能体、绑定设备这些原本就合适
的弹框没动。
* 弹框外观统一收口
原本几个弹框长得参差不齐:标题字号、按钮文案、留白高度各管各的。这次把新建智能体、新建设备、改模型、改参数这几个弹框接到同一个底座上,按钮统一成「确定」「取消」,输入框字号高度对齐,遮罩背景加了模糊,弹框太高就内部滚动,四个弹框看起来一个模子
* 修复弹框关掉后再点不开
之前几个弹框改用新底座的时候,关闭那一路少了一段转发:父页面用双向绑定来收弹框关闭的信号,子页面应该再把关闭事件抛上去告诉父页面。这一段被删了,下次再点添加按钮时父页面那边状态没复位,弹框就拉不开来。现在把这段补回去。
* 弹框宽度和高度统一收口
同一批弹框的尺寸还是各管各的:模型配置里改参数那个是跟着窗口大小按比例伸缩,历史提示词的源编辑弹框是 900 像素,参数管理里又是 720 像素,智能体变更详情那个上下还留了一大块空白。这次收到同一个共用底子上:宽度都对齐到 720 像素,弹框默认上下贴齐屏幕边、内容多时中间滚动,变更详情那个高度撑到接近屏幕顶到底。
* 管理后台弹框按大小分类统一外观
管理后台里的弹框按大小分成两类来收口。占整页的大弹框(历史版本、变更详情、模型修改、模型参数修正等)撑满整个浏览器高度,下面不再留白;小弹框(添加智能体、添加设备、知识库、字典、角色模板等)改成对齐屏幕正中,不再顶在屏幕上沿。修改模型那条弹框也加宽到 960,左右留白加大到 40,跟历史版本对齐,看起来更舒展。
* 大弹框上下留白收口到十像素并按三档统一宽度
大弹框上下各留十像素让边框和圆角清晰可见。宽度按用途分三档:表单 960、含代码 1080、表格 80% 加宽度上限。供应器、上下文供应器、音色克隆都改 960;TTS 从 90% 改 80%;角色模板从 1200 改 1080;缓存查看从 70% 改 80%。新增模板的大文本框改成自适应高度。
* 弹框样式与文案收口处理
AddDeviceDialog 确认后关闭弹框;CustomDialog 去掉 :global 与紧邻选择器,合并 el-dialog__body 样式块;删除未使用的 --dialog-form/--dialog-code;AddWisdomBodyDialog 的 cancel/handleClose 委托到同一个实现;多语言文案同步去冒号与双点。
* 弹框遮罩样式移到全局作用域
scoped 块里的 ::v-deep .v-modal 打不到 body 层的遮罩,改在 global.scss 用全局选择器。
* 弹框 wrapper 居中样式移到全局作用域
scoped 块里的 ::v-deep .el-dialog__wrapper 同样打不到 element-ui 自渲染的 wrapper,跟 .v-modal 一起挪到 global.scss。
* 弹框提交状态异常收口
设备激活码错误路径不再卡 loading;Provider 与固件弹框补 loading 兜底。
* 弹框视觉异常收口
首页删除确认弹框 wrapper 居中;历史版本弹框去掉内层多余滚动条。
* 设备 API 链式返回修复
bindDevice 等方法补上 return,让 .fail() 兜底回调能正常注册到请求对象上。
* 设备 API 错误回调参数补全
device.js 六个方法加 failCallback 参数;user.js login 网络重试补 failCallback;AddDeviceDialog 改四参数签名。
* 设备状态 API 失败回调引用修复
getDeviceStatus 的 .fail() 块把函数体内 callback(res) 改成与签名一致的 if (failCallback) failCallback(err),避免业务错误时抛 ReferenceError。
|
2026-10-07 08:03:25 +08:00 |
|
欣南科技
|
87c6df77b0
|
Merge pull request #3386 from xinnan-tech/0.9.7
Bump to 0.9.7
v0.9.7
|
2026-09-29 10:03:47 +08:00 |
|
hrz
|
eb51f420a2
|
Bump to 0.9.7
|
2026-09-29 09:13:14 +08:00 |
|
DaGou12138
|
1eefb4ea86
|
Merge pull request #3385 from xinnan-tech/serpapi
Serpapi
|
2026-09-28 10:25:33 +08:00 |
|
hrz
|
1211f8202b
|
Merge pull request #3376 from googio/feat/serply-search
feat(web_search): 新增Serply搜索源
|
2026-09-28 09:36:42 +08:00 |
|
wengzh
|
788f5301fd
|
Merge pull request #3378 from xinnan-tech/fix-deps
fix(deps): 移除 chardet 直接依赖
|
2026-09-21 09:38:29 +08:00 |
|
Sakura-RanChen
|
edad16aedf
|
fix(deps): 移除 chardet 直接依赖
|
2026-09-20 15:55:21 +08:00 |
|
serply
|
65a3fae9fc
|
feat(web_search): 新增Serply搜索源
联网搜索插件在秘塔和Tavily之外增加Serply,返回谷歌搜索结果。
通过 provider: "serply" 选用,未配置时行为不变。
|
2026-09-17 16:45:28 -04:00 |
|
wengzh
|
f4ba65f224
|
Merge pull request #3375 from xinnan-tech/fix-snapshot-dialog-diff-style
fix: 修复 v-code-diff 斜体样式干扰 diff 展示
|
2026-09-17 17:54:02 +08:00 |
|
lww9029
|
87c2bae55a
|
fix: 修复 v-code-diff 斜体样式干扰 diff 展示
|
2026-09-17 17:50:27 +08:00 |
|
wengzh
|
628d4cedb7
|
Merge pull request #3373 from xinnan-tech/feat-snapshot-dialog-code-diff
feat: 历史版本快照增加代码对比视图
|
2026-09-17 17:06:59 +08:00 |
|
 Sakura-RanChenandSakura-RanChen
|
6c3f89cae1
|
chore(deps): 批量升级 4 个允许的依赖 (#3374)
* chore(deps): batch bump 允许升级的依赖
* test: 添加 5 条核心链路测试 + 默认 mock 模式
参照 PR #3370 的整体结构,新增 STT/LLM/TTS/RAG/Memory 五个 test_*.py
覆盖关键链路。conftest.py 默认 mock 模式:
- PYTEST_CONFIG_FILE 指向单模块配置文件(不入库)
- RUN_LIVE_API_TESTS=1 走真请求(必须配齐密钥)
- 真实存在的第三方包(openai/httpx)保留,仅 patch httpx 网络层
- 装了一半会炸的本地模型(torch/funasr/modelscope)强制 shim
- mock load_config / init_service,避免触发远程 manager-api
mock 模式目标:dep-upgrade orchestrator / CI 不需要任何密钥即可跑通。
---------
Co-authored-by: Sakura-RanChen <Sakura-RanChen@local>
|
2026-09-17 15:57:43 +08:00 |
|
lww9029
|
4745186cea
|
style: 调整窄屏样式
|
2026-09-17 10:43:26 +08:00 |
|
lww9029
|
1ddc97b626
|
feat: 快照对话框增加代码对比视图
|
2026-09-17 10:04:15 +08:00 |
|
wengzh
|
6afc54a17d
|
Merge pull request #3366 from xinnan-tech/feat-tts-alibl
Feat tts alibl
|
2026-09-11 17:35:08 +08:00 |
|
wengzh
|
daccfeb9dd
|
Merge pull request #3364 from xinnan-tech/fix-memory-title
fix: 记忆模式为nomem时错误生成标题
|
2026-09-11 17:34:43 +08:00 |
|
Sakura-RanChen
|
1846d3e935
|
调整相关逻辑
|
2026-09-09 16:17:13 +08:00 |
|
Sakura-RanChen
|
b1a7607dd5
|
Merge pull request #3345 from apexlsai/feature/alibl-workspace-streaming
feat(tts): 完善阿里百炼 Workspace 流式语音合成
|
2026-09-09 14:22:59 +08:00 |
|
Sakura-RanChen
|
d6d2da3d76
|
fix: 记忆模式为nomem时错误生成标题
|
2026-09-09 10:33:37 +08:00 |
|
CGD
|
5aa46538d5
|
Merge pull request #3358 from xinnan-tech/fix-audio-delay
fix: 修复固定延迟不生效,调整相关逻辑
|
2026-09-08 10:53:25 +08:00 |
|
Sakura-RanChen
|
ed98be5347
|
Merge pull request #3357 from xinnan-tech/py-test-client-toctou
根治ManageApiClient单例TOCTOU竞态,锁保护+统一防护
|
2026-09-08 10:00:20 +08:00 |
|
Sakura-RanChen
|
79a95af399
|
fix: 修复固定延迟不生效,调整相关逻辑
|
2026-09-07 11:38:06 +08:00 |
|
3030332422
|
32cba36237
|
fix: 修复 ManageApiClient 关闭期间的连接池创建竞态
|
2026-09-07 11:14:50 +08:00 |
|
CGD
|
82e3c1874f
|
Merge pull request #3353 from muxinshijie/feature/manage-api-client-toctou
fix: 根治ManageApiClient单例TOCTOU竞态,锁保护+统一防护 #3339
|
2026-09-07 10:31:58 +08:00 |
|
欣南科技
|
c478257517
|
Merge pull request #3356 from xinnan-tech/fix/docs-typos
docs: 批量修正文档里的错别字和拼写错误
|
2026-09-06 08:44:01 +08:00 |
|