jxxghp
|
4dd2d7fed2
|
refactor: use explicit runtime facade getters
|
2026-08-24 03:56:54 +08:00 |
|
jxxghp
|
9f76fc9dec
|
refactor: unify workflow runtime boundary
|
2026-08-24 03:43:47 +08:00 |
|
jxxghp
|
371383f0a8
|
refactor: unify host threadpool boundary
|
2026-08-24 03:28:10 +08:00 |
|
jxxghp
|
2e5dd2cf0a
|
refactor: drain traditional agent streams
|
2026-08-24 00:50:24 +08:00 |
|
jxxghp
|
e9a226af02
|
refactor: complete command facade migration
|
2026-08-24 00:00:37 +08:00 |
|
jxxghp
|
820582ab12
|
refactor: close plugin shutdown mutation races
|
2026-08-23 21:55:22 +08:00 |
|
jxxghp
|
7f09927c47
|
refactor: own shutdown lifecycle boundaries
|
2026-08-23 20:20:26 +08:00 |
|
InfinityPacer
|
c6ffc309d4
|
fix(persistence): separate retryable rejection errors (#6423)
|
2026-08-23 20:10:59 +08:00 |
|
InfinityPacer
|
f7f5a7e107
|
fix(api): use async site query for mapping (#6416)
|
2026-08-23 17:54:26 +08:00 |
|
InfinityPacer
|
e1d7918297
|
fix(runtime): 收口调度与事件异步任务生命周期 (#6415)
|
2026-08-23 17:17:59 +08:00 |
|
jxxghp
|
7afabeda02
|
refactor: register protocol stream tasks
|
2026-08-23 15:13:05 +08:00 |
|
jxxghp
|
e7e232d625
|
refactor: register history ai redo tasks
|
2026-08-23 15:02:53 +08:00 |
|
jxxghp
|
0459b6a662
|
Merge remote-tracking branch 'origin/v3' into v3
# Conflicts:
# tests/fixtures/architecture/dependency-baseline.json
|
2026-08-23 14:57:03 +08:00 |
|
InfinityPacer
|
d2b72f5729
|
fix(database): decouple worker errors from application
|
2026-08-23 14:26:42 +08:00 |
|
jxxghp
|
03c03fa27d
|
fix: reconcile API annotations and debt baseline
|
2026-08-23 13:54:47 +08:00 |
|
jxxghp
|
51bd59f3f1
|
Merge remote-tracking branch 'origin/v3' into v3
|
2026-08-23 13:30:33 +08:00 |
|
jxxghp
|
f1e542bef0
|
refactor: govern background tasks and query ownership
|
2026-08-23 13:24:04 +08:00 |
|
InfinityPacer
|
d11c2fb301
|
fix(agent): isolate web and storage blocking I/O
|
2026-08-23 13:06:30 +08:00 |
|
InfinityPacer
|
e0f70fa920
|
fix(agent): close chat lifecycle safely
|
2026-08-23 11:44:18 +08:00 |
|
InfinityPacer
|
0ba4a7e5e3
|
fix(agent): close async chat persistence lifecycle
|
2026-08-23 11:44:18 +08:00 |
|
InfinityPacer
|
f560c19d65
|
fix(agent): keep chat reads on native async path
|
2026-08-23 11:43:07 +08:00 |
|
InfinityPacer
|
21ce70fbfc
|
refactor(agent): route chat persistence through database worker
|
2026-08-23 11:43:07 +08:00 |
|
InfinityPacer
|
fc677a2bba
|
feat(database): bound async configuration writes
|
2026-08-23 02:29:40 +08:00 |
|
InfinityPacer
|
3d7fb44dc7
|
refactor(database): isolate configuration transactions
|
2026-08-23 02:29:22 +08:00 |
|
jxxghp
|
e602c23668
|
refactor: clear public entrypoint complexity debt
|
2026-08-22 23:28:30 +08:00 |
|
jxxghp
|
56cb7294eb
|
refactor: extract cache network and compatibility entrypoints
|
2026-08-22 23:13:59 +08:00 |
|
jxxghp
|
1bb6e36e8c
|
refactor: complete runtime configuration migration
|
2026-08-22 19:07:07 +08:00 |
|
jxxghp
|
996a1a0705
|
refactor: expand api and chain config snapshots
|
2026-08-22 13:22:33 +08:00 |
|
InfinityPacer
|
9cc2bdbce1
|
fix: 避免 Web Agent 语音转写阻塞事件循环 (#6389)
|
2026-08-22 13:16:15 +08:00 |
|
jxxghp
|
508bf0bc38
|
fix(ci): restore lint and architecture gates
|
2026-08-22 10:23:18 +08:00 |
|
InfinityPacer
|
1c07333909
|
fix: 收敛 Agent 会话队列与 worker 关闭 (#6386)
|
2026-08-22 10:09:01 +08:00 |
|
jxxghp
|
7b9499fc5b
|
feat(plugin): add virtual plugin instances
|
2026-08-22 09:40:38 +08:00 |
|
jxxghp
|
97d2dcd7fb
|
fix(ci): align architecture and pylint gates
|
2026-08-22 08:50:25 +08:00 |
|
jxxghp
|
5d9c6c8b19
|
refactor: expand runtime contracts and debt ratchets
|
2026-08-22 08:25:36 +08:00 |
|
jxxghp
|
c5de1c7b1b
|
refactor: make subscription lifecycle events durable
|
2026-08-22 07:43:41 +08:00 |
|
jxxghp
|
1b253510e1
|
ci: block new async blocking calls
|
2026-08-21 22:29:19 +08:00 |
|
jxxghp
|
9df599f502
|
refactor: split api dependencies by domain
|
2026-08-21 21:09:57 +08:00 |
|
InfinityPacer
|
b9bbc8913c
|
fix: 完善插件恢复与运行态收敛 (#6376)
|
2026-08-21 18:09:29 +08:00 |
|
InfinityPacer
|
2b3766e86e
|
feat: 数据库迁移前自动备份 (#6360)
|
2026-08-19 18:35:56 +08:00 |
|
InfinityPacer
|
f700db5ac8
|
feat(database): add managed backup and offline restore (#6359)
|
2026-08-19 17:34:32 +08:00 |
|
 
|
0069d04b18
|
feat(download): 支持未识别资源确认下载 (#6356)
* feat(download): 支持未识别资源确认下载
* feat(download): 音乐与影视统一未识别确认下载逻辑
* fix(download): 修正未识别媒体信息构造的类型标注与合集归一
---------
Co-authored-by: liulang <liulang@25qp.cn>
Co-authored-by: jxxghp <jxxghp@gmail.com>
|
2026-08-19 13:40:47 +08:00 |
|
jxxghp
|
03ada7eb01
|
refactor: 收敛 factory 模块级副作用并统一 async 路径进度为异步后端
- 将 configure_token_codec/configure_plugin_routes 移入 create_app(),消除 import 期副作用
- runtime 层新增 AsyncCacheProxy/AsyncTTLCache/AsyncProgressHelper,共享 progress region
- search/system/history/scheduler/dashboard 的事件循环路径切换异步进度后端
- 同步进度回调经事件循环提交或线程池执行,避免阻塞事件循环
|
2026-08-19 09:11:42 +08:00 |
|
jxxghp
|
8d62f33155
|
fix(plugin): 修复坏插件模块声明击穿模块调度导致接口大面积报错
- projection 只接受映射类型的 get_module 声明,非法值跳过并记日志
- dispatcher 同步/异步路径防御非映射方法表,单个坏插件被隔离
- media 端点改用 application 层插件运行时门面,消除分层违规依赖
- 图片能力测试打桩 models.dev 目录边界,适配仓库内离线目录留空
Closes #6346
|
2026-08-18 15:53:28 +08:00 |
|
jxxghp
|
dc23977b0c
|
fix: 修复站点用户数据转换并完善媒体来源扩展
|
2026-08-18 14:50:09 +08:00 |
|
jxxghp
|
c2a27f7c71
|
refactor: 收口订阅与插件应用边界
|
2026-08-18 13:54:17 +08:00 |
|
jxxghp
|
8472bcff43
|
refactor: 收口 V3 分层架构与插件兼容边界
|
2026-08-18 13:22:02 +08:00 |
|
jxxghp
|
5128ae9e1e
|
refactor: 推进后端分层架构治理
|
2026-08-18 00:29:14 +08:00 |
|
jxxghp
|
5d0bacabd5
|
fix(dashboard): 修复首页存储空间显示为 0
仪表板 _build_storage 原先仅按 library_storage 选取存储,用户只配置
本地下载目录而未填媒体库存储时存储集合为空,直接返回 0;而设置页经
LocalStorage.usage 同时统计下载目录与媒体库目录,故显示正常。
改为汇总下载目录的 storage 与媒体库目录的 library_storage,与 usage
口径对齐。存储名用 set 去重,同一存储只查询一次;磁盘层面 space_usage
已按 st_dev / Btrfs FSID 去重,相同磁盘的不同目录不会重复累加。
closes #6268
|
2026-08-17 17:34:34 +08:00 |
|
jxxghp
|
d7e610e656
|
feat(agent): 新增 apply_patch 多文件补丁编辑工具
参考 Codex apply_patch 设计,支持单次调用对多个文本文件执行新增、
更新和删除:补丁以 *** Begin Patch / *** End Patch 包裹,Update 段
用 @@ 分隔 hunk,上下文行须与当前内容精确一致;先整体校验全部文件
操作,通过后才逐个原子写盘,并以校验期 sha256 防止并发修改。
- 工具描述与系统提示词明确 apply_patch / edit_file / write_file 分工:
跨多文件或增删文件用 apply_patch,单文件单处替换用 edit_file
- 注册进工具工厂与 ALWAYS_INCLUDE 列表,加入策略 inventory 与
MCP 隐藏列表,流式回调归类为 file_write
- 同步 create-moviepilot-plugin / publish-moviepilot-plugin /
create-moviepilot-skill 技能的 allowed-tools 与版本
- 新增 tests/test_agent_apply_patch.py 覆盖解析、多文件应用、
整体拒绝、权限边界与版本冲突场景
|
2026-08-17 08:01:59 +08:00 |
|
InfinityPacer
|
ca99af10f1
|
fix(auth): preserve bcrypt password compatibility (#6339)
|
2026-08-17 06:13:18 +08:00 |
|