jxxghp
d9afaba8dd
feat(plugin): expose documentation before installation ( #7222 )
2026-10-27 21:37:00 +08:00
Aqr-K
6610a8c008
fix: retain plugin lifecycle ownership and recover installation state ( #7146 )
...
* fix: retain plugin lifecycle ownership and recover installation state
* test: cover plugin rollback and uninstall lifecycle boundaries
---------
Co-authored-by: jxxghp <jxxghp@gmail.com >
2026-10-23 07:44:07 +08:00
jxxghp
6d4ce83837
fix(types): clear host mypy debt and prevent typing regressions
...
严格检查全部宿主源码,清零类型错误预算并移除按模块类型豁免。
按原因、所属方法、错误码及语法指纹锁定必要兼容例外和站点类型桩,
CI 阻断新增忽略、检查范围退化、本地桩替代真实接口及新的类型错误。
修复空值、异步和供应方类型边界,保持插件与 API 兼容合同,
并补充存储、订阅、通知、Agent 和工作流边界的回归覆盖。
2026-10-21 22:03:18 +08:00
DDSRem
2de976f6b3
Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
...
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
a69471cb84
refactor(types): align plugin with typed route contracts
2026-10-17 02:59:58 +08:00
InfinityPacer
25aaf3a32b
feat(plugin): add agent pet extension contract
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 04:08:15 +08:00
InfinityPacer
19e062c178
feat(plugin): attribute free-threaded GIL fallback to plugins ( #6767 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-23 13:12:02 +08:00
InfinityPacer
0238351071
fix(plugin): v3t 下不再隐藏不兼容插件,改为提示不支持 ( #6760 )
...
* feat(plugin): surface v3t incompatibility instead of hiding plugins
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
* chore(architecture): refresh dependency baseline after plugin gate split
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
* fix(plugin): keep runtime-incompatible plugins out of startup sync
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
* fix(plugin): annotate runtime compatibility ports without bare dict
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
2026-09-23 00:35:20 +08:00
moviepilot-codex[bot]
c0f7141e26
fix(plugin): invalidate federation static resource cache ( #6748 )
2026-09-21 16:24:38 +08:00
Aqr-K
57fb96fc3c
feat(plugin): 分身后缀可留空自动分配,并支持按后缀恢复已停用的分身 ( #6673 )
2026-09-14 07:00:31 +08:00
Aqr-K
d44480d739
Merge pull request #6666 from Aqr-K/feat/plugin-instance-target-enablement
...
feat(plugin): 插件实例默认调用目标与启停,未指定实例时不再兜底取第一个
2026-09-13 16:37:27 +08:00
InfinityPacer
747f9f921f
fix(plugin): prioritize local plugin sources
2026-09-12 19:11:08 +08:00
jxxghp
0ed64d9380
fix(api): flatten split endpoint routes
2026-09-05 16:17:36 +08:00
jxxghp
e656793aa5
refactor(api): split management endpoint routers
2026-09-05 16:05:27 +08:00
jxxghp
f00853de2a
feat(api): expose frontend-safe management capabilities
2026-09-05 15:11:02 +08:00
jxxghp
5a8380525d
fix(api): keep plugin endpoint within complexity budget
2026-09-04 10:53:08 +08:00
jxxghp
adae5bd878
fix(api): restore full plugin catalog by default
2026-09-04 10:47:02 +08:00
Aqr-K
a4d38e0f12
fix(plugin): 卸载先停后删、销毁全程持锁,PostgreSQL 会话按插件 schema 解析原生 SQL
...
卸载编排改为先停插件再删数据:插件的停机钩子取一次自有库句柄就能把刚删除的数据重新
建出来,注册表因此不再需要销毁墓碑,release 恢复为「只释放连接、保留数据」的单一语义。
停止同时注销插件类,其后的删除一律按 force 执行。
destroy_database 的摘句柄、关连接与删载体全部收进同一把锁:原先在锁外删除载体,并发的
get_database 能在间隙注册一个指向同一载体的新句柄,随后的删除会把它一并抹掉。
PostgreSQL 句柄在派生引擎上注册 begin 监听器,按事务执行 SET LOCAL search_path,让
schema_translate_map 覆盖不到的原生 SQL 同样解析到插件自己的 schema;监听器只挂在
OptionEngine 上,宿主引擎与其它插件的连接不受影响。
2026-09-02 02:14:19 -04:00
jxxghp
d512f528be
refactor(api): make collection pagination explicit
2026-09-01 09:13:56 +08:00
jxxghp
33a73f6de1
refactor(agent): stay within complexity budget
2026-09-01 07:58:12 +08:00
jxxghp
a73714e5e7
feat(agent): add compatible collection pagination
2026-09-01 07:43:55 +08:00
jxxghp
28298c485c
fix: keep plugin endpoint within complexity budget
2026-09-01 01:29:15 +08:00
jxxghp
6d4d7331d1
refactor: complete agent skill API contracts
2026-09-01 01:19:45 +08:00
jxxghp
ec1a878a32
fix(agent): auto-load gateway skill before API calls
2026-08-31 18:42:25 +08:00
jxxghp
fecb458302
fix(ci): restore architecture and coverage gates
2026-08-31 17:52:12 +08:00
jxxghp
fdba2c7d64
refactor(agent): unify tools behind API gateway and provider skills
2026-08-31 16:57:54 +08:00
jxxghp
fa40f29dfd
refactor(plugin): converge runtime ownership and compatibility
2026-08-29 12:55:52 +08:00
jxxghp
f38637dcea
refactor(api): move host orchestration into application services
2026-08-29 10:27:57 +08:00
jxxghp
18c21b61b7
fix(plugin): preserve typed compatible history lookup
2026-08-29 09:25:18 +08:00
jxxghp
daf67dc71a
fix(plugin): restore compatible history lookup
2026-08-29 08:47:25 +08:00
InfinityPacer
92066dfad4
feat: 完成插件原生依赖重启激活闭环 ( #6491 )
...
* feat(plugins): track native dependency activation
* fix(plugins): finalize native restart state lifecycle
2026-08-29 02:10:50 +08:00
InfinityPacer
011ebfbe5f
fix: 协调本地插件与绑定仓库的版本选择 ( #6482 )
...
* fix(plugin): reconcile local and bound payload versions
* fix(plugin): preserve bound source on updates
* fix(plugin): normalize source reconciliation ids
* fix(plugin): defer local payload activation
* fix(plugin): centralize startup source admission
* fix(plugin): derive sync mode from admitted source
2026-08-27 20:03:30 +08:00
InfinityPacer
627775c090
fix(plugin): 按绑定仓库保留更新候选 ( #6474 )
...
* fix(plugin): preserve repository update candidates
* chore(ci): sync architecture ratchet baselines
* chore(ci): align canonical coverage baseline
* chore(ci): align coverage ratchet baseline
2026-08-27 06:56:33 +08:00
InfinityPacer
d24c52ea97
fix(plugin): 按绑定仓库处理插件更新 ( #6472 )
2026-08-26 21:35:16 +08:00
InfinityPacer
ac2a2b1129
feat(plugin): persist declared metadata snapshots ( #6467 )
2026-08-26 13:15:12 +08:00
InfinityPacer
71db425c07
feat(plugin): 建立可信来源准入与安装恢复 ( #6462 )
2026-08-26 07:52:00 +08:00
jxxghp
b914e8b6e4
refactor: strengthen architecture CI gates and runtime contracts
2026-08-25 17:02:29 +08:00
jxxghp
4dd2d7fed2
refactor: use explicit runtime facade getters
2026-08-24 03:56:54 +08:00
jxxghp
371383f0a8
refactor: unify host threadpool boundary
2026-08-24 03:28:10 +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
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
f1e542bef0
refactor: govern background tasks and query ownership
2026-08-23 13:24:04 +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
1bb6e36e8c
refactor: complete runtime configuration migration
2026-08-22 19:07:07 +08:00
jxxghp
7b9499fc5b
feat(plugin): add virtual plugin instances
2026-08-22 09:40:38 +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